我构建了一个 VS Code 扩展,让你可以与数据库聊天——所有内容本地运行
Source: Dev.to
我花了一周时间加入一个我从未见过的 SQL Server 项目。项目里有数十个存储过程,没有文档,之前的开发者也已经离职。我一直在想——为什么我不能直接问数据库它到底是干什么的?
工作原理
该扩展在 Node.js 中完整运行 all‑MiniLM‑L6‑v2 模型,并将所有嵌入向量存储在 LanceDB 中。这种本地优先的方式意味着数据永远不会离开你的机器。
我一开始犯的错误
我最初把 llama3.1:8b 设为默认模型,并在你选择更轻量的模型时添加了警告。实际上,在很多情况下,“普通”方案(更小、更快的模型)才是正确的选择。
为什么采用本地优先
所有操作都在本地运行,能够保护敏感的模式信息,并消除对外部 API 往返的延迟。包括 LLM 推理和向量存储在内的全部处理,都在你的硬件上完成。
入门指南
安装并启动 Ollama
-
按照官方 Ollama 安装指南为你的平台进行安装。
-
启动 Ollama 服务:
ollama serve
从 VS Code Marketplace 安装 SchemaSight
在 VS Code Marketplace 中搜索 SchemaSight 并点击 Install。
添加连接并完成引导流程
- 在 VS Code 中打开 SchemaSight 面板。
- 点击 Add Connection 并提供你的数据库凭据。
- 引导向导将会:
- 验证你的 Ollama 安装。
- 拉取所选的 LLM 模型。
- 爬取数据库模式并在本地建立索引。
注意: 初始索引步骤会使用本地 LLM 对每个模式对象进行摘要。在配备 M5 芯片的 MacBook Pro 上,约有 95 个对象,整个过程大约需要 15–20 分钟。这是一次性成本;仅在模式更改或切换模型时需要重新索引。
许可证与反馈
源码已在 GitHub 上以 MIT 许可证发布。欢迎提交 issue 或 pull request,也请在评论中告诉我你的想法。