数据库查询智能体

说明一:这个数据库查询智能体示例Shiny APP选取了开源的 Chinook Database样本数据库用SQLite3加载来回答问题。 对话中Agent会根据所提的问题查询数据库的Schema,并据此生成适当的SQL语句并执行,根据执行的结果回答问题。 如果不能生成查询用的SQL就回答不知道。该智能体演示了非技术人员通过自然语言查询数据的快捷途径,是智能体 在具体的行业落地应用场景中赋能业务的一个典型的实例。
例如:
1、简单的查询
一共有多少个销售代表?请列出他们的名字。
2、简单的统计。
请统计一下历年的销售总额。
3、需要交叉连接几个表的查询
请列出所有销售代表2024年的销售额。
4、根据上文可以推断的查询。
2024年销售额最高的销售代表是谁?
说明二:如果Agent调用了数据库查询,可以点击“查看执行过程”上面的链接查看执行的过程和生成的SQL语句。
说明三:LangGraph的删除消息功能目前还在Beta阶段,暂不支持清空整个对话,至少要保留第1轮对话。
说明四:在对话开始之前,可以从页面底部的下拉列表中选择使用的LLM厂商。目前测试过的LLM中, 只有阿里与OpenAI跑通了。
说明五:后端通过FastAPI提供RESTful API Agent调用,需要先登录FastAPI服务器,点击<登录>按钮用默认的 用户名与口令登录后才能进行对话等操作。点击<登出>退出登录并清空当前session的对话。
Demo性质,没有并发设计,只能一个用户操作。如果看到对话记录混乱,可以先按“清空对话”按钮清空。

对话记录

   
   
查看数据查询执行的过程,该查询从以下消息索引号开始往后查看,直到用户提出的问题: