OllamaEmbeddings#
- class langchain_ollama.embeddings.OllamaEmbeddings[source]#
基础类:
BaseModel
,Embeddings
Ollama嵌入模型集成。
- Set up a local Ollama instance:
安装Ollama包并按照这里的说明设置本地Ollama实例:ollama/ollama。
您需要选择一个模型来服务。
您可以通过模型库查看可用模型的列表(https://ollama.com/library)。
要从Ollama模型库中获取模型,请使用
ollama pull
。例如,要拉取llama3模型:
ollama pull llama3
这将下载模型的默认标记版本。 通常,默认指向最新、最小参数大小的模型。
在Mac上,模型将被下载到~/.ollama/models
在Linux(或WSL)上,模型将存储在/usr/share/ollama/.ollama/models
您可以指定感兴趣的模型的确切版本,例如
ollama pull vicuna:13b-v1.5-16k-q4_0
。查看拉取的模型:
ollama list
开始服务:
ollama serve
查看Ollama文档以获取更多命令。
ollama help
- Install the langchain-ollama integration package:
pip install -U langchain_ollama
- Key init args — completion params:
- model: str
使用的Ollama模型名称。
- base_url: Optional[str]
模型托管的基础URL。
请参阅参数部分中支持的初始化参数及其描述的完整列表。
- Instantiate:
from langchain_ollama import OllamaEmbeddings embed = OllamaEmbeddings( model="llama3" )
- Embed single text:
input_text = "The meaning of life is 42" vector = embed.embed_query(input_text) print(vector[:3])
[-0.024603435769677162, -0.007543657906353474, 0.0039630369283258915]
- Embed multiple texts:
input_texts = ["Document 1...", "Document 2..."] vectors = embed.embed_documents(input_texts) print(len(vectors)) # The first 3 coordinates for the first vector print(vectors[0][:3])
2 [-0.024603435769677162, -0.007543657906353474, 0.0039630369283258915]
- Async:
vector = await embed.aembed_query(input_text) print(vector[:3]) # multiple: # await embed.aembed_documents(input_texts)
[-0.009100092574954033, 0.005071679595857859, -0.0029193938244134188]
通过解析和验证来自关键字参数的输入数据来创建一个新模型。
如果输入数据无法验证以形成有效模型,则引发 [ValidationError][pydantic_core.ValidationError]。
self 被显式地设为仅位置参数,以允许 self 作为字段名称。
- param base_url: str | None = None#
模型托管的基础URL。
- param model: str [Required]#
使用的模型名称。
- async aembed_documents(texts: List[str]) List[List[float]] [source]#
嵌入搜索文档。
- Parameters:
文本 (列表[字符串])
- Return type:
列表[列表[float]]
使用 OllamaEmbeddings 的示例