Dify - (二)、AI智能体实现将自然语言转换为SQL
Dify 是一个用于构建 AI 工作流的开源平台。通过在可视化画布上编排 AI 模型、连接数据源、定义处理流程直接将你的领域知识转化为可运行的软件。相关链接1、【Dify官方网站】 https://docs.dify.ai/2、【Dify中文文档】https://docs.dify.ai/zh/use-dify/getting-started/introduction3、【使用 Docker Compose 部署 Dify】 https://docs.dify.ai/zh/self-host/quick-start/docker-composeDify系列文章一、本地部署Dify聊天助手/Agent二、AI智能体实现将自然语言转换为SQL前提条件需要部署 Dify 服务有需要的同学可以查看【Dify - 一、本地部署Dify聊天助手/Agent】一、启动Dify服务1、启动Dify服务1打开命令窗口执行下在命令# 1. 进入docker目录 cd dify\docker # 2. 启动dify服务 docker compose up -d2、访问Dify1打开浏览器输入下面地址# 本地环境 http://localhost # 服务器环境 http://your_server_ip二、自然语言转SQL的智能体rookie_text2data的能力1、使用自然语言从Mysql数据库中获取数据2、SQL语句生成1、安装插件rookie_text2data2、基于插件rookie_text2data开发智能体1、创建智能体【自然语言转SQL】2、配置【开始】节点添加表名变量【table_name】3、添加【rookie_text2data】节点配置【rookie_text2data】节点的数据属性配置【rookie_text2data】节点的LLM4、添加【rookie_execute_sql】节点配置【rookie_execute_sql】节点属性5、配置【回复】节点配置回复内容为sql逻辑 {{#自然语言.text#}} 执行结果 {{#执行sql.text#}}6、预览智能体我们以表【ybt_user_behavior_log】为例自然语言根据事件名称统计数据量执行结果至此自然语言转SQL的智能体已经实现但是经过验证后当前rookie_text2data仍存在下面的不足如果想要解决这些不足需要大家放弃使用这类插件而是基于Dify平台自行配置智能体rookie_text2data插件不足之处1、不具备多表联合分析能力2、不具备写权限的安全限制3、无法在智能体中关联上下文进行智能分析