开放文档
Warning
- 最后更新于2022.10.12
- WeLM 提供续写功能,但并不具有原生对话能力
开发者交流
欢迎各位开发者将您遇到的问题和场景等描述后发送至我们的邮箱 wechat_ai@tencent.com。
接口说明
Warning
- 每个账户每日免费请求WeLM服务有配额限制,每生成一个字符消耗一个资源配额,请妥善配置生成序列的个数(n)和生成token个数(max_tokens),以免快速用完您的配额;
- 请求服务时有频率限制;
具体限制请查看邮件。
获取API Token
填写问卷:WeLM Application Form ,我们会将API Token发送至您的邮箱。每个邮箱只能注册一个token。
调用接口
curl -H 'Content-Type: application/json' -H 'Authorization: Bearer your_api_token' \
https://welm.weixin.qq.com/v1/completions -d \
'{
"prompt":"测试",
"model":"xl",
"max_tokens":16,
"temperature":0.0,
"top_p":0.0,
"top_k":10,
"n":1,
"echo":false,
"stop":",,.。"
}'
Request body
- model: string 必选,要使用的模型名称,当前支持的模型名称有medium、 large 和 xl
- prompt: string 可选,默认值空字符串,给模型的提示
- max_tokens: integer 可选,最多生成的token个数,默认值 16
- temperature: number 可选 默认值 0.85,表示使用的sampling temperature,更高的temperature意味着模型具备更多的可能性。对于更有创造性的应用,可以尝试0.85以上,而对于有明确答案的应用,可以尝试0(argmax采样)。
建议改变这个值或top_p,但不要同时改变。
- top_p: number 可选 默认值 0.95,来源于nucleus sampling,采用的是累计概率的方式。即从累计概率超过某一个阈值p的词汇中进行采样,所以0.1意味着只考虑由前10%累计概率组成的词汇。
建议改变这个值或temperature,但不要同时改变。
- top_k: integer 可选 默认值50,从概率分布中依据概率最大选择k个单词,建议不要过小导致模型能选择的词汇少。
- n: integer 可选 默认值 1 返回的序列的个数
- echo: boolean 可选 默认值false,是否返回prompt
- stop: string 可选 默认值 null,停止符号。当模型当前生成的字符为stop中的任何一个字符时,会停止生成。若没有配置stop,当模型当前生成的token id 为end_id或生成的token个数达到max_tokens时,停止生成。合理配置stop可以加快推理速度、减少quota消耗。
Warning
- prompt长度 + max_tokens <= 2048, max_tokens <= 1024
- n: 大于0, 小于等于12
Response
{
"id":"25ade274-2f8a-11ed-8c3d-1767c0ccef73",
"object":"text_generation",
"created":1662650590,
"model":"xl",
"choices":[
{
"text":"测试结果",
"index":0,
"logprobs":0,
"finish_reason":"finished",
}
]
}
状态码
当请求出现错误时,通过校验http state code 可以查看错误原因
Info
- 超时:504
- 服务不可用:503
- 用户prompt命中敏感词:400, finish_reason: “error: content policy violation”
- 生成结果命中敏感词:200, finish_reason: “error: internal error”
- 用户输入参数不合法:400, finish_reason返回原因
- 配额超限制:429, response body: “quota limit exceed”
- 请求频率超限制:429, response body: “rate limit exceeded”
QA
- 为什么模型没有返回结果?
- 您可以检查返回的状态码以及finish_reason,查看是否为对应的错误
- 检查request中的stop设置是否合理,有可能是模型生成的第一个字符恰好为stop中的字符,导致没有结果。