【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
相关推荐
先吃饱再说3 小时前
组合多个远程 MCP Server:让 Agent 同时调用高德地图、Chrome DevTools 和文件系统
langchain·llm·mcp
先吃饱再说4 小时前
跨进程调用工具:MCP + LangChain 让 Agent 不再“锁死”在单一语言
langchain·llm·mcp
BraveWang6 小时前
【LangChain 1.x】04、模型调用方式|invoke、stream、batch、异步调用
langchain
喵叔哟7 小时前
第二周概述
人工智能·langchain
meilindehuzi_a7 小时前
远程 MCP 项目实战:LangChain 连接高德地图、Chrome DevTools 与文件系统
人工智能·langchain·chrome devtools
uncle_ll8 小时前
LangChain 实战指南:回调系统、自定义组件与有状态对话全落地
langchain·llm·embedding·agent·大模型开发·rag
码云骑士12 小时前
61-LangChain-vs-LlamaIndex-选型对比-功能矩阵-混用实践
python·线性代数·矩阵·langchain
2601_9636716813 小时前
零基础实战:用 LangChain 搭建本地 RAG 知识库系统
langchain
可涵不会debug13 小时前
从向量嵌入到复杂 Agent:LLM、LangChain、LangGraph 完整科普
langchain·嵌入模型·langgraph
怕浪猫13 小时前
第13章 评估与评测:如何衡量Agent的好坏
langchain·openai·ai编程