【langchain学习】使用PandasDataFrameOutputParser对DataFrame进行数据处理

介绍如何使用Langchain结合ChatGLM对Pandas DataFrame进行数据处理。以下是具体步骤和代码示例:

  1. 导入所需库

    python 复制代码
    from config.chatglm_config import llm_glm4
    import pprint
    from typing import Any, Dict
    import pandas as pd
    from langchain.output_parsers import PandasDataFrameOutputParser
    from langchain.prompts import PromptTemplate
  2. 格式化解析器输出函数

    python 复制代码
    def format_parser_output(parser_output: Dict[str, Any]) -> None:
        for key in parser_output.keys():
            parser_output[key] = parser_output[key].to_dict()
        return pprint.PrettyPrinter(width=4, compact=True).pprint(parser_output)
  3. 定义Pandas DataFrame

    python 复制代码
    df = pd.DataFrame(
        {
            "num_legs": [2, 4, 8, 0],
            "num_wings": [2, 0, 0, 0],
            "num_specimen_seen": [10, 2, 1, 8],
        }
    )
  4. 设置解析器和提示模板

    python 复制代码
    parser = PandasDataFrameOutputParser(dataframe=df)
    df_query = "检索 num_wings 列。"
    prompt = PromptTemplate(
        template="回答用户查询。\n{format_instructions}\n{query}\n",
        input_variables=["query"],
        partial_variables={"format_instructions": parser.get_format_instructions()},
    )
  5. 执行链操作

    python 复制代码
    chain = prompt | llm_glm4 | parser
    parser_output = chain.invoke({"query": df_query})
    format_parser_output(parser_output)
  6. 得到结果

bash 复制代码
{'num_wings': {0: 2,
               1: 0,
               2: 0,
               3: 0}}

Process finished with exit code 0
相关推荐
shut up19 小时前
LangChain - 如何使用阿里云百炼平台的Qwen-plus模型构建一个桌面文件查询AI助手 - 超详细
人工智能·python·langchain·智能体
liliangcsdn19 小时前
如何基于ElasticsearchRetriever构建RAG系统
大数据·elasticsearch·langchain
东方佑20 小时前
基于FastAPI与LangChain的Excel智能数据分析API开发实践
langchain·excel·fastapi
大模型教程2 天前
搞懂 LangChain RAG:检索、召回原理及 docid 的关键意义
程序员·langchain·llm
AI大模型2 天前
别再死磕 Chain 了!想做复杂的 Agent,你必须得上 LangGraph
程序员·langchain·llm
玲小珑2 天前
LangChain.js 完全开发手册(十四)生产环境部署与 DevOps 实践
前端·langchain·ai编程
weixin_438077493 天前
langchain官网翻译:Build a Question/Answering system over SQL data
数据库·sql·langchain·agent·langgraph
老顾聊技术3 天前
【AI课程上线了哦,打造类FastGPT产品】
langchain·rag
行者阿毅3 天前
langchain4j+SpringBoot+DashScope(灵积)整合
spring boot·langchain·ai编程
深度学习机器3 天前
AI Agent上下文工程设计指南|附实用工具推荐
langchain·llm·agent