开源 Data Agent 实战:用 Lakemind + DuckDB 让 LLM 安全分析本地数据
做数据分析的同学应该都有过这种体验:想用大模型帮忙写 SQL 分析数据,但数据是敏感的业务数据,不能上传到云端;或者数据文件太大,上传不现实。
最近我开源了一个 Data Agent 项目 Lakemind,专门解决这个问题。这篇文章不讲设计哲学,直接上手实操。
环境准备
方式一:下载预编译包
前往 GitHub Releases 下载对应平台的安装包,目前支持 macOS 和 Windows。
方式二:源码编译
bash
git clone https://github.com/tsingliuwin/lakemind.git
cd lakemind
npm install --include=dev
npm run tauri dev
需要本地有 Rust 工具链和 Node.js 18+。
配置大模型
打开 Lakemind 后,第一步是配置 LLM API。目前支持两个提供商:
- OpenAI:填入 API Key,选择模型(推荐 gpt-4o 或 gpt-4o-mini)
- Anthropic:填入 API Key,选择模型(推荐 claude-sonnet-4)
因为 Lakemind 的核心设计是"快速试错-纠偏",轻量模型通过多轮自纠错也能表现不错,不强制要求旗舰模型。
导入数据
支持三种数据源:
- 本地文件:CSV、Parquet、Excel 直接拖入
- 远程数据库:PostgreSQL、MySQL 连接字符串
- 已有 DuckDB 数据库 :直接打开
.duckdb文件
导入后,Lakemind 会自动扫描表结构,生成 Schema 描述。关键点:只有 Schema(表名、列名、类型)会被发送给 LLM,原始数据行绝不上网。
用自然语言分析
导入数据后,直接在聊天框里用自然语言提问。比如:
"按月份统计销售额,对比今年和去年同期"
Lakemind 的 Agent 会:
- 读取 Schema 和 OKF 语义定义
- 生成 SQL
- 在本地 DuckDB 执行
- 如果报错,拿到 DuckDB 的原始错误信息,自动修正后重试
- 执行成功后,把结果物化为
t_sales_monthly表 - 下次你问相关问题时,直接复用这张表
整个过程你不需要写一行 SQL。
为什么本地执行是关键
传统 Text-to-SQL 产品的流程是:用户提问 → LLM 生成 SQL → 远程执行 → 返回结果。这里有两个问题:
- 数据必须在云端执行,安全风险高
- SQL 执行失败后只能让用户手动重试
Lakemind 的流程是:用户提问 → LLM 生成 SQL → 本地 DuckDB 执行 → 失败则自动纠错重试 → 成功后物化结果。
DuckDB 是进程内 OLAP 引擎,GB 级数据查询是亚秒级的。Agent 可以在 1 分钟内跑 10 轮试错,这比让 LLM 冥思苦想一条"完美 SQL"高效得多。
OKF:让 Agent 拥有业务记忆
Lakemind 借鉴了 Google 开源的 Open Knowledge Format 思路,把以下信息打包成 .okf/ 文件夹:
- 表结构 Schema
- 主外键 JOIN 关系网
- 指标定义(如"活跃用户"的精确口径)
- 分析准则(分行业、分主题的知识库)
当你把数据集分享给同事时,.okf/ 文件夹随数据库一起流转。对方的 Agent 打开后立刻继承所有业务记忆,不会冷启动。
新增行业准则只需加一个 Markdown 文件,零代码。
技术栈一览
| 层 | 选型 | 亮点 |
|---|---|---|
| 桌面壳 | Tauri 2.0 + Rust | 安装包几十 MB,内存远低于 Electron |
| 计算引擎 | DuckDB + DuckLake | 进程内 OLAP,持久化 catalog |
| 元数据 | SQLite (rusqlite) | 工作区、任务、配置统一索引 |
| Agent 框架 | Rig SDK (rig-core) | Rust 原生,流式 ReAct,16 个工具 |
| 前端 | SolidJS + TanStack | 百万行虚拟化表格 60fps |
| LLM | OpenAI / Anthropic | 流式输出,429 自动退避重试 |
当前状态与路线图
- v0.5.5 已发布(2026-07-12),420 次提交,14 个 Release
- M2 已交付:流式 LLM ReAct 循环 + 16 个工具全部上线
- M3 规划中:Profiler + Polars 清洗管线 + 分析画布 + Arrow IPC 零拷贝传输
- M4 规划中:企业级隔离 + LanceDB 记忆 + 审计日志
相关链接
- GitHub: https://github.com/tsingliuwin/lakemind
- 官网: https://lakemind.xi-n.com
- 许可证: AGPL-3.0,完全开源
如果你经常需要分析本地数据文件,或者对 Data Agent 的架构设计感兴趣,欢迎 Star、提 Issue、一起讨论。