TEI 支持高性能提取主流模型,包括 FlagEmbedding、Ember、GTE 和 E5。
TEI 提供与 OpenAI 兼容的 /v1/embeddings 端点,因此可通过 langchain-openai 包的 OpenAIEmbeddings 从 LangChain 消费 TEI 部署。
早期版本的指南使用了
HuggingFaceEndpointEmbeddings(model="http://localhost:8080")。langchain-huggingface 不再接受 model 的 URL,而是会在 TEI 服务器上抛出 `model` must be a HuggingFace repo ID, not a URL.. Point OpenAIEmbeddings 错误,示例如下。设置
安装langchain-openai:
使用 TEI 部署模型
通过 TEI 暴露嵌入模型。例如使用 Docker 可按如下方式托管sentence-transformers/all-MiniLM-L6-v2:
cpu-1.9 镜像并移除 --gpus all 标志。Docker 配置因底层硬件而异。例如在 Intel Gaudi/Gaudi2 硬件上部署,请参考 tei-gaudi 仓库 的相关 docker run 命令。
嵌入文本
向 TEI 服务器实例化OpenAIEmbeddings:
设置
check_embedding_ctx_length=False。若未启用该标志, OpenAIEmbeddings 会使用 tiktoken 对输入进行分词并发送 Token IDs,但 TEI 不支持该格式。该标志会直接发送原始文本。若 TEI 启用了 API 密钥,请将其值传递给 api_key。官方原文:src/oss/python/integrations/embeddings/text_embeddings_inference.mdx · 非官方翻译,译文由 AI 生成,以英文原文为准。