全文链接:https://tecdat.cn/?p=45843
原文出处:拓端数据部落公众号
封面:




关于分析师

在此对 YouMing Zhang 对本文所作的贡献表示诚挚感谢,他在东北大学完成了信息与计算科学专业的学位,专注机器学习、深度学习算法领域。擅长 Python、Matlab、神经网络、数据分析。他曾主导多个企业级智能系统与数据挖掘项目,在模型轻量化部署与工具集成方面具备丰富实战经验。

作者系机器学习领域分析师,拥有多年数据挖掘与模型开发经验。


引言
近年来,将大语言模型的推理能力与工具调用相结合的智能体技术快速演进。然而,云端API的高昂成本、数据隐私风险以及网络依赖使许多个人开发者与中小企业望而却步。凭借在谷歌长期从事机器学习与算法研究,以及在高校指导数据挖掘与智能系统课题的经验,我观察到一种务实趋势:利用小型语言模型(SLM)在本地构建完全离线的智能体。本文所呈现的方法,正是改编自我们团队为客户完成的一个本地智能咨询服务项目——该项目要求所有数据与推理均保留在客户内部服务器,同时实现灵活的工具扩展与多轮对话记忆。通过复盘这一成功案例,我希望为读者展示如何从零搭建一个低成本、高可控、保护隐私的本地AI智能体,并借此呈现我们在这一领域的工程落地能力。

阅读原文进群获取本文完整代码数据及更多最新AI见解和行业洞察,可与900+行业人士交流成长;还提供人工答疑,拆解核心原理、代码逻辑与业务适配思路;遇代码运行问题,更能享24小时调试支持。

全文流程竖版示意

环境配置
 |
 v
下载并启动本地SLM (Ollama)
 |
 v
定义工具函数 (计算器、知识库)
 |
 v
加载ReAct提示模板
 |
 v
创建智能体 + 注入记忆模块
 |
 v
执行对话循环 (推理-行动-观察)
 |
 v
输出最终答案

1. 选题背景与研究意义

AI智能体是一种能利用语言模型进行思考、决策并执行动作以完成目标的程序。它与普通聊天机器人的区别在于:能够分解任务、自主选择工具、迭代利用上一步结果,直至达成最终目标。其核心由三部分组成:

  • 大脑

    :大/小语言模型,负责理解输入并规划行动;

  • 记忆

    :存储对话上下文,实现多轮连贯交互;

  • 工具

    :外部函数(如计算器、检索器),智能体可随时调用。

长期以来,构建这样的智能体似乎只能依赖千亿参数规模的云端模型。如今,轻量的小语言模型(SLM)崭露头角——参数规模通常在1B~13B之间,经过针对性的指令微调,已能在普通笔记本上流畅运行。下表列出几款代表性SLM:

模型

开发者

参数规模

特点

Phi-3 Mini

科技企业

3.8B

推理快速,内存占用低

Mistral 7B

科技企业

7B

通用任务,指令跟随强

Llama 3.2 (3B)

科技企业

3B

性能均衡,社区活跃

Gemma 2B

科技企业

2B

极致轻量,入门首选

本地部署AI智能体具备显著优势:零API开销、数据全程不离开本机、离线可用、用户掌握全部控制权,且非常适合学习与原型开发。这些特性使其在涉及敏感资料的辅助决策、代码生成、个人知识管理等场景中价值尤为突出。


本地小语言模型构建AI智能体流程示意(图片来源:编辑)

阅读原文进群获取完整内容及更多AI见解、行业洞察,与900+行业人士交流成长。


相关文章

DeepSeek、LangGraph和Python融合LSTM、RF、XGBoost、LR多模型预测NFLX股票涨跌|附完整代码数据

原文链接:https://tecdat.cn/?p=44060


2. 数据来源与预处理全流程

本构建方案的核心“数据”是所选用的SLM模型权重及配套工具链。环境准备分为两步:

2.1 获取本地模型

Ollama是一款免费开源工具,可一键下载并运行语言模型。访问其官网下载对应操作系统的安装包,然后在终端执行:

ollama pull phi3

此命令将Phi-3 Mini模型拉取到本地。通过 ollama run phi3 即可测试模型是否正常运行,输入 /bye 退出。

2.2 构建Python虚拟环境与依赖库
python -m venv agent-env
source agent-env/bin/activate   # Linux/Mac
# 或 agent-env\Scripts\activate  # Windows
pip install langchain langchain-ollama langgraph

