Canner/WrenAI

GitHub: Canner/WrenAI

WrenAI 是一个开放上下文层,通过语义建模让 AI 智能体准确理解和查询企业数据源中的业务数据。

Stars: 15163 | Forks: 1712

WrenAI — Open Context Layer for AI Agents

Docs

Canner%2FWrenAI | Trendshift

## 为什么选择 WrenAI? AI 智能体在处理业务数据时失败,往往不是因为它们不会写 SQL,而是因为它们不了解你的数据仓库的实际含义。重叠的表、不一致的命名、散落在各种仪表盘和 SQL 文件中的指标定义:一个仅拥有原始数据库访问权限的 LLM,其猜测的准确度就如同一名新员工在入职第一天那样糟糕。 WrenAI 是填补这一空白的开放上下文层。你可以使用 **[MDL](./core/wren-mdl/)**(Modeling Definition Language,建模定义语言)对你的业务进行建模——包括实体、关系、计算以及受治理的访问模式——这样任何智能体(Claude、Cursor、ChatGPT、内部 copilot、面向客户的应用)都可以通过你的分析师已经在使用的同一层进行查询。 一个由 [Apache DataFusion](https://datafusion.apache.org/) 驱动的 Rust 引擎会转换已建模的 SQL,并针对 20 多种数据源(PostgreSQL、BigQuery、Snowflake、Spark 等)运行它。你可以将其作为 Python SDK、CLI、浏览器中的 WASM 模块,或者作为构建智能体技能的基础模块来使用。 ## 快速开始 最快的入门方式是让 AI 编码智能体(Claude Code、Cursor、Aider 等)来驱动安装: ``` # 将 WrenAI 技能安装到你的 AI agent npx skills add Canner/WrenAI --skill '*' ``` 启动一个新的智能体会话并提问: `wren-onboarding` 技能会引导智能体完成环境检查、包安装、项目脚手架搭建、第一个数据源连接以及第一次查询。 完整的 CLI 指南和手动安装步骤详见:[`core/wren/README.md`](./core/wren/README.md)。每个连接器可安装的扩展组件也都已列在其中。 ## 文档 [Wren AI OSS 文档](https://docs.getwren.ai/oss/introduction) ## 支持的数据源 Wren 引擎旨在跨现代数据栈工作,包括数据仓库、数据库和基于文件的数据源。 目前的开源支持包括以下连接器: - Amazon S3 - Apache Spark - Apache Doris - Athena - BigQuery - ClickHouse - Databricks - DuckDB - Google Cloud Storage - 本地文件 - MinIO - MySQL - Oracle - PostgreSQL - Redshift - SQL Server - Snowflake - Trino 请查阅项目文档中的连接器 API 文档,以获取最新的连接 schemas 和功能特性。 ## 仓库结构 | 路径 | 内容 | |---|---| | [`core/`](./core) | Rust 引擎 + Python/WASM 绑定 + CLI。上下文层的核心机制。 | |   [`core/wren-core/`](./core/wren-core) | Rust 语义引擎 (Cargo workspace)。 | |   [`core/wren-core-base/`](./core/wren-core-base) | Manifest 类型 (`Model`、`Column`、`Cube`、`Relationship`、`View`)。 | |   [`core/wren-core-py/`](./core/wren-core-py) | PyO3 绑定 (PyPI: `wren-core`)。 | |   [`core/wren-core-wasm/`](./core/wren-core-wasm) | 用于浏览器内语义 SQL 的 WebAssembly 构建 (npm: `wren-core-wasm`)。 | |   [`core/wren/`](./core/wren) | Python SDK + `wren` CLI (PyPI: `wren-engine`)。 | |   [`core/wren-mdl/`](./core/wren-mdl) | MDL JSON schema。 | | [`skills/`](./skills) | 基于 CLI 的智能体技能 (`wren-generate-mdl`、`wren-usage`、`wren-dlt-connector`、`wren-onboarding`)。 | | [`sdk/`](./sdk) | 框架集成。[`sdk/wren-langchain/`](./sdk/wren-langchain) (PyPI: `wren-langchain`) 已发布;CrewAI / Pydantic-AI / Goose / LlamaIndex / Mastra 即将推出。 | | [`examples/`](./examples) | 端到端示例项目——即将推出。 | | [`docs/core/`](./docs/core) | 模块文档。 | ## 许可证 WrenAI 采用多重许可: - **`core/**`、`sdk/**`、`skills/**`、`examples/**`、根目录级别文件** — [Apache License 2.0](LICENSE-APACHE-2.0) - **`docs/**`** — [Creative Commons Attribution 4.0 International (CC BY 4.0)](LICENSE-CC-BY-4.0) 未来的模块可能会在 [GNU Affero General Public License v3.0](LICENSE-AGPL-3.0) 下引入;其全文已预先提交在此。请参阅 [LICENSE](LICENSE) 获取权威的路径到许可证映射。 已发布的包会在其包清单(`Cargo.toml`、`pyproject.toml`、`package.json`)中声明其生效的许可证。 ## 我们的贡献者

⬆️ 回到顶部

标签:AI工具, AI工程, DLL 劫持, GenBI, LLM, Python, RAG, SQL生成, Text-to-SQL, Unmanaged PE, WrenAI, 上下文层, 代码示例, 仪表盘, 可视化界面, 商业智能, 多数据源, 大语言模型, 开源, 数据分析, 数据治理, 数据虚拟化, 数据集成, 无后门, 检索增强生成, 语义层, 逆向工具, 通知系统, 高级分析