资讯 社区 文档
技术能力
语音技术
文字识别
人脸与人体
图像技术
语言与知识
视频技术

tao-8k

tao-8k是由Huggingface开发者amu研发并开源的长文本向量表示模型,支持8k上下文长度,模型效果在C-MTEB上居前列,是当前最优的中文长文本embeddings模型之一。本文介绍了相关API。

功能介绍

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

使用说明

支持通过Python SDK、Go SDK、Java SDK和Node.js SDK调用,调用流程请查看SDK安装及使用流程

SDK调用

SDK 支持调用平台中的模型,将输入文本转化为用浮点数表示的向量形式。转化得到的语义向量可应用于文本检索、信息推荐、知识挖掘等场景。

请求示例

import os
import qianfan

# 使用安全认证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"

emb = qianfan.Embedding()

resp = emb.do(model="tao-8k", texts=[ 
    "推荐一些美食"
])
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")

	embed := qianfan.NewEmbedding(
        qianfan.WithModel("tao-8k"),
    )
	resp, _ := embed.Do( 
		context.TODO(),
		&qianfan.EmbeddingRequest{
			Input: []string{"你好啊"},
		},
	)
	fmt.Println(resp.Data[0].Embedding)
}
import com.baidubce.qianfan.Qianfan;
import com.baidubce.qianfan.model.embedding.EmbeddingData;
import com.baidubce.qianfan.model.embedding.EmbeddingResponse;
import java.util.Arrays;

public class Demo {
    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");
        
        EmbeddingResponse resp = qianfan.embedding()
                .model("tao-8k")
                .input(Arrays.asList("晚饭味道很不错"))
                .execute();
        for (EmbeddingData data : resp.getData()) {
            System.out.println(data.getEmbedding());
        }
    }
}
import {Embedding} from "@baiducloud/qianfan";

// 使用安全认证AK/SK鉴权,替换下列示例中参数,安全认证Access Key替换your_iam_ak,Secret Key替换your_iam_sk
const client = new Embedding({ QIANFAN_ACCESS_KEY: 'your_iam_ak', QIANFAN_SECRET_KEY: 'your_iam_sk' });
async function main() {
    const resp = await client.embedding({
        input: ['晚饭味道很不错'],
    }, 'tao-8k');
    const rs = resp.data;
    rs.forEach((data) => {
        console.log(data.embedding);
    })
}

main();

返回示例

{
	'id': 'as-671jysj753', 
	'object': 'embedding_list', 
	'created': 1718865925, 
	'data': [
		{
		    'object': 'embedding', 
			'embedding': [-0.0088579673320055, -0.0038655658718198538, 0.003803160274401307,...],
  			'index': 0
  		}
  	], 
  	'usage': {
  		'prompt_tokens': 3, 
  		'total_tokens': 3
  	}
}
[-0.009818156249821186 0.026906531304121017 -0.02890794165432453 ...]
[0.03495601564645767, 0.01275318767875433, -0.02989528886973858,...]
[0.03495601564645767, 0.01275318767875433, -0.02989528886973858,...]

请求参数

注意:以下为Python SDK参数说明,Go、Java、Node.js SDK参数相关说明请参考Go SDK-向量Embeddings参数相关说明Java SDK参数相关说明Node.js SDK参数相关说明

名称 类型 必填 描述
model str 模型名称,说明:调用本文API,该字段为固定值tao-8k
texts List[str] 填写文本,说明:
(1)文本数量只能为1
(2)文本token数不超过8192且长度不超过28000个字符
(3)输入文本不能为空,如果为空会报错
retry_count int 重试次数,默认1次
request_timeout float 请求超时时间,默认60秒
backoff_factor float 请求重试参数,用于指定重试的策略,默认为0
user_id str 表示最终用户的唯一标识符

返回参数

名称 类型 描述
id str 本轮对话的id
object str 回包类型,固定值“embedding_list”
created int 时间戳
data List[EmbeddingData] embedding信息,data成员数和文本数量保持一致
usage Usage token统计信息,token数 = 汉字数+单词数*1.3 (仅为估算逻辑)

EmbeddingData说明

名称 类型 描述
object str 固定值"embedding"
embedding List[float] embedding 内容
index int 序号

Usage说明

名称 类型 描述
prompt_tokens int 问题tokens数(包含历史QA)
total_tokens int tokens总数
上一篇
bge-large-en
下一篇
图像Images