更新Prompt模板
更新时间:2024-09-30
功能介绍
本接口用于更新Prompt模板。
SDK调用
使用说明
本文API支持通过Python SDK、Go SDK、Java SDK 和 Node.js SDK调用,调用流程请参考SDK安装及使用流程。
调用示例
import os
from qianfan import resources
# 使用安全认证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 = resources.Prompt.V2.update(
template_id="pt-wxj9mu20196qg9if",
template_name="文生文1号3343",
labels=["xxx"],
template_content="请以{number}字数生成{province}省相关宣传公告",
variable_identifier="{}",
)
print(resp.body)
package main
import (
"context"
"fmt"
"os"
"github.com/baidubce/bce-qianfan-sdk/go/qianfan"
)
func main() {
// 使用安全认证AK/SK鉴权,通过环境变量初始化;替换下列示例中参数,安全认证Access Key替换your_iam_ak,Secret Key替换your_iam_sk
os.Setenv("QIANFAN_ACCESS_KEY", "your_iam_ak")
os.Setenv("QIANFAN_SECRET_KEY", "your_iam_sk")
ca := qianfan.NewConsoleAction()
res, err := ca.Call(context.TODO(),
// 调用本文API,该参数值为固定值,无需修改;对应本文HTTP调用-请求说明-请求地址的后缀
"/v2/promptTemplates",
// 调用本文API,该参数值为固定值,无需修改;对应本文HTTP调用-请求说明-请求参数-Query参数的Action
"ModifyPromptTemplate",
// 对应本文HTTP调用-请求说明-请求参数-Body参数,具体使用请查看Body参数说明,根据实际使用选择参数
map[string]interface{}{
"templateId": "pt-0cb7a308287469f1",
"templateName": "文生文1号3343",
"labels": []string{"xxx"},
"templateContent": "请以{number}字数生成{province}省相关简介",
"variableIdentifier": "{}",
})
if err != nil {
panic(err)
}
fmt.Println(string(res.Body))
}
import com.baidubce.qianfan.Qianfan;
import com.baidubce.qianfan.model.console.ConsoleResponse;
import com.baidubce.qianfan.util.CollUtils;
import com.baidubce.qianfan.util.Json;
import java.util.Map;
public class Dome {
public static void main(String args[]){
// 使用安全认证AK/SK鉴权,替换下列示例中参数,安全认证Access Key替换your_iam_ak,Secret Key替换your_iam_sk
Qianfan qianfan = new Qianfan("your_iam_ak", "your_iam_sk");
ConsoleResponse<Map<String, Object>> response = qianfan.console()
// 调用本文API,该参数值为固定值,无需修改;对应本文HTTP调用-请求说明-请求地址的后缀
.route("/v2/promptTemplates")
// 调用本文API,该参数值为固定值,无需修改;对应本文HTTP调用-请求说明-请求参数-Query参数的Action
.action("ModifyPromptTemplate")
// 需要传入参数的场景,可以自行封装请求类,或者使用Map.of()来构建请求Body
// Java 8可以使用SDK提供的CollUtils.mapOf()来替代Map.of()
// 对应本文HTTP调用-请求说明-请求参数-Body参数,具体使用请查看Body参数说明,根据实际使用选择参数
.body(CollUtils.mapOf(
"templateId", "pt-0cb7a308287469f1",
"templateName", "文生文1号3343",
"labels", new String[]{"xxx"},
"templateContent", "请以{number}字数生成{province}省相关简介",
"variableIdentifier", "{}",
))
.execute();
System.out.println(Json.serialize(response));
}
}
import {consoleAction, setEnvVariable} from "@baiducloud/qianfan";
// 使用安全认证AK/SK鉴权,通过环境变量初始化;替换下列示例中参数,安全认证Access Key替换your_iam_ak,Secret Key替换your_iam_sk
setEnvVariable('QIANFAN_ACCESS_KEY','your_iam_ak');
setEnvVariable('QIANFAN_SECRET_KEY','your_iam_sk');
async function main() {
//base_api_route:调用本文API,该参数值为固定值,无需修改;对应本文HTTP调用-请求说明-请求地址的后缀
//action:调用本文API,该参数值为固定值,无需修改;对应本文HTTP调用-请求说明-请求参数-Query参数的Action
//data:对应本文HTTP调用-请求说明-请求参数-Body参数,具体使用请查看Body参数说明,根据实际使用选择参数
const res = await consoleAction({base_api_route: '/v2/promptTemplates', action: 'ModifyPromptTemplate', data: {
"templateId": "pt-0cb7a308287469f1",
"templateName": "文生文1号3343",
"labels": ["xxx"],
"templateContent": "请以{number}字数生成{province}省相关简介",
"variableIdentifier": "{}"
}
});
console.log(res);
}
main();
返回示例
{
'requestId': 'a5d4ca9f-c7ee-4537-a399-543e918589c1',
'result': {
'templateId': 'pt-wxj9mu20196qg9if'
}
}
{
"requestId": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
"result": true
}
{
"requestId": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
"result": true
}
{
requestId: '6ba7b810-9dad-11d1-80b4-00c04fd430c8',
result: true
}
请求参数
注意:以下为Python SDK参数说明,Go SDK、Java SDK、Node.js SDK参数说明请参考本文HTTP调用-请求说明。
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
template_id | string | 是 | Prompt模板ID,过以下任一方式获取该字段值: · 方式一,通过调用创建Prompt模板接口,返回的字段templateId获取 · 方式二,通过调用获取Prompt模板列表接口,返回的字段templateId获取 · 方式三,在控制台-Prompt模板-点击自制模板页面,选择模板,在模板详情查看模板ID,如下图所示: |
template_name | string | 否 | Prompt模板的名称 |
labels | list[string] | 否 | 标签名称数组,说明: (1)单个模板最多可选3个标签数组 (2)数组元素是标签名称,string类型 (3)如果标签名不在标签列表中,会自动创建 |
template_content | string | 否 | 模板内容,说明: (1)如果不使用框架,示例:请以{number}字数生成{province}省相关简介" (2)如果使用框架,请参考模板框架说明 |
variable_identifier | string | 否 | 变量识别符号,现有符号: · 大括号{} · 双大括号{{}} · 中括号[] · 双中括号[[]] · 小括号() · 双小括号(()) |
negative_template_content | string | 否 | 反向Prompt模板内容,表示不希望大模型生成的内容,说明:只有为文生图时,该字段有效 |
hyper_parameters | dict | 否 | 推理参数,仅在仅在开启推理时该字段有效 |
hyperParameters说明
- 文生文相关推理参数
名称 | 类型 | 描述 |
---|---|---|
modelName | string | 模型类别,可选值如下: · EB-Turbo · ERNIE-Bot · open-source |
temperature | float64 | 温度,说明: (1)较高的数值会使输出更加随机,而较低的数值会使其更加集中和确定 (2)默认0.95,范围 (0, 1.0],不能为0 (3)建议该参数和top_p只设置1个 (4)建议top_p和temperature不要同时更改 |
topP | int | 多样性,说明: (1)影响输出文本的多样性,取值越大,生成文本的多样性越强 (2)默认0.8,取值范围 [0, 1.0] (3)建议该参数和temperature只设置1个 (4)建议top_p和temperature不要同时更改 |
penaltyScore | float64 | 重复惩罚,通过对已生成的token增加惩罚,减少重复生成的现象,说明: (1)值越大表示惩罚越大 (2)默认1.0,取值范围:[1.0, 2.0] |
disableSearch | bool | 实时搜索,是否强制关闭实时搜索功能,默认False,表示不关闭 |
enableCitation | bool | 角标返回,是否开启上角标返回,说明: (1)开启后,有概率触发搜索溯源信息search_info,search_info内容见search_info说明 (2)默认False,不开启 |
stop | list[string] | 停止标识 |
system | string | 模型人设,主要用于人设设定,例如,你是xxx公司制作的AI助手,长度限制1024个字符 |
- 文生图相关推理参数
名称 | 类型 | 描述 |
---|---|---|
picSize | string | 图片比例,入参size。生成图片长宽,说明: (1)默认值 1024x1024 (2)取值范围如下:["512x512", "768x768", "768x1024", "1024x768", "576x1024", "1024x576", "1024x1024"] 注意:建议选择较大尺寸,结合完善的prompt,以保障图片质量 |
picNum | int | 图片数量,入参n。生成图片数量,说明: (1)默认值为1 (2)取值范围为1-4 (3)单次生成的图片较多及请求较频繁可能导致请求超时 |
samplingSteps | int | 采样步数,入参step。进行采样的次数,说明: (1)默认值为20 (2)取值范围为10-50 |
samplingMode | string | 采样方式,入参sampler_index,说明: (1)默认值:Euler a (2)值如下: · Euler · Euler a · DPM++ 2M · DPM++ 2M Karras · LMS Karras · DPM++ SDE · DPM++ SDE Karras · DPM2 a Karras · Heun · DPM++ 2M SDE · DPM++ 2M SDE Karras · DPM2 · DPM2 Karras · DPM2 a · LMS |
search_info说明
名称 | 类型 | 描述 |
---|---|---|
search_results | list(search_result) | 搜索结果列表 |
search_result说明
名称 | 类型 | 描述 |
---|---|---|
index | int | 序号 |
url | string | 搜索结果URL |
title | string | 搜索结果标题 |
返回参数
请参考本文HTTP调用-响应说明。
HTTP调用
鉴权说明
调用本文API,使用“基于安全认证AK/SK”进行签名计算鉴权,即使用安全认证中的Access Key ID 和 Secret Access Key进行鉴权,具体鉴权认证机制参考HTTP调用鉴权说明。
请求说明
- 基本信息
请求地址: https://qianfan.baidubce.com/v2/promptTemplates
请求方式: POST
- Header参数
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
Content-Type | string | 是 | 固定值:application/json |
x-bce-date | string | 是 | 当前时间,遵循ISO8601规范,格式如2016-04-06T08:23:49Z |
Authorization | string | 是 | 用于验证请求合法性的认证信息,更多内容请参考鉴权认证机制,签名工具可参考IAM签名工具 |
- Query参数
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
Action | string | 是 | 方法名称,本接口该字段值为ModifyPromptTemplate |
- Body参数
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
templateId | string | 是 | Prompt模板ID,过以下任一方式获取该字段值: · 方式一,通过调用创建Prompt模板接口,返回的字段templateId获取 · 方式二,通过调用获取Prompt模板列表接口,返回的字段templateId获取 · 方式三,在控制台-Prompt模板-点击自制模板页面,选择模板,在模板详情查看模板ID,如下图所示: |
templateName | string | 否 | Prompt模板的名称 |
labels | array[string] | 否 | 标签名称数组,说明: (1)单个模板最多可选3个标签数组 (2)数组元素是标签名称,string类型 (3)如果标签名不在标签列表中,会自动创建 |
templateContent | string | 否 | 模板内容,说明: (1)如果不使用框架,示例:请以{number}字数生成{province}省相关简介" (2)如果使用框架,请参考模板框架说明 |
variableIdentifier | string | 否 | 变量识别符号,现有符号: · 大括号{} · 双大括号{{}} · 中括号[] · 双中括号[[]] · 小括号() · 双小括号(()) |
negativeTemplateContent | string | 否 | 反向Prompt模板内容,表示不希望大模型生成的内容,说明:只有为文生图时,该字段有效 |
hyperParameters | object | 否 | 推理参数,仅在仅在开启推理时该字段有效 |
hyperParameters说明
- 文生文相关推理参数
名称 | 类型 | 描述 |
---|---|---|
modelName | string | 模型类别,可选值如下: · EB-Turbo · ERNIE-Bot · open-source |
temperature | float64 | 温度,说明: (1)较高的数值会使输出更加随机,而较低的数值会使其更加集中和确定 (2)默认0.95,范围 (0, 1.0],不能为0 (3)建议该参数和top_p只设置1个 (4)建议top_p和temperature不要同时更改 |
topP | int | 多样性,说明: (1)影响输出文本的多样性,取值越大,生成文本的多样性越强 (2)默认0.8,取值范围 [0, 1.0] (3)建议该参数和temperature只设置1个 (4)建议top_p和temperature不要同时更改 |
penaltyScore | float64 | 重复惩罚,通过对已生成的token增加惩罚,减少重复生成的现象,说明: (1)值越大表示惩罚越大 (2)默认1.0,取值范围:[1.0, 2.0] |
disableSearch | bool | 实时搜索,是否强制关闭实时搜索功能,默认false,表示不关闭 |
enableCitation | bool | 角标返回,是否开启上角标返回,说明: (1)开启后,有概率触发搜索溯源信息search_info,search_info内容见search_info说明 (2)默认false,不开启 |
stop | array[string] | 停止标识 |
system | string | 模型人设,主要用于人设设定,例如,你是xxx公司制作的AI助手,长度限制1024个字符 |
- 文生图相关推理参数
名称 | 类型 | 描述 |
---|---|---|
picSize | string | 图片比例,入参size。生成图片长宽,说明: (1)默认值 1024x1024 (2)取值范围如下:["512x512", "768x768", "768x1024", "1024x768", "576x1024", "1024x576", "1024x1024"] 注意:建议选择较大尺寸,结合完善的prompt,以保障图片质量 |
picNum | int | 图片数量,入参n。生成图片数量,说明: (1)默认值为1 (2)取值范围为1-4 (3)单次生成的图片较多及请求较频繁可能导致请求超时 |
samplingSteps | int | 采样步数,入参step。进行采样的次数,说明: (1)默认值为20 (2)取值范围为10-50 |
samplingMode | string | 采样方式,入参sampler_index,说明: (1)默认值:Euler a (2)值如下: · Euler · Euler a · DPM++ 2M · DPM++ 2M Karras · LMS Karras · DPM++ SDE · DPM++ SDE Karras · DPM2 a Karras · Heun · DPM++ 2M SDE · DPM++ 2M SDE Karras · DPM2 · DPM2 Karras · DPM2 a · LMS |
search_info说明
名称 | 类型 | 描述 |
---|---|---|
search_results | List(search_result) | 搜索结果列表 |
search_result说明
名称 | 类型 | 描述 |
---|---|---|
index | int | 序号 |
url | string | 搜索结果URL |
title | string | 搜索结果标题 |
响应说明
名称 | 类型 | 描述 |
---|---|---|
requestId | string | 请求ID |
code | string | 错误码,错误时返回 |
message | string | 错误信息,仅请求失败时返回 |
result | bool | 请求结果,仅请求成功时返回true |
请求示例
# 替换下列示例中的Authorization、x-bce-date
curl -i --location 'https://qianfan.baidubce.com/v2/promptTemplates?Action=ModifyPromptTemplate'\
--header 'Authorization: bce-auth-v1/f0ee7axxxx/2023-09-19T13:42:13Z/180000/host;x-bce-date/9a8cfb8ee58a8f44a2xxxx74525543'\
--header 'x-bce-date: 2023-09-19T13:37:10Z'\
--header 'Content-Type: application/json'\
--data '{
"templateId": "pt-0cb7a308287469f1",
"templateName": "文生文1号3343",
"labels": ["xxx"],
"templateContent": "请以{number}字数生成{province}省相关简介",
"variableIdentifier": "{}",
}'
响应示例
{
"requestId": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
"result": true
}
错误码
若请求错误,服务器将返回的JSON文本包含以下参数:
名称 | 描述 |
---|---|
requestId | 请求ID |
code | 错误码 |
message | 错误描述信息,帮助理解和解决发生的错误 |
例如错误返回:
{
"requestId":"6ba7b810-xxxxc04fd430c8",
"code":"AccessDenied",
"message":"Access denied."
}
更多其他错误码,也可以查看错误码说明。