准备工作
首先需要初始化代理并读取数据文件:from langchain_openai import ChatOpenAI
from langgraph.checkpoint.memory import MemorySaver
from pybox import LocalPyBoxManager
from tablegpt.agent import create_tablegpt_graph
llm = ChatOpenAI(openai_api_base="http://localhost:8000/v1", openai_api_key="whatever", model_name="TableGPT2-7B")
pybox_manager = LocalPyBoxManager()
checkpointer = MemorySaver()
agent = create_tablegpt_graph(llm=llm, pybox_manager=pybox_manager, checkpointer=checkpointer, session_id="my-session")
进行查询
在代理运行后,可以向其提出自然语言问题:human_message = HumanMessage(content="有多少行数据?")
response = await agent.ainvoke(
input={"messages": [human_message], "date": date.today()},
config={"configurable": {"thread_id": "my-thread"}}
)
print(response["messages"])
注意事项
- 保持session_id和thread_id的一致性以确保对话连贯
- 问题应当清晰明确,最好包含具体的表格字段名
- 对于复杂问题,系统会自动分解并逐步解答
本答案来源于文章《TableGPT Agent:专为分析复杂表格数据设计的智能工具》