Skip to main content
本指南将帮助您开始使用 Ollama 向量嵌入模型 using LangChain. For detailed documentation on OllamaEmbeddings 功能和配置选项的详细文档,请参阅 API reference.

概述

集成详情

设置

First, follow these instructions to set up and run a local Ollama instance:
  • Download and install Ollama onto the available supported platforms (including Windows Subsystem for Linux aka WSL, macOS, and Linux)
    • macOS users can install via Homebrew with brew install ollama and start with brew services start ollama
  • Fetch available LLM model via ollama pull <name-of-model>
    • View a list of available models 通过 model library
    • e.g., ollama pull llama3
  • This will download the default tagged version of the model. Typically, the default points to the latest, smallest sized-parameter model.
On Mac, the models will be download to ~/.ollama/models On Linux (or WSL), the models will be stored at /usr/share/ollama/.ollama/models
  • Specify the exact version of the model of interest as such ollama pull vicuna:13b-v1.5-16k-q4_0 (View the various tags for the Vicuna model in this instance)
  • To view all pulled models, use ollama list
  • To chat directly with a model from the command line, use ollama run <name-of-model>
  • View the Ollama documentation for more commands. You can run ollama help in the terminal to see available commands.
要启用模型调用的自动追踪,请设置您的 LangSmith API key:

安装

LangChain 的 Ollama 集成位于 langchain-ollama 包中:

实例化

Now we can instantiate our model object and generate embeddings:
If your model supports configurable output dimensions (e.g., qwen3-embedding), you can specify them 通过 dimensions parameter:

索引与检索

向量嵌入模型常用于检索增强生成 (RAG) 流程中, 既用于索引数据,也用于后续检索数据。 更详细的说明请参阅我们的 RAG tutorials. 下面展示如何使用 embeddings 对象来索引和检索数据。 在此示例中,我们将在 InMemoryVectorStore.

直接使用

Under the hood, the vectorstore and retriever implementations are calling embeddings.embed_documents(...) and embeddings.embed_query(...) to create embeddings for the text(s) used in from_texts and retrieval invoke operations, respectively. You can directly call these methods to get embeddings for your own use cases.

Embed single texts

You can embed single texts or documents with embed_query:

Embed multiple texts

You can embed multiple texts with embed_documents:

API 参考

For detailed documentation on OllamaEmbeddings 功能和配置选项的详细文档,请参阅 API reference.