微信扫码
添加专属顾问
我要投稿
经常跟数据打交道的“表哥”、“表妹”,经常看报表的各位老板,应该非常熟悉Excel和CSV文件,通常我们想要分析数据中的信息,会使用各种函数、工具来进行探索和评估,最终输出分析报告形成数据支撑。
1. 准备工作
Python 3.10+ 的开发环境
大模型的API Key,任一可调用API的大模型(OpenAI / Minimax / ...)
一些csv文件(本文中我们选取了两类csv文件,一类是FAQ型,一类是数据记录型)
langchain
langchain_experimental
2. 编码
我们所用到的方法是langchain中的create_csv_agent,它可以通过agent的方式实现与csv文件的对话。
agent = create_csv_agent(
OpenAI(temperature=0),
"data.csv",
verbose=True,
)
answer = agent.run(user_input)
这里几个参数介绍下
第一个参数是你调用的大模型,你可以指定大模型的temperature, 模型版本等参数
第二个参数是csv文件目录,可以是一个文件,也可以与多个csv文件交互(["a.csv", "b.csv"])
第三个参数verbose,用于在log中展示大模型在其中都做了哪些操作
还有未设置的第四个参数agent_type,可以设置为AgentType.ZERO_SHOT_REACT_DESCRIPTION 或 AgentType.OPENAI_FUNCTIONS,当然你也可以像我一样默认即可
执行的话也仅需一行代码,agent.run(user_input),其中user_input是你输入的问句。
3. 运行效果
在看运行效果之前,我们看一下两类csv文件
3.1 FAQ类
FAQ类文件主要包含常见的问答对数据,在企业售前、售后等客服等场景中经常会碰到,此处我们选择一个网站的业务助手。
针对以上文件,我们看下提问的效果
可以看到理解问题并给出了正确答案,其中的原理就是大模型agent对任务的拆解,以及对拆解后的子任务的思考(Thought)、行动(Action)以及输入(Input)得到最终答案(Final Answer)。
大模型agent的推理过程如下:
3.2 数据记录类
这类数据通常来自于生产系统、关系型数据库,记录日常行为操作等信息,此处我们选择某省水利测站对时段降水量的记录数据。
针对以上文件,看下提问的回答效果。
可以看到效果还不错,但是实际很多问题回答的并不好,原因在于我们用的是通用大模型,并且没有做任何的优化,但是基于这个思路,可以给到我们很多启发,尤其是大模型如何对用户的问题,进行思考理解、推理拆解,并调用Pandas DataFrame agent和Python agent的过程。
以下是针对每个问题,大模型agent的推理过程。
有兴趣的可以放大图片查看,或者联系作者进一步交流沟通,后续针对agent会专门写一篇文章。
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2025-06-13
【LangChain 团队重磅实测报告】多智能体架构揭秘:谁才是性能之王?
2025-06-13
大模型_百炼:MCP让我焦虑
2025-06-11
前端学AI之LangChain.js入门教程:实现智能对话机器人
2025-06-08
Langfuse:重新定义LLM应用开发与运维的可观测性
2025-06-08
Langgraph实战--自定义embeding
2025-06-07
为 AI Agent 铺路:深度解析下一代应用的核心基建 LangGraph
2025-06-05
智能体框架怎么选?LangChain、Dify、CrewAI、AutoGen五大框架横向对比
2025-06-04
吴恩达对谈LangChain创始人:企业构建Agen系统的核心认知!
2025-03-16
2025-03-20
2025-03-17
2025-05-08
2025-04-18
2025-03-22
2025-05-06
2025-03-23
2025-04-13
2025-05-28
2025-06-13
2025-05-21
2025-05-19
2025-05-08
2025-05-06
2025-04-22
2025-04-18
2025-03-22