API操作指引
Agent发布,发布渠道选择“API”时,会将Agent生成为API接口。用户调用此接口时,调用流程如下。
前提条件
Agent已发布,且发布渠道选择“API”,发布Agent具体操作请参考在AI原生应用引擎中发布Agent。
获取API接口信息
- 进入AI原生应用引擎。
- 在AI原生应用引擎左侧导航,选择“Agent编排中心 > 我的Agent”。
- 在“我创建的”页签,在需要调用的Agent对应的“发布地址”列下,鼠标移动至
上,如图1所示,查看复制API接口地址。
构造请求
curl命令调用agent请求示例: { curl --location --request POST '{{ 第二步获得的Api地址 }}' --header 'Authorization: Bearer {{ 第三步获得的APIKey }}' --header 'Content-Type: application/json' --data-raw '{ "query": "{{ 输入问题 }}", "memory": [], // 包含迄今为止历史对话的消息列表 List[Dict] 这是一个结构体的列表,每个元素类似如下:{"role": "user", "content": "你好"} role 只支持user,assistant,tool 其一,content 不得为空。 }' }
Python调用Agent代码示例: import requests url = {{ 获取API接口信息获取的API地址 }} payload="{\n \"query\": \"您好"\n}" headers = { 'Content-Type': 'application/json', 'Authorization': 'Bearer {{ 获取鉴权信息获取的APIKey }}', } response = requests.request("POST", url, headers=headers, data=payload)
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
query |
string |
true |
用户的问题。 |
memory |
Array[Object] |
true |
历史对话内容。 示例:{"role": "user", "content": "你好"},role支持user、assistant、tool。 |
user_id |
string |
true |
自定义的用户ID,与conversation_id共同使用可以使Agent自动获取相同对话ID下的前几轮对话内容。与memory不同时生效,memory存在时memory优先生效。 |
conversation_id |
string |
true |
自定义的对话ID,与user_id共同使用可以使Agent自动获取相同对话ID下的前几轮对话内容。与memory不同时生效,memory存在时memory优先生效。 |
variables |
Object |
true |
填写一般变量和敏感变量。 示例:{"common_variables":{"k1":"v1"}, "sensitive_variables":{"k2":"v2"}}},其中common_variables表示一般变量,sensitive_variables表示敏感变量。如果Agent中设置了敏感变量,敏感变量为必传。 |
响应参数
参数 |
参数类型 |
描述 |
---|---|---|
request_id |
string |
请求ID。 |
agent_id |
string |
Agent的ID。 |
user_id |
string |
用户ID。 |
conversation_id |
string |
会话ID。 |
type |
string |
返回类型。
|
data |
Object |
返回的具体内容。
|
参数 |
参数类型 |
描述 |
---|---|---|
id |
string |
工具、工作流或者知识库的唯一ID。 |
name |
string |
工具、工作流或者知识库的名称。 |
type |
string |
|
错误码
请参见错误码。