ReACTor-SQL 是一个基于人工智能的数据代理应用,允许用户通过自然语言查询数据库并获得结构化结果。该项目使用 React 和 TypeScript 构建,集成了大型语言模型(LLM)来理解和转换自然语言为 SQL 查询。
为了更好地展示 ReACTor-SQL 的功能,我们提供了一个演示动画。该动画展示了如何使用自然语言查询数据库并获取结果的完整流程。
注意:如果上面的动画没有自动播放,请刷新页面或在新标签页中打开README文件。
- 自然语言转 SQL 查询
- 本地 SQL 执行引擎
- 友好的聊天界面交互
- 实时查询结果展示
- 日志查看功能
- Node.js >= 16.x
- npm >= 8.x
- Node.js >= 16.x
- npm >= 8.x
-
克隆项目代码:
git clone https://github.com/Meng0329/ReACTor-SQL.git cd dataagent-sql-react -
安装依赖:
npm install
-
(可选)配置环境变量: 用户可以在网页界面上直接配置 base_url、api-key 和 model 参数,无需预先配置环境变量。
-
启动开发服务器:
npm run dev
-
在浏览器中打开
http://localhost:5173 -
在聊天界面中输入自然语言查询,例如:"显示用户表中的所有数据"
-
系统将自动生成 SQL 查询并在本地执行,返回结果
├── components/ # UI 组件
│ ├── ChatMessage.tsx # 聊天消息组件
│ ├── LogViewer.tsx # 日志查看器组件
│ └── Sidebar.tsx # 侧边栏组件
├── services/ # 业务逻辑
│ ├── dataService.ts # 数据处理服务
│ ├── llmService.ts # LLM 服务
│ └── logger.ts # 日志服务
├── App.tsx # 主应用组件
├── index.html # HTML 模板
└── index.tsx # 应用入口文件
- React 19 + TypeScript
- Vite 构建工具
- alasql (本地 SQL 处理)
- lucide-react (图标库)
- xlsx (Excel 解析)
- 本项目仅在本地环境中执行 SQL 查询,不会连接到外部数据库
- 为保证安全性,请勿在生产环境中使用此应用处理敏感数据
- 用户可以在网页界面上直接配置 LLM 服务参数(base_url、api-key 和 model)
- 项目使用 alasql 在浏览器中执行 SQL,功能有限,不支持复杂查询
npm run dev- 启动开发服务器npm run build- 构建生产版本npm run preview- 预览构建结果
本项目仅供学习和研究使用。
