Skip to main content

同步调用 API 参考

通过 OpenAI 兼容模式的 Responses API 同步调用阿里云百炼应用

本文介绍如何通过 OpenAI 兼容模式的 Responses API 同步调用阿里云百炼应用(智能体应用、工作流应用)。适用于需要即时获取结果的实时交互场景,可轻松复用现有的 OpenAI 代码库,或快速集成来自 OpenAI 生态的各类工具。
本文仅适用于旧版智能体应用(Agent 1.0)。如果您使用的是新版智能体应用(Agent 2.0),调用本文描述的 API 会返回版本不兼容错误(实际报错形如 server_error: Model not found: <APP_ID>),请参阅新版智能体应用 API。如何区分应用版本:在应用管理页面单击创建智能体后,默认创建的是 Agent 2.0;如需创建 Agent 1.0,请单击创建弹窗底部的旧版 Agent 创建入口,页面将跳转至旧版百炼控制台。
相关参考

前提条件

  • 已获取 API Key 并配置到环境变量
  • 已创建阿里云百炼应用并获取应用 ID
  • 如果通过 SDK 调用,还需要安装 OpenAI Python SDK

接入地址

  • SDK base_url: https://dashscope.aliyuncs.com/api/v2/apps/agent/{APP_ID}/compatible-mode/v1/
  • HTTP Endpoint: POST https://dashscope.aliyuncs.com/api/v2/apps/agent/{APP_ID}/compatible-mode/v1/responses
请将 {APP_ID} 替换为实际的应用 ID。
在线调试:通过应用卡片 -> 发布 -> API 调试路径进入调试页面后,填写参数并点击运行即可。

快速上手:发送第一条消息

from openai import OpenAI
import os

api_key = os.getenv("DASHSCOPE_API_KEY")
app_id = 'APP_ID'  # 替换为实际的应用 ID
base_url = f'https://dashscope.aliyuncs.com/api/v2/apps/agent/{app_id}/compatible-mode/v1/'

client = OpenAI(
    api_key=api_key,
    base_url=base_url
)

response = client.responses.create(
    input="你是谁?",
)

print(response.model_dump_json(indent=2))
当您直接使用 cURL 或其他 HTTP 客户端调用时,input 必须传入消息数组结构(如 "input": [{"role": "user", "content": "..."}]),传纯字符串会被服务端静默接受但返回空的 output,不会报错。Python SDK 传入简单字符串(如 input="你好")时会自动包装成完整 JSON 结构,无需处理。

请求参数

参数类型必选说明
inputstring/array是用户输入内容。可以是简单字符串或消息数组。
modelstring否模型名称,不影响实际调用的模型。
streamboolean否是否开启流式输出,默认 false。

响应对象

参数类型说明
idstring响应唯一标识。
outputarray输出消息列表。
statusstring响应状态,如 completed。
usageobjectToken 使用信息。

错误码

如果调用失败并返回报错信息,请参阅错误码文档进行解决。