获取Prompt优化任务的详情
更新时间:2024-12-26
注意:
- 为提升开发者使用体验,推荐使用Prompt工程V2版本接口,功能更全面、且接口更规范,详见Prompt工程API列表。
- Prompt工程V1版本接口功能不再升级,本文档于2024年8月5日下线;由于V1版本接口后续可能下线停止服务,为避免影响使用,建议接入Prompt工程V2版本接口。
功能介绍
本接口用于获取prompt优化任务详情。
SDK调用
使用说明
调用本文API,需使用安全认证AK/SK鉴权,调用流程及鉴权介绍详见SDK安装及使用流程。
调用示例
import os
import qianfan
import time
from qianfan.resources import Prompt
# 使用安全认证AK/SK鉴权,通过环境变量方式初始化;替换下列示例中参数,安全认证Access Key替换your_iam_ak,Secret Key替换your_iam_sk
os.environ["QIANFAN_ACCESS_KEY"] = "your_iam_ak"
os.environ["QIANFAN_SECRET_KEY"] = "your_iam_sk"
resp_create = Prompt.create_optimiztion_task(
content="帮我写一份{job}年终总结",
operations=[
{"opType":1,"payload":1},
{"opType":2,"payload":0},
{"opType":3,"payload":1},
{"opType":4,"payload":0}
],
)
id = resp_create['result']['id']
while Prompt.get_optimization_task(id)['result']['processStatus'] == 1:
time.sleep(5)
resp_get = Prompt.get_optimization_task(id)
optimized_prompt = resp_get['result']['optimizeContent']
print(optimized_prompt)
返回示例
QfResponse(
code = 200,
headers = {...},
body = {
'log_id': 'mdhwm1t4nwjw6crj',
'result': {
'id': 'task-j9mpidkjr27vis7e',
'content': '帮我写一份{job}年终总结',
'optimizeContent': '请写一份详尽的年终总结,总结你一年来的工作和成就。请涵盖你的职责和工作内容,以及你取得的进展和成果。你应该提及你的团队成员和领导,以及他们对你的工作给予的支持和帮助。请在总结中强调你对公司的贡献,以及你所具备的技能和经验。同时,请指出你面临的挑战和难题,并讨论你如何应对这些挑战和难题。请在总结中提出你对未来的计划和目标,以展示你的职业发展和成长。请注意,你的总结应该清晰、具体和有条理,以帮助你和你的上级、同事和客户更好地理解你的工作和成就。',
'qingfanResult': '',
'operations': [
{'opType': 1, 'payload': 1},
{'opType': 2, 'payload': 0},
{'opType': 3, 'payload': 1},
{'opType': 4, 'payload': 0}
],
'processStatus': 2,
'appId': 0,
'serviceName': '',
'projectId': '',
'creator': 'baidu_aipd',
'inference': {
'before': '',
'after': ''
},
'createTime': '2024-01-24 12:59:06',
'modifyTime': '2024-01-24 12:59:23'
},
'status': 200,
'success': True
},
statistic = {...},
request = QfRequest(...)
)
请求参数
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
id | string | 是 | 优化任务的id。可以通过以下方式获取:通过调用创建Prompt在线优化任务接口,返回的id字段获取 |
返回参数
名称 | 类型 | 描述 |
---|---|---|
log_id | string | 操作记录id |
result | dict | 返回结果 |
status | int | 状态码 |
success | bool | 是否操作成功,说明: · True:成功 · False:失败 |
result说明
名称 | 类型 | 描述 |
---|---|---|
id | string | prompt优化任务id |
content | string | 原始prompt内容 |
optimizeContent | string | 优化后prompt内容 |
operations | list[dict] | 选择的算子 |
processStatus | int | 状态,说明: 1:优化中 2:优化完成 3:优化失败 |
appId | int | 选择的应用id |
serviceName | string | 选择的服务名称 |
projectId | string | 项目id |
creator | string | 创建用户名 |
inference | string | 推理结果 |
createTime | string | 创建时间 |
modifyTime | string | 更新时间 |
operations 说明
名称 | 类型 | 描述 |
---|---|---|
opType | int | 优化算子类型 |
payload | int | 优化算子参数 |
HTTP调用
鉴权说明
调用本文API,使用“基于安全认证AK/SK”进行签名计算鉴权,即使用安全认证中的Access Key ID 和 Secret Access Key进行鉴权,具体鉴权认证机制参考HTTP调用鉴权说明。
请求说明
- 基本信息
请求地址: https://qianfan.baidubce.com/wenxinworkshop/prompt/singleOptimize/info
请求方式: POST
- Header参数
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
Content-Type | string | 是 | 固定值:application/json |
x-bce-date | string | 否 | 当前时间,遵循ISO8601规范,格式如2016-04-06T08:23:49Z |
Authorization | string | 是 | 用于验证请求合法性的认证信息,更多内容请参考鉴权认证机制,签名工具可参考IAM签名工具 |
- Body参数
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
id | string | 是 | 优化任务的id。可以通过以下方式获取:通过调用创建Prompt在线优化任务接口,返回的id字段获取 |
响应说明
名称 | 类型 | 描述 |
---|---|---|
log_id | string | 操作记录id |
result | object | 返回结果 |
status | int | 状态码 |
success | bool | 是否操作成功,说明: · true:成功 · false:失败 |
result说明
名称 | 类型 | 描述 |
---|---|---|
id | string | prompt优化任务id |
content | string | 原始prompt内容 |
optimizeContent | string | 优化后prompt内容 |
operations | list[object] | 选择的算子 |
processStatus | int | 状态,说明: 1:优化中 2:优化完成 3:优化失败 |
appId | int | 选择的应用id |
serviceName | string | 选择的服务名称 |
projectId | string | 项目id |
creator | string | 创建用户名 |
inference | string | 推理结果 |
createTime | string | 创建时间 |
modifyTime | string | 更新时间 |
operations 说明
名称 | 类型 | 描述 |
---|---|---|
opType | int | 优化算子类型 |
payload | int | 优化算子参数 |
请求示例
# 替换下列示例中的Authorization值、x-bce-date值
curl -i --location 'https://qianfan.baidubce.com/wenxinworkshop/prompt/singleOptimize/info' \
--header 'Authorization: bce-auth-v1/f0ee7axxxx/2023-09-19T13:42:13Z/180000/host;x-bce-date/9a8cfb8ee58a8fxxxxxx3d080016e374525543' \
--header 'x-bce-date: 2023-09-19T13:37:10Z' \
--header 'Content-Type: application/json' \
--data '{
"projectId": "",
"id": "task-51801xxxx6656"
}'
响应示例
{
"log_id": "0qqb0s65kh5d2g9s",
"result": {
"id": "task-96f3mfrnj5e8qgv3",
"content": "老虎的习性是什么样的 hahahahah",
"optimizeContent": "请详细阐述老虎的习性。在你的回答中,请提供详尽的信息和例子,以帮助读者更好地了解老虎的行为和习惯。你可以讨论老虎的食性、栖息地、社会行为、狩猎技巧等方面,以及老虎在不同环境下可能表现出的不同行为。请注意,你的回答应该是具体的和详实的,避免笼统的概括或不相关的信息。同时,请充满幽默感,以增加阅读乐趣。",
"qingfanResult": "",
"operations": [
{
"opType": 1,
"payload": 1
},
{
"opType": 2,
"payload": 1
},
{
"opType": 3,
"payload": 1
},
{
"opType": 4,
"payload": 0
}
],
"processStatus": 2,
"appId": 1483416585,
"serviceName": "ERNIE-Bot-turbo",
"projectId": "",
"creator": "easydata_user",
"inference": "",
"createTime": "2023-12-29 17:40:33",
"modifyTime": "2023-12-29 17:40:48"
},
"status": 200,
"success": true
}
错误码
若请求错误,服务器将返回的JSON文本包含以下参数:
名称 | 描述 |
---|---|
error_code | 错误码 |
error_msg | 错误描述信息,帮助理解和解决发生的错误 |
例如参数错误返回:
{
"error_code": 500001,
"error_msg": "param invalid"
}
更多相关错误码,请查看错误码说明。