AI创想

标题: 【LangChain系列】【基于Langchain的Pandas&csv Agent】 [打印本页]

作者: 占士邦丶杜蕾斯    时间: 昨天 07:12
标题: 【LangChain系列】【基于Langchain的Pandas&csv Agent】
作者:ㄣ知冷煖★
目录



前言

探索如何使用Langchain的Agent来高效查询表格数据的信息
【LangChain系列——操作SQL&CSV&连接数据库系列文章】:
一、使用LangChain连接MySQL实践&运行:如何使用langchain连接MySQL数据库&使用大模型优化&构建chain
二、基于Langchain的Pandas&csv Agent:调用Langchain自带的Pandas&CSV 智能体来对数据进行操作
三、与SQL交互时如何得到更好的结果&输出的查询结果验证方案:使用SQLLite简易数据库来实践,与SQL交互如何得到更好的结果&小技巧
一、LangChain

1-1、介绍

LangChain是一个框架,用于开发由大型语言模型(LLM)驱动的应用程序。
LangChain 简化了 LLM 应用程序生命周期的每个阶段:
(, 下载次数: 0)


1-2、特点

LangChain的特点如下:
二、Pandas&csv Agent

2-1、安装
  1. pip install --upgrade --quiet  langchain langchain-community langchain-experimental langchain-openai
  2. pip install langchain_experimental
复制代码
2-2、Pandas&csv Agent介绍

Pandas Agent:是一种用于处理大型数据集的工具,它可以通过从Pandas数据对象中加载数据并执行高级查询操作来处理数据。其关键功能包括对数据进行分组和汇总、基于复杂条件过滤数据,以及将多个数据对象连接在一起。该Agent非常适合需要处理大型数据集并需要高级查询功能的开发人员。
CSV Agent:是另一种用于查询结构化数据的工具。它从CSV文件中加载数据,并支持基本的查询操作,如选择和过滤列、排序数据,以及基于单个条件查询数据。对于需要简单但功能强大的查询工具来处理结构化数据的开发人员来说,这是一种高效的选择。
两者都允许开发人员创建更复杂、更高效的应用程序,以利用不同的数据源和处理步骤。
2-3、Pandas&csv Agent使用

2-3-1、相关库的导入:
  1. import os
  2. from langchain_community.chat_models.tongyi import ChatTongyi
  3. from langchain_experimental.agents import create_pandas_dataframe_agent,create_csv_agent
  4. import pandas as pd
复制代码
2-3-2、设置要调用的模型(我这里使用阿里的模型)
  1. # 环境变量设置,模型接口设置
  2. os.environ["LANGCHAIN_TRACING_V2"]=""
  3. os.environ["LANGCHAIN_API_KEY"]=""
  4. os.environ["DASHSCOPE_API_KEY"]=''
  5. model =ChatTongyi(
  6.     streaming=True,)
复制代码
2-3-3、数据读取&展示
  1. df = pd.read_excel('app_traffic_by_source 2024-07-0817_48_06(1).xlsx')print(df.head(5))
复制代码
输出如下:

(, 下载次数: 0)


2-3-4、Pandas Agent

Pandas Agent: 使用create_pandas_dataframe_agent来构建一个数据Agent,该Agent可用于在不同格式之间转换数据。
run: 调用run方法来执行agent。
  1. # 这里需要执行代码操作,加allow_dangerous_code=True因无法执行而防止报错。
  2. pd_agent =create_pandas_dataframe_agent(model, df, allow_dangerous_code=True, verbose=True)
  3. pd_agent.run("""
  4.             渠道的列名为:entrance,计算2024年7月份通过'APP'渠道的总访客数
  5.              """)
复制代码
输出:

(, 下载次数: 0)


2-3-4、CSV Agent
  1. csv_agent =create_csv_agent(model,"app_traffic_by_source 2024-07-08 17_48_06(1).csv", allow_dangerous_code=True, verbose=True)
  2. csv_agent.run("""
  3.             渠道的列名为:entrance,计算2024年7月份通过'APP'渠道的总访客数)
  4.              """)
复制代码
输出:

(, 下载次数: 0)


参考文章:
Langchain’s Pandas & CSV Agents: Revolutionizing Data Querying using OpenAI LLMs
LangChain




欢迎光临 AI创想 (https://llms-ai.com/) Powered by Discuz! X3.4