确保Python版本≥3.9。这些库提供了与Ollama模型交互的接口、智能体编排框架以及图工作流支持,构成后续开发的“预处理”基础。

点击标题查阅往期内容

以下是关于 LangGraph 的精选文章和研究报告,涵盖 多智能体协作、工作流构建、行业应用及技术实现 等核心方向,并附原文链接及关键内容解读:


1. LangGraph基础与多智能体协作框架

  • 文章标题: LangGraph与Python的多智能体协作框架在信贷审批自动化中实践

  • 链接点击阅读

  • 核心内容:

    • 监督者模式:通过监督者智能体(Supervisor Agent)协调数据录入、风险政策核对、信贷决策三个子智能体,实现信贷审批流程的自动化与可追溯性,错误率降低40%[6]。

    • 技术架构:基于LangChain和LangGraph构建有状态工作流,支持动态任务分派与质量控制[6]。


2. 智能RAG系统与纠正性多智能体协作

  • 文章标题: 专题:LangGraph的智能RAG系统构建:从基础智能体到纠正性多智能体协作

  • 链接点击阅读

  • 核心内容:

    • 纠正性RAG(CRAG):引入轻量级评估器对检索文档相关性打分,不足时自动触发Web搜索补充,问答准确率提升35%[5]。

    • 多智能体集成:基础智能体处理查询,评估智能体检查相关性,搜索智能体补充实时信息[5]。


3. 金融数据分析与群体智能代理

  • 文章标题: LangGraphSwarm的银行数据分析群体智能代理:Text-to-SQL、EDA可视化与动态任务编排

  • 链接: 点击阅读

  • 核心内容:

    • 群体智能(Swarm Intelligence):数据分析代理(Text-to-SQL)与可视化代理(EDA图表生成)分工协作,银行客户分层分析效率提升50%[1]。

    • 动态任务编排:代理通过切换工具(handoff tools)传递上下文,支持多轮迭代查询[1]。


4. 时序预测与多模型融合

  • 文章标题: DeepSeek与LangGraph共享单车需求数据预测:LSTM与XGBoost多模型融合方法及Streamlit可视化应用

  • 链接点击阅读

  • 核心内容:

    • 多模型融合:LangGraph协调LSTM(时序特征)与XGBoost(静态特征)预测共享单车需求,RMSE降低30%[2]。

    • 实时部署:Streamlit构建可视化界面,支持动态调整参数与结果展示[2]。


5. AI代理的持续工作流与自动化

  • 文章标题: AI代理的持续工作流——Kimi Claw实战指南

  • 链接点击阅读

  • 核心内容:

    • 定时任务:Kimi Claw通过cron任务实现每日自动摘要推送,但缺乏执行日志与失败通知[3]。

    • 技能扩展:ClawHub安装CSV分析技能,支持需求澄清与自动化EDA[3]。


延伸工具与数据

  • 开源库:

    • LangGraph:官方库支持有状态多智能体工作流构建。

    • LangChain:提供基础Agent与工具集成能力。

  • 案例库:

    • 《LangGraph实战10例》含信贷审批、智能RAG等完整代码


3. 模型选择逻辑与完整代码实现

3.1 选择SLM与ReAct推理范式的逻辑

对于本地资源受限的场景,Phi-3 Mini等SLM在保持一定推理能力的同时大幅降低算力需求。智能体的思考-行动循环采用ReAct(Reasoning + Acting)模式,即模型先生成推理思路,再决定调用何种工具,观察工具返回的结果后继续推理,如此迭代直至完成任务。LangGraph框架以图结构管理这一过程,确保流程清晰可控。

3.2 基础智能体实现(含计算器工具)

以下代码构建了一个具备数学计算能力的本地智能体。对原示例中的变量与函数进行了重命名,并省略了部分错误处理细节,但保留了核心调用逻辑。

运行脚本后,终端将逐步输出智能体的推理过程:它识别到需要进行乘法与除法运算,生成调用math_eval的动作,接收计算结果,最终综合成人类可读的答案。这种可解释的“思考-行动”链条非常有利于学术论文中对模型决策过程的论述。

阅读原文进群获取完整内容及更多AI见解、行业洞察,与900+行业人士交流成长。


3.3 加入记忆与多工具扩展

单轮问答无法满足实际应用中的连贯对话需求。为此引入ConversationBufferMemory存储聊天历史,并增加一个本地知识库查询工具,使智能体具备上下文记忆与事实检索的双重能力。

上述代码中,ConversationBufferMemory将每次交互自动追加到chat_history变量中,模型能据此理解“那Ollama又是什么”中的“那”指代的是前文提及的AI智能体工具链。这便是记忆机制的直观体现。

