阅读(220) 书签 (0)

文心一言 Embedding-V1 API文档

2023-07-19 14:35 更新

Embedding-V1是基于百度文心大模型技术的文本表示模型,将文本转化为用数值表示的向量形式,用于文本检索、信息推荐、知识挖掘等场景。本文介绍了Embedding-V1相关API。

Embeddings

根据输入内容生成对应的向量表示。

请求说明

基本信息

请求地址:https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/embeddings/embedding-v1

请求方式:POST

Header参数

名称
Content-Typeapplication/json

Query参数

名称类型必填描述
access_tokenstring通过API Key和Secret Key获取的access_token,参考Access Token获取

Body参数

名称类型必填描述
inputList(string)输入文本以获取embeddings。说明:
(1)文本数量不超过16
(2)每个文本长度不超过 384个token
user_idstring表示最终用户的唯一标识符,可以监视和检测滥用行为,防止接口恶意调用

响应说明

名称类型描述
idstring本轮对话的id
objectstring回包类型,固定值“embedding_list”
createdint时间戳
dataList(embedding_data)embedding信息,data成员数和文本数量保持一致
usageusagetoken统计信息,token数 = 汉字数+单词数*1.3 (仅为估算逻辑)

embedding_data说明

名称类型描述
objectstring固定值"embedding"
embeddingList(float64)embedding 内容
indexint序号

usage说明

名称类型描述
prompt_tokensint问题tokens数(包含历史QA)
total_tokensinttokens总数

示例

请求示例

# 步骤一,获取access_token,替换下列示例中的API Key与Secret Key
curl 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=[API Key]&client_secret=[Secret Key]'

# 步骤二,调用本文API,使用步骤一获取的access_token,替换下列示例中的”调用接口获取的access_token“
curl -XPOST https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/embeddings/embedding-v1?access_token=[步骤一调用接口获取的access_token] -d '{
  "input": ["推荐一些美食","给我讲个故事"]
}'

响应示例

HTTP/1.1 200 OK
Date: Thu, 23 Mar 2023 03:12:03 GMT
Content-Type: application/json;charset=utf-8
Statement: AI-generated

{
  "id": "as-gjs275mj6s",
  "object": "embedding_list",
  "created": 1687155816,
  "data": [
    {
      "object": "embedding",
      "embedding": [
        0.018314670771360397,
        0.00942440889775753,
        ...(共384个float64)
        -0.36294862627983093
      ],
      "index": 0
    },
    {
      "object": "embedding",
      "embedding": [
        0.12250778824090958,
        0.07934671640396118,
        ...(共384个float64)
        0
      ],
      "index": 1
    }
  ],
  "usage": {
    "prompt_tokens": 12,
    "total_tokens": 12
  }
}

错误码

如果请求错误,服务器返回的JSON文本包含以下参数。

名称描述
error_code错误码
error_msg错误描述信息,帮助理解和解决发生的错误

例如Access Token失效返回:

{
  "error_code": 110,
  "error_msg": "Access token invalid or no longer valid"
}

需要重新获取新的Access Token再次请求。

错误码错误信息描述
1Unknown error服务器内部错误,请再次请求, 如果持续出现此类错误,请在百度云控制台内提交工单反馈
2Service temporarily unavailable服务暂不可用,请再次请求, 如果持续出现此类错误,请在百度云控制台内提交工单反馈
3Unsupported openapi method调用的API不存在,请检查后重新尝试
4Open api request limit reached集群超限额
6No permission to access data无权限访问该用户数据
13Get service token failed获取token失败
14IAM Certification failedIAM鉴权失败
15app not exists or create failed应用不存在或者创建失败
17Open api daily request limit reached每天请求量超限额,已上线计费的接口,请直接在控制台开通计费,调用量不受限制,按调用量阶梯计费;未上线计费的接口,请在百度云控制台内提交工单反馈
18Open api qps request limit reachedQPS超限额,已上线计费的接口,请直接在控制台开通计费,调用量不受限制,按调用量阶梯计费;未上线计费的接口,请在百度云控制台内提交工单反馈
19Open api total request limit reached请求总量超限额,已上线计费的接口,请直接在控制台开通计费,调用量不受限制,按调用量阶梯计费;未上线计费的接口,请在百度云控制台内提交工单反馈
100Invalid parameter无效的access_token参数,请检查后重新尝试
110Access token invalid or no longer validaccess_token无效
111Access token expiredaccess token过期
336000Internal error服务内部错误
336001Invalid Argument入参格式有误,比如缺少必要参数
336002Invalid JSON入参body不是标准的JSON格式
336003{参数校验不合法的具体原因}说明:参数不同,返回错误信息不同参数校验不合法,error_msg中会给出具体原因
336004{权限控制出错的具体原因}权限控制出错
336005API name not exist定制化模型服务apiname不存在
336100人工智能是一项革命性的技术。与我互动的人过多,请您稍后重新向我提问。人工智能是一项革命性的技术。与我互动的人过多,请您稍后重新向我提问
336101Invalid HTTP Method非法的HTTP Method, 当前仅支持POST请求
336200Embeddings internal errorEmbeddings服务内部错误