类功能
功能描述
连接TEI服务,提供文本至向量的embedding功能。类继承实现了langchain_core.embeddings.Embeddings接口。
函数原型
from mx_rag.embedding.service import TEIEmbedding TEIEmbedding(url, client_param)
输入参数说明
参数名 |
数据类型 |
可选/必选 |
说明 |
---|---|---|---|
url |
str |
必选 |
TEI embed服务地址,url字符串长度不能超过128。 说明:
当前基于TEI框架创建的embed服务不支持https协议,为安全起见可通过搭建一个nginx服务,让该服务与embed服务处于一个可信网络。使用时客户端以https方式访问nginx,nginx转发请求到embed服务。 |
client_param |
ClientParam |
可选 |
https客户端配置参数,默认值为“ClientParam()”,具体描述请参见ClientParam类。 |
embed_mode |
str |
可选 |
与TEI服务提供的向量化类型对应,默认为"dense",值只能为"sparse"或"dense","sparse"表示稀疏向量化,"dense"表示稠密向量化, |
返回值说明
TEIEmbedding对象。
调用示例
from paddle.base import libpaddle from mx_rag.embedding.service import TEIEmbedding from mx_rag.utils import ClientParam # 同tei_embed = TEIEmbedding("https://ip:port/embed", client_param=ClientParam(xxx)) tei_embed = TEIEmbedding.create(url="https://ip:port/embed", client_param=ClientParam(ca_file="/path/to/ca.crt")) print(tei_embed.embed_documents(['abc', 'bcd'])) print(tei_embed.embed_query('abc'))
父主题: TEIEmbedding类