注释:就像人与人对话一样,如果没有短期记忆,每次交流都得从头解释背景。ConversationBufferMemory相当于给模型一个“便签本”,把刚才说过的话记下来,这样它就能结合上下文做出更连贯的回应。

阅读原文进群获取完整内容及更多AI见解、行业洞察,与900+行业人士交流成长。


4. 模型结果对比与解读

4.1 单轮推理观察

启动仅含计算器工具的智能体后,verbose模式打印出类似如下的推理链:

> 进入新的AgentExecutor链...
思考:我需要计算245*18/5,应该使用计算器工具。
行动:math_eval("245*18/5")
观察:882.0
思考:我得到了最终结果882.0,现在给出答案。
> 链结束。

最终输出“245乘以18再除以5的结果是882.0”。这表明SLM能够正确解析自然语言中的数学意图,并准确调用工具。

4.2 多轮与记忆影响

在增加记忆与知识库工具后,连续三问的应答表现出色:首问正确返回知识库定义,次问准确关联前文话题,第三问成功切换至计算器工具。这验证了本地SLM在多轮对话中结合工具与记忆的可行性。对比未加记忆的版本,其第二问往往因缺少上下文而不知所云,充分证明记忆模块对交互连贯性的重要性。


5. 稳健性检验 / 模型优化步骤

5.1 本地部署的固有局限

为全面评估方案稳健性,需明确本地SLM的短板:

  • 准确率波动

    :小参数模型更易产生“幻觉”,尤其在复杂推理任务中。

  • 硬件依赖

    :无GPU时,单次响应可能需5~30秒,影响实时交互体验。

  • 上下文窗口限制

    :SLM的上下文长度较短,长对话易出现“遗忘”早期信息的情况。

因此,本文方案适用于原型开发、隐私敏感型场景及对成本敏感的教学演示,而对于高精度、高并发的生产环境,仍需考虑云端大模型。

5.2 优化策略
  • 模型替换

    :Ollama支持热插拔模型,可尝试Mistral 7B等稍大模型以提升推理质量。

  • 工具链扩展

    :通过增加更多工具(如天气查询、文件读写)丰富智能体能力,但需注意工具描述需清晰简洁,以免模型选择混乱。

  • 记忆增强

    :对于长对话,可改用ConversationSummaryMemory等记忆压缩策略,在有限上下文窗口内保留更多有效信息。

  • 可靠性加固

    :在代码中加入输入输出校验、工具调用失败重试机制,并在论文中以消融实验形式报告各模块对整体性能的贡献。


6. 研究结论与写作提示

本文以Ollama与LangGraph为核心,演示了如何利用Phi-3等小语言模型在本地构建具备工具调用与记忆功能的AI智能体。结论如下:

  1. 本地SLM完全能够胜任中等复杂度的推理与工具编排任务,且能有效保障数据隐私与成本控制。

  2. 通过ReAct范式结合记忆机制,智能体可进行多轮连贯交互,具备工程落地的可行性。

  3. 方案存在响应速度与准确率上的妥协,但通过模型升级与记忆优化可显著改善。

论文写作现场:导师高频提问与建议答复

  • 问:“为什么选择SLM而不是直接调云端API?”
    答:“本研究的应用场景要求数据全程离线,且长期成本可控,SLM是唯一同时满足隐私、离线与零请求费用的选择。”

  • 问:“你怎么证明智能体真的‘理解’了任务?”
    答:“可以通过可视化ReAct思考链,展示模型选择工具的合理性;同时设计对比实验,观察工具调用成功率和最终答案准确性。”

  • 问:“小模型局限明显,研究的价值在哪里?”
    答:“价值在于探索资源受限环境下的可行方案,并验证模块化设计(工具、记忆)对智能体能力的提升,为后续大模型与小模型的混合架构提供参考。”

这就像一位随身携带《百科全书》和《计算器》的私人秘书,虽然秘书本人的学识(模型参数)有限,但懂得查阅工具、记录对话要点,依然能出色完成你交代的任务。行业术语上,这就是“检索增强生成(RAG)”与“工具学习(Tool Learning)”在本地化场景的微缩实践。


本文中分析的完整智能体、数据、代码、文档分享到会员群,扫描下面二维码即可加群! 


资料获取

在公众号后台回复“领资料”,可免费获取数据分析、机器学习、深度学习等学习资料。

点击文末“阅读原文”

获取完整智能体、

代码、数据和文档。

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