LangChain与本地大模型实战[可运行源码]

LangChain与本地大模型实战[可运行源码]

# LangChain 可控对话演示 基于博客【从0到1大模型应用开发实战】02|用 LangChain 和本地大模型,完manus 教程成第一次“可控对话”的完整实现。 项目概述 本项目演示了如何使用 LangChain 在本地 Ollama 上“驯化”大模型,实现可控对话。包含三个递进示例: 1. 基础角色对话 – 使用 System/Human/AI 消息结构控制模型角色 2. 强制格式输出 – 使用 ReAct 格式约束模型输出 3. 最小知识库限定 – 将私有知识硬编码进 Prompt 实现最小 RAG 环境要求 – Python 3.8+ – Ollama (本地大模型运行环境) – 至少 4GB 可用内存 快速开始 1. 安装 Ollama 并拉取模型 “`bash # 安装 Ollama (如果尚未安装) curl -fsSL https://ollama.ai/install.sh | sh # 拉取 gemma3:1b 模型 ollama pull gemma3:1b # 验证模型是否可用 ollama list “` 2. 设置 Python 环境 “`bash # 创建虚拟环境 python -m venv venv # 激活虚拟环境 # Linux/Mac: source venv/bin/activate # Windows: # venvScriptsactivate # 安装依赖 pip install -r requirements.txt “` 3. 启动 Ollama 服务 “`bash # 启动 Ollama 服务(如果尚未运行) ollama serve “` 4. 运行示例 “`bash # 示例1:基础角色对话 python ex01_hello_llm.py # 示例2:强制 ReAct 格式输出 python ex02_react_format.py # 示例3:最小知识库限定回答 python ex03_minirag.py “` 示例说明 示例1:基础角色对话 (ex01_hello_llm.py) 演示如何使用 SystemMessage 设定模型角色,通过 HumanMessage 和 AIMessage 构建对话历史。 示例2:强制格式输出 (ex02_react_format.py) 演示如何强制模型按照 ReAct 格式(Thought: … Answer: …)输出,并解析结果。 示例3:最小知识库限定 (ex03_minirag.py) 演示如何将私有知识硬编码到 Prompt 中,限制模型只能基于给定知识回答。 项目结构 “` . ├── requirements.txt # Python 依赖 ├── README.md # 项目说明 ├── ex01_hello_llm.py # 示例1:基础角色对话 ├── ex02_react_format.py # 示例2:强制格式输出 ├── ex03_minirag.py # 示例3:最小知识库限定 └── index.html # 前端演示页面 “` 技术栈 – Python 3.8+ – LangChain-Ollama – LangChain 的 Ollama 集成 – Ollama – 本地大模型运行环境 – gemma3:1b – Google 的轻量级大模型 注意事项 1. 首次运行需要下载 gemma3:1b 模型(约 1.7GB) 2. 确保 Ollama 服务在后台运行 3. 如果遇到连接问题,检查 Ollama 服务状态:`ollama list` 4. 可以根据需要调整模型参数(temperature、max_tokens 等) 学习资源 – [Ollama 官方文档](https://ollama.ai/) – [LangChain 官方文档](https://python.langchain.com/) – [原博客文章](https://blog.csdn.net/huang9604/article/details/156561830) 许可证 MIT License

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/273212.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月12日 下午12:58
下一篇 2026年3月12日 下午12:58


相关推荐

关注全栈程序员社区公众号