alibaba/UnifiedModel
The semantic layer that makes enterprise data understandable to AI agents — model entities and relations once, query through SPL/MCP/REST, and connect telemetry, services, and business objects in one object graph.
📦 项目:alibaba/UnifiedModel(UModel)
UModel(统一模型)是一个开源、厂商中立的语义运行时,允许企业将数据、服务和拓扑结构以单一、可查询的图形式暴露出来。它设计为让人类用户、软件系统和AI代理都能通过本地服务、REST API、CLI、SDK或Web UI读取并操作同一共享模型。
🎯 它能做什么
- 模型包 – 以声明式包的形式定义企业对象(实体、数据集、链接、存储、拓扑)。
- 统一查询表面 – 一种查询语言(
.umodel、.entity、.topo),可返回模型定义、运行时实体和拓扑关系。 - 代理集成 – 内置的 AgentGateway 和 MCP(模型控制协议)让基于大语言模型的代理能够发现服务、追踪关系,并在无需手动编写查询的情况下执行模型引导的根因分析。
- 本地服务 + UI – 作为单个本地进程(或 Docker/Compose)运行,提供基于 React 的 Web UI 用于探索工作区。
- 公开契约 – 提供 OpenAPI 规范、CLI(
umctl)和生成的 SDK(Go、Python、Java),任何客户端均可无需接触内部代码进行交互。
🛠️ 核心组件(如 README 所述)
| 组件 | 作用 |
|---|---|
| 模型包 | 实体、数据集、链接、存储和语义的词汇表。 |
| EntityStore | 持久化运行时实体和实例化模型的拓扑边。 |
| 查询服务 | 为三个 SPL 领域(.umodel、.entity、.topo)提供统一的只读表面。 |
| AgentGateway / MCP | 向 AI 代理暴露发现、资源和安全工具端点。 |
| Web UI | 浏览器端模型、实体、查询、数据存储和代理视图的探索器。 |
CLI(umctl) |
用于管理工作区、代理和查询的命令行接口。 |
| SDK | 自动生成的 Go、Python 和 Java 客户端,封装公开的 REST 契约。 |
🚀 快速入门(5 分钟)
- 前置条件 – Go 1.22+、Node 22+、
make和pnpm(或 npm)。通过make check-env验证。 - 启动 –
make quickstart启动 API、UI,并加载一个演示工作区(GRAPHSTORE=memory)。 - 探索 – 打开
http://localhost:5173,选择demo工作区,浏览探索器、查询、数据存储和代理标签页。 - 代理演示 – 运行
umctl agent discover demo,并连接一个 MCP 客户端(umodel-mcp),观察 AI 代理自动遍历图、拉取指标和获取日志。 - 关闭 –
make stop-all停止所有服务并清理内存中的数据。
完整指南在仓库中链接(安装、Web UI、查询服务、MCP 参考)。
🤖 代理技能
UModel 随附可加载的技能文件(SKILL.md),适用于主流基于大语言模型的代理(Claude Code、Qoder、Codex、Cursor 等)。安装技能包后,代理可实现:
- 读取任意实体、关系或模型定义。
- 跟随
RunbookSet链接执行运维手册。 - 在企业图谱上执行模型引导的根因分析。
Claude Code 安装示例:
/plugin marketplace add alibaba/UnifiedModel
/plugin install umodel@unifiedmodel
(其他代理将相同的 SKILL.md 文件复制到其技能目录中。)
📚 文档与示例
- 双语文档 – 英文和中文索引(
docs/README.md)。 - 概念 – 对象图语义层、模型编写、实体写入、查询服务。
- 示例 – 多领域快速入门包、事件调查演示、服务本地化演示(均展示 AI 代理如何使用模型)。
- 部署 – 本地或容器化运行的 Docker 和 Docker-Compose 脚本。
🏗️ 架构快照
UModel 在内存中运行一个工作区范围的图,或通过 GraphStore 提供者(memory、file.memory、local.ladybug)持久化。
- 模型包 → 定义模式。
- EntityStore 写入运行时数据。
- 查询服务 提供统一的 SPL 表面。
- AgentGateway / MCP 向代理暴露发现和安全工具端点。
- 客户端(Web UI、CLI、REST、SDK)均与相同的公开契约通信。
README 包含一张图示(images/architecture.png)以及关于运行时流程和查询/代理交互的深入文档。
📦 构建与贡献
- 构建 –
make install-env && make build。 - 测试 –
make guard、make test-service、make verify、make example-validate。 - CI –
make ci运行完整检查门禁。 - SDK 生成 – Go 和 Python SDK 位于
sdk/;Java SDK 位于generated/java/。 - 许可证 – Apache-2.0,附带贡献和安全策略。
🌟 谁会使用它?
- 企业 AI 团队:需要一个共享、厂商中立的语义层来统一数据、服务和可观测性。
- 运维 / SRE 团队:希望 AI 代理能自动发现服务、追踪依赖关系并执行根因分析。
- 产品工程师:构建需要共同“世界模型”的多代理工作流。
- 开发者:寻找一个本地、可扩展的图运行时,具备公开契约和语言 SDK。
📌 总结
UModel 是一个功能完整的开源平台,将分散的企业模式统一为一个单一、可查询的图,供人类、程序和 AI 代理使用。它提供运行时、UI、CLI、REST API 和语言 SDK,支持构建语义化、代理驱动的运维,而无需锁定在任何特定厂商技术栈中。
相关
- 项目
- 项目
- 项目
- 项目
- 项目