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 |
|
错误码
请参见错误码。
