ollama部署Phi-4-mini-reasoning实战教程:结合LangChain构建推理增强Agent

ollama部署Phi-4-mini-reasoning实战教程:结合LangChain构建推理增强Agent ollama部署Phi-4-mini-reasoning实战教程结合LangChain构建推理增强Agent想快速体验一个专为数学和逻辑推理设计的轻量级大模型吗今天我们就来手把手教你如何通过ollama部署Phi-4-mini-reasoning并把它和强大的LangChain框架结合起来打造一个能帮你解决复杂问题的推理增强型智能体。Phi-4-mini-reasoning是一个特别擅长“动脑筋”的模型。它不像那些动辄几百亿参数的大模型那样臃肿而是专注于从高质量的数据中学习如何一步步推理。无论是解数学题、分析逻辑问题还是处理需要多步思考的任务它都能展现出不错的能力。更重要的是通过ollama我们可以像安装一个普通软件一样轻松地把它部署到自己的电脑上。而LangChain你可以把它想象成一个“乐高积木”工具箱。它提供了各种标准化的接口和组件让我们能方便地把不同的AI模型、工具和数据源连接起来构建出功能更强大的应用。把Phi-4-mini-reasoning这个“推理引擎”装进LangChain这个“智能车架”里我们就能造出一辆能自己规划路线、解决复杂任务的“AI小车”。本教程的目标很明确让你在10分钟内从零开始成功运行一个属于你自己的、具备增强推理能力的AI助手。你不需要是AI专家只要跟着步骤操作就行。1. 环境准备与快速部署万事开头难在这里一点也不难。我们只需要完成两个简单的步骤安装ollama然后拉取模型。1.1 一键安装ollamaollama的安装过程简单到令人发指。它支持Windows、macOS和Linux主流系统。对于macOS和Linux用户打开你的终端Terminal。对于Windows用户打开PowerShell或命令提示符CMD。然后只需要复制粘贴下面这一行命令回车执行curl -fsSL https://ollama.ai/install.sh | sh这条命令会自动下载安装脚本并执行。安装完成后ollama服务会在后台自动启动。你可以通过运行ollama --version来验证是否安装成功。1.2 拉取Phi-4-mini-reasoning模型安装好ollama后获取模型就像下载一个软件包。在终端中执行以下命令ollama pull phi-4-mini-reasoning:latest这个命令会从ollama的模型库中下载最新版的Phi-4-mini-reasoning。根据你的网速可能需要等待几分钟。下载完成后模型就静静地躺在你的本地电脑里了随时待命。到这里核心的部署工作已经完成了你已经拥有了一个本地的、功能强大的推理模型。接下来我们试试它的基本能力。1.3 快速尝鲜与模型直接对话模型拉取成功后我们可以直接在终端里和它聊天测试一下它的推理能力。运行ollama run phi-4-mini-reasoning这会进入一个交互式对话界面。你可以问它一些问题比如 一个篮子里有5个苹果我拿走了2个又放进去3个梨。现在篮子里有多少个水果看看它是如何一步步推理出答案的。体验完毕后按CtrlD退出交互模式。2. 基础概念快速入门在进入更强大的应用构建之前我们先花两分钟理解一下手里的“工具”到底是什么。Phi-4-mini-reasoning是什么你可以把它看作一个经过特殊训练的“数学学霸”或“逻辑高手”。它的训练数据充满了各种需要多步推理才能解决的问题比如数学应用题、逻辑谜题、代码调试等。因此它特别擅长把一个大问题分解成几个小步骤然后一步一步地推导出答案。它的“轻量级”意味着它对电脑配置要求不高在普通笔记本电脑上也能流畅运行。LangChain是什么LangChain是一个用于开发大语言模型应用的框架。想象一下如果Phi-4-mini-reasoning是一个聪明的“大脑”那么LangChain就是为这个大脑配备的“四肢”和“工具箱”。它能让大脑记住对话拥有记忆能力知道之前聊过什么。使用工具可以调用计算器、搜索引擎、数据库等外部工具来获取信息。规划任务面对复杂问题时能自己制定计划先做什么后做什么。处理文档可以阅读PDF、Word等文件并从中提取信息来回答问题。把它们结合起来会怎样结合之后我们就得到了一个“推理增强型智能体Reasoning-Augmented Agent”。它不再只是一个被动回答问题的聊天机器人而是一个能主动思考、调用资源、分步解决复杂任务的智能助手。比如你可以让它“帮我分析一下上个月的销售数据报告总结增长最快的三个产品并给出下个月的备货建议”。它会自己规划先读取报告然后计算增长率接着排序找出前三名最后结合历史数据给出建议。3. 构建你的第一个推理增强智能体现在让我们动手用Python和LangChain把Phi-4-mini-reasoning“武装”起来。3.1 安装必要的Python库首先确保你的电脑安装了Python建议3.8以上版本。然后打开终端创建一个新的项目文件夹并安装我们需要的库pip install langchain langchain-communitylangchain是核心框架langchain-community包含了社区维护的各种模型集成其中就有我们需要的ollama接口。3.2 编写核心代码连接模型与构建链创建一个新的Python文件比如叫做reasoning_agent.py然后写入以下代码from langchain_community.llms import Ollama from langchain_core.prompts import ChatPromptTemplate from langchain_core.output_parsers import StrOutputParser # 1. 连接到本地运行的Phi-4-mini-reasoning模型 llm Ollama(modelphi-4-mini-reasoning) # 2. 定义一个提示词模板引导模型进行逐步推理 prompt ChatPromptTemplate.from_messages([ (system, 你是一个擅长分步推理的助手。请仔细思考问题将解决过程分解为清晰的步骤并给出最终答案。), (user, {input}) ]) # 3. 构建一个简单的“链”输入 - 提示词 - 模型 - 输出 chain prompt | llm | StrOutputParser() # 4. 提出问题并获取推理结果 question 小明从家到学校骑自行车需要20分钟步行需要50分钟。某天他骑车出发10分钟后自行车坏了他只好步行到学校。请问他一共花了多少分钟到学校 response chain.invoke({input: question}) print(问题, question) print(\n--- 模型的推理过程 ---\n) print(response)代码解释第5行Ollama(modelphi-4-mini-reasoning)这行代码就像一根数据线把我们的Python程序连接到本地ollama服务中的Phi-4-mini-reasoning模型。第8-11行我们定义了一个“系统提示”告诉模型“请用分步推理的方式回答问题”。这能更好地激发它的特长。第14行prompt | llm | StrOutputParser()是LangChain的核心概念——“链”。它把处理流程管道化用户输入先被套进提示词模板然后送给模型最后模型的输出被解析成字符串。第17-23行我们提出了一个经典的速度-时间-路程问题并调用链来获取答案。运行这个脚本 (python reasoning_agent.py)你会看到Phi-4-mini-reasoning是如何一步步分析“骑车段”和“步行段”的路程与时间最终计算出总时长的。这比直接问一个通用聊天模型得到的答案更可靠、更易理解。4. 进阶实战为智能体添加“工具”一个真正的智能体应该能使用外部工具。让我们给它装上一个“计算器”让它解决更复杂的数学问题。4.1 使用LangChain的数学工具修改reasoning_agent.py升级我们的智能体from langchain_community.llms import Ollama from langchain.agents import AgentExecutor, create_react_agent from langchain import hub from langchain_community.tools import Tool from langchain_community.utilities import ArxivAPIWrapper, WikipediaAPIWrapper from langchain_community.agent_toolkits import load_tools import math # 1. 定义自定义工具一个高级计算器 def advanced_calculator(expression: str) - str: 计算一个数学表达式的值。支持 , -, *, /, **, sqrt, sin, cos等。 try: # 安全地评估数学表达式 result eval(expression, {__builtins__: None}, math.__dict__) return f计算器结果{result} except Exception as e: return f计算错误{e} # 2. 将函数包装成LangChain工具 calculator_tool Tool( nameCalculator, funcadvanced_calculator, description用于计算数学表达式。输入应该是一个像 3 * 5 sqrt(16) 这样的字符串。 ) # 3. 加载更多预置工具需要安装相关包pip install wikipedia arxiv # tools load_tools([wikipedia, arxiv], llmllm) # 暂时注释需要API tools [calculator_tool] # 目前我们只用计算器工具 # 4. 连接到Phi-4-mini-reasoning llm Ollama(modelphi-4-mini-reasoning, temperature0) # 5. 从LangChain Hub获取一个适合推理的智能体提示词 prompt hub.pull(hwchase17/react) # 6. 创建ReAct智能体思考-行动循环 agent create_react_agent(llm, tools, prompt) # 7. 创建智能体执行器 agent_executor AgentExecutor(agentagent, toolstools, verboseTrue, handle_parsing_errorsTrue) # 8. 向智能体提问一个需要计算的问题 complex_question 一个圆柱形水杯底面半径是4厘米高是15厘米。 1. 计算这个水杯的容积是多少立方厘米使用公式 V π * r² * h 2. 如果1升等于1000立方厘米这个水杯能装多少升水结果保留两位小数 请使用计算器来完成精确计算。 print(问题, complex_question) print(\n *50 \n) # 运行智能体 result agent_executor.invoke({input: complex_question}) print(\n *50) print(\n最终答案\n, result[output])这段代码做了什么定义工具我们创建了一个advanced_calculator函数它能计算复杂的数学表达式。然后把它包装成LangChain能识别的Tool对象。创建智能体我们使用了create_react_agent。ReAct是一种让模型“思考-行动”的框架。模型会先思考“我需要计算圆柱体积”然后行动调用计算器工具根据工具返回的结果再继续思考或给出最终答案。执行任务我们问了一个两步数学问题。智能体会自己规划先调用计算器算体积再调用计算器进行单位换算。运行这段代码记得先pip install langchainhub。你会看到控制台输出详细的verbose日志清晰地展示出智能体“思考 - 调用计算器 - 得到结果 - 继续思考 - 输出答案”的完整过程。这就是推理增强智能体的魅力所在5. 实用技巧与常见问题5.1 提升推理效果的提示词技巧Phi-4-mini-reasoning对提示词比较敏感。好的提示词能极大提升它的表现明确要求分步在问题前加上“请一步步思考”、“让我们逐步推理”等指令。提供范例对于复杂任务可以先给一个例子Few-Shot Learning。指定输出格式例如“请先列出已知条件再给出推导步骤最后是答案”。# 更好的提示词示例 better_prompt 你是一个数学推理专家。请按以下格式回答 【已知条件】 列出题目中的所有信息。 【推理步骤】 一步一步地展示你的推理和计算过程。 【最终答案】 给出简洁的最终答案。 问题{question} 5.2 可能遇到的问题与解决问题运行ollama命令提示“未找到命令”解决可能需要重启终端或者将ollama的安装路径添加到系统的PATH环境变量中。问题模型回答速度慢解决Phi-4-mini-reasoning是一个70亿参数左右的模型。确保你的电脑至少有8GB可用内存。首次运行会稍慢后续对话会利用缓存变快。问题Python代码报错无法导入langchain_community解决请确保使用命令pip install langchain-community进行安装而不是pip install langchain_community下划线 vs 连字符。如果还不行尝试升级pippip install --upgrade pip。问题智能体陷入循环或调用错误工具解决这通常是因为提示词或工具描述不够清晰。尝试简化问题或者为工具编写更精确的description明确告诉模型什么情况下该用它。6. 总结通过这篇教程我们完成了一次从模型部署到应用构建的完整旅程。你现在已经掌握了一键部署使用ollama像安装软件一样轻松获取并运行Phi-4-mini-reasoning模型。基础对话直接在终端与这个专精推理的模型互动测试它的逻辑能力。核心集成通过LangChain框架用几行Python代码就将本地模型接入了一个可编程的AI应用生态。智能体构建创建了一个能使用计算器工具的ReAct智能体亲眼见证了它“思考-行动”的自动化问题解决过程。Phi-4-mini-reasoning与LangChain的结合为我们打开了一扇门。你可以在此基础上继续扩展添加更多工具比如连接网络搜索SerpAPI、查询数据库、读取本地文件。赋予它记忆让智能体记住整个对话历史进行多轮复杂协作。处理长文档让它阅读和分析PDF、Word文档并基于文档内容回答问题。这个轻量级但强大的推理模型加上LangChain这个灵活的框架足以让你构建出各种各样能解决实际问题的AI小助手。现在就基于这个起点开始你的智能体创作吧获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。