向量模型
更新时间:2025-04-11
什么是embedding
文本嵌入是文本的数值表示,可用于衡量语义相似度。应用场景包括:
- 推荐:根据输入文本字符推荐相关信息条目
- 聚类:按相似性对文本字符串进行分组
- 搜索:按相关性对搜索结果排序
- 异常检测:识别出相关性较小的异常值
- 多样性检测:分析文本字符的相似性分布
- 分类:按照相似性对文本字符进行分类 两个向量之间的距离决定了它们的相关性。距离小表示相关性高,距离大表示相关性低。
如何使用向量模型
调用向量模型,输入文本以获取embeddings。不同模型的文本数量限制不同,具体请参考模型列表文档。model入参您想调用的向量模型,例如embedding-v1。
curl --location 'https://qianfan.baidubce.com/v2/embeddings' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer bce-v3/ALTAK-*********/614fb**********' \
--data '{
"model": "embedding-v1",
"input":["White T-shirt"]
}'
返回中包含了向量信息(浮点list)和一些其他元数据。您可以提取向量,保存在向量数据库中在其他场景中使用。
{
"id": "as-xz2r36ena8",
"object": "list",
"created": 1737030777,
"data": [
{
"object": "embedding",
"embedding": [
0.018346669152379036,
0.009424751624464989,
-0.009573426097631454,
...,
-0.3628600239753723
],
"index": 0
}
],
"model": "embedding-v1",
"usage": {
"prompt_tokens": 3,
"total_tokens": 3
}
}
同时,您也可以通过OpenAI的SDK来请求该模型。
from openai import OpenAI
client = OpenAI(
api_key="bce-v3/ALTAK-xxxxx",
base_url="https://qianfan.baidubce.com/v2"
)
response = client.embeddings.create(
model= "embedding-v1",
input=["White T-shirt"])
print(response.data[0].embedding)