【Ollama】使用命令行和python进行文本嵌入
Embeddings是RAG的前提。本文介绍了在Ollama中,使用命令行和python进行文本嵌入。
·
嵌入(Embeddings)
为语义搜索、检索和 RAG(检索增强生成)生成文本嵌入。
嵌入将文本转换为可存储在向量数据库中的数值向量,可用余弦相似度进行搜索或用于 RAG 流水线。
向量长度取决于模型(通常为 384–1024 维)。
推荐模型
embeddinggemmaqwen3-embeddingall-minilm
生成嵌入
命令行(CLI)
- 直接在命令行生成嵌入:
ollama run embeddinggemma "Hello world"
输出
[-0.20235947,0.034742266,0.06009154,...中间省略...,-0.057829987,-0.036453627,-0.037171964]
- 也可以通过管道传入文本:
echo "Hello world" | ollama run embeddinggemma
输出为 JSON 数组。
/api/embed 端点返回 L2 归一化(单位长度)向量。
Python
- 单文本嵌入
import ollama
single = ollama.embed(
model='embeddinggemma',
input='The quick brown fox jumps over the lazy dog.'
)
print(len(single['embeddings'][0])) # vector length
- 批量嵌入
import ollama
batch = ollama.embed(
model='embeddinggemma',
input=[
'The quick brown fox jumps over the lazy dog.',
'The five boxing wizards jump quickly.',
'Jackdaws love my big sphinx of quartz.',
]
)
print(len(batch['embeddings'])) # number of vectors
提示
对大多数语义搜索场景使用余弦相似度。
索引和查询应使用相同的嵌入模型。
将嵌入存储在向量数据库中,以便快速的近似最近邻搜索。
索引和查询之间确保预处理一致(分词、大小写、修剪)。
火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。
更多推荐

所有评论(0)