🧠 Embeddings
2025年2月22日小于 1 分钟
🧠 Embeddings
LocalAI 支持生成文本或标记列表的嵌入。
有关 API 文档,您可以参考 OpenAI 文档:https://platform.openai.com/docs/api-reference/embeddings
模型兼容性
嵌入端点与 llama.cpp 模型、bert.cpp 模型和 Huggingface 中可用的 sentence-transformers 模型兼容。
手动设置
在 models 目录中创建一个 YAML 配置文件。指定 backend 和模型文件。
name: text-embedding-ada-002 # API 中使用的模型名称
parameters:
model: <model_file>
backend: "<backend>"
embeddings: true
# .. 其他参数Huggingface 嵌入
要使用 sentence-transformers 和 Huggingface 中的模型,您可以使用 sentencetransformers 嵌入后端。
name: text-embedding-ada-002
backend: sentencetransformers
embeddings: true
parameters:
model: all-MiniLM-L6-v2sentencetransformers 后端使用 Python sentence-transformers。有关所有预训练模型的列表,请查看此处:https://github.com/UKPLab/sentence-transformers#pre-trained-models
Llama.cpp 嵌入
使用 llama.cpp 的嵌入是通过 llama-cpp 后端支持的,需要将 embeddings 设置为 true 来启用。
name: my-awesome-model
backend: llama-cpp
embeddings: true
parameters:
model: ggml-file.bin
# ...然后您可以使用 API 来生成嵌入:
curl http://localhost:8080/embeddings -X POST -H "Content-Type: application/json" -d '{
"input": "My text",
"model": "my-awesome-model"
}' | jq "."💡 示例
- 使用 LLamaIndex 和 LocalAI 作为嵌入的示例:这里。