关于 NVEIL
NVEIL 是面向 Python 和命令行的工具包,可将自然语言请求转为数据处理计划和可视化结果。原始数据留在本地,并支持可复现的规格文件和离线渲染。
主要功能
- 01通过自然语言生成图表
- 02本地处理数据
- 03支持 2D、3D、地理空间和科学可视化
- 04使用 Plotly、VTK 和 DeckGL 渲染
- 05可复用的 .nveil 规格文件
- 06无需 API 调用的离线渲染
适用场景
- 01根据文字描述创建 CSV 图表
- 02在不上传原始文件的情况下处理和可视化数据
- 03保存图表规格以便使用更新数据重新渲染
MCP 相关
NVEIL 提供 stdio MCP 服务,MCP 客户端可启动它来使用相关能力。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
NVEIL Toolkit
描述数据,即可生成可用于生产环境的图表。数据始终留在本地。
NVEIL 是一款 AI 驱动的数据可视化工具包。只需用自然语言写一句话,NVEIL 就会处理数据并生成可用于出版的可视化图表——无需编写图表代码,不会产生幻觉,数据也不会离开你的设备。
import nveil
nveil.configure(api_key="nveil_...")
# Pass a file path directly — no DataFrame loading required.
spec = nveil.generate_spec("Revenue by region, colored by quarter", "sales.csv")
fig = spec.render("sales.csv") # 100% local — no API call
nveil.show(fig) # opens in browser
在 Shell 中使用
运行 pip install nveil 后,nveil 命令即可在 $PATH 中使用:
export NVEIL_API_KEY=nveil_...
# Ground yourself on the dataset (shape / dtypes / head preview)
nveil describe sales.csv
# Generate HTML + PNG + a reusable .nveil spec, print the explanation
nveil generate "Revenue by region, colored by quarter" \
--data sales.csv --format all --explain
# Re-render an existing spec on fresh data — no API call
nveil render chart.nveil --data new_sales.csv
面向 AI Agent(Claude Code / Claude Desktop / Cursor / Codex / …)
NVEIL 提供一流的集成:
# Claude Code / Claude Desktop — install the bundled skill
nveil install-skill
# Claude Desktop, Cursor, any MCP client — add an MCP server:
# {"mcpServers": {"nveil": {"command": "nveil", "args": ["mcp"]}}}
nveil mcp # stdio server; launched by the MCP client
为什么选择 NVEIL?
| 功能 | NVEIL | 聊天机器人数据分析¹ | 大模型转可视化库² | 传统绘图³ |
|---|---|---|---|---|
| 自然语言输入 | ✓ | ✓ | ✓ | ✗ |
| 原始数据保留在本机 | ✓ | ✗ | ✗ | ✓ |
| 仅向服务端发送架构和统计信息 | ✓ | ✗ | ✗ | N/A |
| 输出确定且可复现 | ✓ | ✗ | ✗ | ✓ |
| 离线重新渲染,无需 API 调用 | ✓ | ✗ | ✗ | ✓ |
可移植的已保存规格(.nveil 文件) | ✓ | ✗ | ✗ | ✗ |
| 2D + 3D + 地理空间 + 科学可视化 | ✓ | 2D | 2D | 不定 |
| 多后端(Plotly、VTK、DeckGL) | ✓ | ✗ | ✗ | ✗ |
| 数据处理引擎 | ✓ | ✓ | 部分支持 | ✗ |
¹ ChatGPT Advanced Data Analysis、Claude Analysis tool、Gemini Data Agent · ² PandasAI、LIDA、Julius、Vanna · ³ Plotly、Matplotlib、Seaborn
工作原理
Your Data ──> Toolkit ──metadata only──> NVEIL AI ──> Processing Plan ──> Local Execution ──> Result
^ ^
raw data stays here raw data stays here
- 你描述想要什么,用通俗语言表达即可
- NVEIL AI 规划数据处理和可视化(仅发送元数据——列名、类型和统计信息)
- Toolkit 在本地执行——连接、聚合、透视、渲染,全部在你的设备上完成
- 你获得图表——根据数据自动选择 Plotly、VTK 或 DeckGL
主要功能
🧠 双引擎合一通过单条提示词,即可完成数据处理(连接、透视、聚合、地理编码、时间序列)和可视化生成。 🔒 隐私保护,融入设计原始数据绝不会离开你的设备。只会发送列名、类型和聚合统计信息。 📈 多后端渲染自动检测最佳引擎:Plotly(2D 图表)、VTK(3D/医疗)、DeckGL(地理空间)。 |
🧪 结果可审计由约束求解驱动,而非随机生成。相同输入每次都会得到相同输出。 ⚡ 离线渲染
💾 可重复使用的规格保存为 |
NVEIL 支持地理空间热力图、3D 体数据、科学可视化、医学影像(DICOM)、生物信号数据(EDF/EDF+)、网络图以及其他 50 多种可视化类型,全部可通过自然语言完成。
保存一次,永久渲染
# Generate once (API call)
spec = nveil.generate_spec("Monthly trend by category", df)
spec.save("trend.nveil")
# Reload anywhere — no API call, no server, no cost
spec = nveil.load_spec("trend.nveil")
fig = spec.render(fresh_data)
nveil.save_image(fig, "report.png")
安装
pip install nveil
要求: Python 3.10+
入门
- 在 app.nveil.com 创建账户
- 在 Settings 中生成 API 密钥
- 开始可视化
import os
import nveil
nveil.configure(api_key=os.environ["NVEIL_API_KEY"])
spec = nveil.generate_spec("scatter plot of price vs area", df)
fig = spec.render(df)
nveil.show(fig)
更多用法示例,请参阅 examples/ 目录。
文档
完整文档请访问 docs.nveil.com:
参与贡献
欢迎根据项目的贡献者许可协议参与贡献。欢迎通过 GitHub Issues 提交错误报告和功能请求。
许可证
GNU AGPL v3 或更高版本。详见 LICENSE。提供商业双重许可 — 请联系 [email protected]。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。