langchain连接OLLAMA
时间: 2025-05-16 13:07:51 浏览: 20
### 如何使用 LangChain 连接到 OLLAMA 服务或模型
要通过 LangChain 使用 OLLAMA 提供的服务或模型,需确保已安装必要的依赖项并配置好环境变量。以下是实现这一目标的具体方法:
#### 安装必要依赖
首先,需要安装 `langchain` 和 `requests` 库来支持与 Ollama 的交互操作。
```bash
pip install langchain requests
```
#### 配置 Ollama 模型服务
OLLAMA 默认仅允许本地主机访问其 API。如果需要远程访问,则应修改绑定地址为 `0.0.0.0`[^2]。可以通过启动命令调整此参数:
```bash
ollama serve --host 0.0.0.0
```
#### 初始化 LangChain 中的 Ollama 对象
在 Python 脚本中初始化 Ollama 类实例时,需指定基础 URL 地址和服务端口号。以下是一个完整的代码示例用于加载 llama2 模型并与之对话[^3]:
```python
from langchain.llms import Ollama
# 创建 Ollama 实例
ollama = Ollama(
base_url='http://localhost:11434', # 替换为实际部署位置
model="llama2"
)
response = ollama("Neleus 是谁?他有哪些家庭成员?")
print(response)
```
上述脚本展示了如何利用 LangChain 来查询《奥德赛》中的角色 Neleus 及其家族关系的信息。
对于多模态任务(如图像处理),可按照如下方式进行设置[^4]:
假设有一张存储于 D:\test_llava.png 的图片文件欲交由 LLAVA 处理:
```python
import os
from langchain.prompts import PromptTemplate
from langchain.chains import LLMChain
image_path = r"D:\test_llava.png"
prompt_template = """<image>{image}</image> {question}"""
PROMPT = PromptTemplate(template=prompt_template, input_variables=["image", "question"])
def load_image(image_file):
with open(image_file,"rb") as f:
img_data=f.read()
return "<base64>" + str(base64.b64encode(img_data).decode('utf-8'))+"</base64>"
encoded_img=load_image(image_path)
query=PROMPT.format(question="这张图里有什么动物?", image=encoded_img )
ollama_visual = Ollama(model="llava")
answer = ollama_visual(query+"请用中文作答")
print(answer)
```
以上代码片段说明了怎样借助 LangChain 将图片编码成 Base64 字符串形式传入到视觉多模态语言模型当中去,并请求返回结果采用中文表述的方式完成问答过程。
阅读全文
相关推荐
















