本地Llama2模型结合LangChain使用时遇ConnectionError,求用法验证
问题分析与解决方案
错误原因
- Ollama本地服务未启动:LangChain的
Ollama类依赖Ollama本地HTTP API(默认端口11434)运行模型,你的机器上Ollama服务未启动,导致连接被主动拒绝,触发WinError 10061。 - 模型调用方式错误:直接将本地模型文件路径传给
Ollama(model=...)是错误的,该参数需要填写Ollama已加载的模型名称,而非本地文件路径。
正确操作步骤
1. 启动Ollama本地服务
- 先安装Ollama客户端,安装完成后:
- Windows用户直接启动Ollama应用,后台会自动运行服务;
- 终端用户执行
ollama serve命令启动服务。
2. 导入本地Llama模型到Ollama
在终端执行以下命令导入模型:
ollama create llama2-chat-q8 -f Modelfile
需要提前创建Modelfile文件,内容指定本地模型路径:
FROM ./model/llama-2-7b-chat.ggmlv3.q8_0.bin
(路径需与你本地模型文件的实际位置完全匹配)
3. 修正LangChain代码
使用Ollama中已加载的模型名称初始化Ollama实例,代码修改如下:
from langchain.prompts import PromptTemplate from langchain.chains import LLMChain from langchain_community.llms.ollama import Ollama # 填写Ollama中已加载的模型名称,而非本地文件路径 llm = Ollama(model="llama2-chat-q8") prompt = PromptTemplate.from_template("Generate a blog post about {topic}.") chain1 = LLMChain(llm=llm, prompt=prompt) topic = "Future of graphic design for beginners" output = chain1.invoke({"topic": topic}) print(output)
内容的提问来源于stack exchange,提问作者Abhishek Kapoor
相关产品推荐
相关产品推荐

