开源 Data Agent 实战:用 Lakemind + DuckDB 让 LLM 安全分析本地数据

开源 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 的核心设计是"快速试错-纠偏",轻量模型通过多轮自纠错也能表现不错,不强制要求旗舰模型。

导入数据

支持三种数据源:

  1. 本地文件:CSV、Parquet、Excel 直接拖入
  2. 远程数据库:PostgreSQL、MySQL 连接字符串
  3. 已有 DuckDB 数据库 :直接打开 .duckdb 文件

导入后,Lakemind 会自动扫描表结构,生成 Schema 描述。关键点:只有 Schema(表名、列名、类型)会被发送给 LLM,原始数据行绝不上网。

用自然语言分析

导入数据后,直接在聊天框里用自然语言提问。比如:

"按月份统计销售额,对比今年和去年同期"

Lakemind 的 Agent 会:

  1. 读取 Schema 和 OKF 语义定义
  2. 生成 SQL
  3. 在本地 DuckDB 执行
  4. 如果报错,拿到 DuckDB 的原始错误信息,自动修正后重试
  5. 执行成功后,把结果物化为 t_sales_monthly
  6. 下次你问相关问题时,直接复用这张表

整个过程你不需要写一行 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 记忆 + 审计日志

相关链接

如果你经常需要分析本地数据文件,或者对 Data Agent 的架构设计感兴趣,欢迎 Star、提 Issue、一起讨论。

相关推荐
fthux20 小时前
装闭 RenoPit 源码解析(13):生成AI装修闭坑PDF报告
人工智能·ai·pdf·开源·github
MartinYeung520 小时前
[论文学习]AgentSafetyBench:大语言模型智能体安全评估基准深度分析
学习·安全·语言模型
TunerT_TQ20 小时前
Valhalla 静态工程审阅 #007|AgentENV 源码证据驱动评测【大厂开源基础设施特辑】
rust·开源·go·github·sandbox·分布式系统·ai基础设施
NutShell Wang1 天前
Vite 8.1 深度拆解:Rolldown 统一打包器如何终结前端构建的「双引擎时代」
前端·rust·开源·vite·开发者工具·vibe coding
小码哥哥1 天前
企业级AI知识库:高效安全的知识管理新范式
人工智能·安全
小码哥哥1 天前
构建企业级 AI 知识库:通往高效与安全的知识管理新范式2
人工智能·安全
论迹复利1 天前
第 2 章 PSA Certified 四级认证体系
物联网·安全·security·cra·psa
tokenKe1 天前
OpenWork:把 AI Agent 工作台 从订阅制变成开源 + 本地的革命 | SSP Github Daily
人工智能·开源·github
2401_876907521 天前
GB 47501-2026《旋转电机 安全技术规范》完整技术解读
安全·国标标准
小马9261 天前
把稀疏注意力做对:HiLS-Attention 如何在数学上同时打破效率与效果的天花板
开源·aigc