Token导航 LogoToken导航TokenDH.com
responses (Mgarlabx) logo
搜索检索未说明官方级别未说明来源级核验

responses (Mgarlabx)

MCP Server

OpenAI Responses API 是一个多模态API,主要用于文本生成,支持流式输出、网络搜索、文件搜索、结构化输出、函数调用和MCP协议等功能。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
Jupyter Notebook搜索文档处理

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

mgarlabx

提供方

mgarlabx

最后核验

2026/5/17 20:20

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

OpenAI响应API

本教程说明如何使用API responses OpenAI用于文本生成。虽然这个API是多模式的,也就是说,它也允许操作图像,但本教程仅涉及文本生成。

在编写本教程时,API responses 它是OpenAI最新的文本生成功能。它取代了先前的功能,如 chat.completion e assistant不应再用于新项目。此外,对于vibecoding应该谨慎,因为AI代理通常依赖于旧的文档,并经常建议 chat.completion已经被贬低了。

此外,本教程仅将说明如何在API中进行推断,而不是解释如何创建聊天机器人。要了解如何使用 OpenAI 功能创建聊天机器人,请参阅这里: .

基本调用

此 API 调用的基本语法(使用 OpenAI SDK)是:

response = client.responses.create(
    model="gpt-5-nano",
    input="Quem descobriu a América?",
)
print(response.output_text)

(ver example_01_basic.ipynb)

对象 response

“响应”是一个非常复杂的对象,具有多种属性。以下是一些例子:

print(response.id)
print(response.model)
print(response.temperature)
print(response.top_p)
print(response.status)

属性 output_text 包含推理的最终答案:

print(response.output_text)

然而,值得分析的一个有趣的属性是 output它包含了推理的结果。它是一个事件列表,包含LLM推理的所有阶段。看看如何探索它们:

for output in response.output:
    print(output.type)

以下是输出类型的示例列表:

  • reasoning指示模型的推理阶段,始终以此类事件开始。
  • file_search_call: 报告搜索调用。 “status”属性告诉您是否成功。
  • function_call: 报告函数调用。 “status”属性告诉您是否成功。
  • mcp_list_tools返回访问的 mcp 拥有的所有“工具”。
  • mcp_call: 报告mcp调用。 “status”属性告诉您是否成功。
  • message包含最终消息,总是最后一个事件。

因此,根据应用程序的不同,浏览输出可能会很有趣,而不是直接搜索 output_text.

流媒体

添加参数时 stream=True 在API调用中,响应将以块形式生成(“chunks”)。这在聊天机器人开发中可能很有趣,这样用户就不必等待一次性生成响应。随着它的生成,它可以逐渐阅读,从而改善您的机器人的体验。

(ver example_02_streaming.ipynb)

网页搜索

当使用API进行简单调用时,所有内容都将在LLM本身中搜索。然而,这些模型有时间限制,也就是说,它们的知识是有限的,直到它们被生成的日期。例如,O GPT-5 使用数据进行训练至2024年9月30日。在此日期之后发生的一切都不会在咨询中被告知。因此,当您添加下面的参数时,模板将执行 Web 搜索并扩展查询的上下文:

tools=[{
    "type": "web_search"
}]

(ver example_03_web_search.ipynb)

注意这个参数 tools 介绍API中使用的工具概念。还有其他工具选项,如下所示。请注意,此参数是一个列表,也就是说,可以同时使用多个工具。

文件搜索

您可以将文件作为信息源添加到上下文中。为此,首先需要创建一个“矢量存储”。这可以直接在 API 控制台中完成(参见 这里但也可以按计划进行。

创建矢量存储时,必须附加文件并复制存储 ID。此 ID 将在调用参数中显示 :

tools=[{
    "type": "file_search",
    "vector_store_ids": []
}]

(ver example_04_file_search.ipynb)

请注意,该参数是一个列表,即通过访问多个存储可以传递多个 ID。此外,在同一个存储中可以有多个文件。

此功能会自动实现一项名为“检索增强生成”(RAG)的功能。

结构化输出

根据使用情况,以格式接收API调用的响应可能会很有趣 json而不是简单的文本。这在调用结果将用于某些工作流(“工作流”)的情况下非常有用,例如在自动化中使用。

为此,有必要在调用中告知输出布局 json有两种方法可以做到这一点:

  1. 使用参数报告模式 text.

(ver example_11_struc_output_schema.ipynb)

  1. 使用“Pydantic”库,参数 text_format在这种情况下,应使用该方法 parse API。

(ver example_12_struc_output_pydantic.ipynb)

函数调用

API做 responses 通过函数调用,帮助开发工作流程(“workflows”)。

重要函数不是由 LLM 执行的,只有当用户发送的消息符合工作流中预期的任何函数时才会返回。

就是这样运作的LLM 最初会分析用户发送的消息。如果它理解消息属于工作流中预期的某个函数,它会通知已识别的函数,并从查询中提取该函数所需的参数。否则,LLM将作为简单的呼叫进行处理,并返回它认为相关的消息。

但是,为了让 LLM 知道工作流中提供了哪些函数,它需要在 API 调用中传递这些函数的列表,包括所需的参数:

tools = [{
    "type": "function",
    "name": "get_capital",
    "description": "Retorna a capital de um país dado o nome do país.",
    "parameters": {
        "type": "object",
        "properties": {
            "country": {
                "type": "string",
                "description": "O nome do país cuja capital foi solicitada.",
            }
        },
        "required": ["country"],
        "additionalProperties": False,
    },
    "strict": True,
}]

(ver example_13_功能\_ call.ipynb)

请注意,这是一个列表,在这种情况下,只有一个函数被告知,但可能有更多。还要注意的是,“参数”遵循结构化输出的“模式”相同的模式。查看更多 这里.

参数 strict: True 确保模型完全遵循您定义的 JSON 架构。如果是 False模型尝试遵循该方案,但可能会有轻微的变化。

主控程序

MCP(模型上下文协议)是一种协议,允许LLM执行函数。也就是说,与前面提到的“函数调用”不同,其中LLM只识别函数,而不是执行函数,“mcp调用”允许识别和执行函数。

为此,必须传递mcp的参数:

tools=[{
    "type": "mcp",
    "server_label": "aloyoga",
    "server_url": "https://www.aloyoga.com/api/mcp",
    "require_approval": "never"
}]

(ver example_14_mcp.ipynb)

要了解更多关于mcps的用途,请参阅这里: .

.

目录标签

目录标签

Jupyter Notebook搜索文档处理本地部署文本生成API多模态流式输出网络搜索文件搜索

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP