RoboFinSystems/robosystems

GitHub: RoboFinSystems/robosystems

RoboSystems 是一个开源金融智能平台,用于整合财务数据并提供AI驱动的分析和洞察。

Stars: 15 | Forks: 6

# RoboSystems RoboSystems 是一个基于统一运营与分析图架构构建的开源金融智能平台——采用具有账本级正确性的事务型 Postgres 主干,配合用于AI检索和报告的 LadybugDB 分析图。专为会计、财务报告、投资管理和分析而构建,驱动 [RoboLedger](https://roboledger.ai) 和 [RoboInvestor](https://roboinvestor.ai)。 ## 平台 该平台为所有扩展提供核心基础架构: - **专用基础设施**:分层图基础设施,配备专用实例和可配置内存分配 - **AI算子系统**:自主金融算子(Claude/MCP执行器),具备自动信用额度跟踪和SSE进度流功能。这是产品说明中“AI代理”功能背后的API接口层。 - **共享仓库**:SEC XBRL申报知识图谱,用于上下文挖掘和基准比较 - **文档管理**:上传、索引和搜索文档,支持通过 OpenSearch 进行全文和语义搜索 - **DuckDB 暂存系统**:高性能数据验证和批量摄入管道 - **Dagster 编排**:数据管道编排,用于 SEC 申报、QuickBooks 同步、备份、计费和定时任务 - **基于信用的计费**:基于 token 使用量的 AI 操作灵活信用额度 - **子图(工作区)**:AI 记忆图和用于开发与团队协作的隔离环境 ## 扩展 扩展是领域特定的子系统,各自拥有独立的 schema、OLTP 表、API 路由、数据管道和专属前端应用。它们共享单个 PostgreSQL 数据库,通过 schema-per-tenant 进行隔离,并物化到图中以供分析查询。请参阅 [Schema Extensions](/robosystems/schemas/README.md) 了解创作规范。 有关读路径实现细节、Strawberry-Pydantic 自动派生模式以及添加新读字段的演练,请参阅 [GraphQL Extensions](/robosystems/graphql/README.md)。 ### [RoboLedger 链接](https://roboledger.ai) 会计和财务报告扩展。OLTP 总账位于 schema-per-tenant PostgreSQL 中(包含科目、交易、日记账分录、行项目、维度);30多个 GraphQL 读字段,涵盖实体、科目、试算平衡表、财年日历、附表、分类法、映射、报告和发布列表;30多个命名的命令操作,覆盖结账生命周期、附表和结账分录创作、CoA→GAAP 映射关联、多期报告创作和发布列表;基于物化图的分析视图操作;通过 dbt/Dagster 的 QuickBooks ELT 管道;SEC XBRL 财务报告;通过 MappingOperator 实现的 AI 驱动 CoA→GAAP 映射。拥有专属前端应用。 ### [RoboInvestor 链接](https://roboinvestor.ai) 投资组合管理和投资跟踪扩展。OLTP 数据库位于 schema-per-tenant PostgreSQL 中,包含投资组合、证券和持仓;7个 GraphQL 读字段(投资组合、证券、持仓、持股)和6个命名的命令操作,用于投资组合区块 CRUD 和证券 CRUD。证券可链接到实体,通过共享仓库实现投资者投资组合与 SEC 上市公司数据之间的跨图研究。拥有专属前端应用。 ## 快速开始 ### Docker 开发环境 ``` # 安装 uv 和 just brew install uv just # 启动 robosystems 后端 API just start # 启动前端应用 - robosystems-app、roboledger-app、roboinvestor-app just start apps ``` 此命令初始化 `.env` 文件并启动完整的 RoboSystems 技术栈,包括: - 带有 LadybugDB 和 DuckDB 后端的图 API - 用于数据管道编排的 Dagster - 用于 IAM、图元数据、扩展和 Dagster 的 PostgreSQL - 用于缓存、SSE 消息传递和速率限制的 Valkey - 用于全文和语义文档搜索的 OpenSearch - 用于 S3 和 DynamoDB 模拟的 Localstack **服务 URL:** | 服务 | URL | | ----------- | --------------------- | | 主 API | http://localhost:8000 | | 图 API | http://localhost:8001 | | Dagster UI | http://localhost:8002 | 使用 `just start apps`(前端应用): | 应用 | URL | | ----------------- | --------------------- | | RoboSystems App | http://localhost:3000 | | RoboLedger App | http://localhost:3001 | | RoboInvestor App | http://localhost:3002 | ### 本地开发 ``` # 设置 Python 环境(uv 自动处理 Python 版本) just init ``` ## 示例 通过可运行的演示查看 RoboSystems 的实际应用,这些演示使用 `robosystems-client` 创建图、加载数据和执行查询: 每个演示都有对应的 [Wiki 文章](https://github.com/RoboFinSystems/robosystems/wiki),提供详细指南。 ## 开发命令 ### 测试 ``` just test-all # Tests with code quality just test # Default test suite just test adapters # Test specific module just test-cov # Tests with coverage ``` ### 日志监控 ``` just logs api # View API logs (last 100 lines) just logs graph-api # View Graph API logs (last 100 lines) just logs dagster-webserver # View Dagster Webserver logs just logs dagster-daemon # View Dagster Daemon logs ``` **请参阅 [justfile](justfile) 获取 80 多个开发命令**,包括数据库迁移、CloudFormation 检查、图操作、管理等。 ### 前置条件 #### 系统要求 - Docker & Docker Compose - 最少 8GB 内存 - 20GB 可用磁盘空间 #### 所需工具 - `uv` 用于 Python 包和版本管理 - `just` 用于项目命令运行器 #### 部署要求 - Fork 此仓库 - 拥有 IAM Identity Center (SSO) 的 AWS 账户 - 运行 `just bootstrap` 以配置 OIDC 和 GitHub 变量 请参阅 **[Bootstrap Guide](https://github.com/RoboFinSystems/robosystems/wiki/Bootstrap-Guide)** 获取完整说明。 ## 架构 RoboSystems 基于现代、可扩展的架构构建,包含: **应用层:** - 带有版本化端点的 FastAPI REST API - 用于读操作和命令操作的扩展 GraphQL API - 用于 AI 驱动图数据库访问的 MCP 服务器,支持 schema 感知工具 - 用于自主金融操作的 AI 算子系统,具备自动信用额度跟踪功能 - 用于数据管道编排和后台任务的 Dagster **LadybugDB 图数据库:** ([配置](/.github/configs/graph.yml)) - 为金融分析专门构建的嵌入式列式图数据库 - 基础 + 扩展 schema 架构——扩展定义领域模型 - 原生 DuckDB 集成,用于高性能暂存和摄入 - LanceDB 向量搜索,用于语义元素解析(IVF-PQ 索引,384维嵌入) - 分层基础设施,支持可配置的内存、速率限制和子图分配 - 共享层托管公共仓库,带有只读副本 **数据层:** - PostgreSQL 用于 IAM、图元数据、Dagster 和扩展 OLTP 数据库(schema-per-tenant) - OpenSearch 用于全文和语义文档搜索(BM25 + KNN) - Valkey 用于缓存、SSE 消息传递和速率限制 - AWS S3 用于数据湖存储和静态资源 - DynamoDB 用于实例/图/卷注册表 **基础设施:** - ECS Fargate 用于 API 和 Dagster - EC2 ASG 用于 LadybugDB 写入集群 - EC2 ALB + ASG 用于 LadybugDB 共享副本集群 - RDS PostgreSQL + ElastiCache Valkey - OpenSearch 用于全文和语义文档搜索 - 通过 GitHub Actions 与 OIDC 部署的 CloudFormation 基础设施 **有关详细架构文档,请参阅 Wiki 中的 [Architecture Overview](https://github.com/RoboFinSystems/robosystems/wiki/Architecture-Overview)。** ## SEC 共享仓库 基于 SEC EDGAR XBRL 申报的美国上市公司金融数据精选知识图谱。运行在共享的 LadybugDB 层上,可通过 MCP 工具、Cypher 查询和 AI 算子访问。 - **管道**:EDGAR → 下载 → 处理 (Parquet) → 暂存 (DuckDB) → 增强 (fastembed) → 物化 (LadybugDB) → 索引 + 嵌入 (OpenSearch) - **图**:14 种节点类型和 24 种关系类型,建模完整的 XBRL 报告层次结构 - **搜索**:跨 XBRL 文本块、叙述部分和 iXBRL 披露的混合 BM25 + KNN 向量搜索 - **增强**:通过 [Seattle Method](http://xbrlsite.com/seattlemethod/SeattleMethod.pdf) 分类法进行语义元素映射、报表分类和披露标记 ``` just sec-load NVDA 2025 # Load NVIDIA filings for 2025 just sec-health # Check SEC database health ``` 有关详细文档,请参阅 [SEC Adapter](/robosystems/adapters/sec/README.md) 和 [SEC Pipeline](/robosystems/adapters/sec/pipeline/README.md)。 ## AI ### 模型上下文协议 (MCP) - **金融分析**:跨企业数据和公共基准数据的自然语言查询 - **跨数据库查询**:将用户图数据与 SEC 共享仓库数据进行比较 - **工具**:丰富的工具包,用于图查询、schema 自省、事实发现、金融分析、文档搜索和 AI 记忆操作 - **处理器池**:托管的 MCP 处理器实例,具备资源限制 ### AI 算子系统 - 统一架构:无状态算子(Claude/MCP 执行器),采用基于协议的服务注入 - 双重执行:API(同步/SSE)和后台 worker(Valkey 队列 + SSE 进度) - 每次 AI 调用自动跟踪信用额度——算子不会忘记计费 - 可扩展:新算子实现 `run(ctx)` 并通过装饰器注册 - 详情请参阅 [Operator README](/robosystems/operations/operators/README.md) ### 信用系统 ## 客户端库 RoboSystems 提供全面的客户端库用于构建应用程序: ### MCP(模型上下文协议)客户端 用于将 Claude 和其他 LLM 连接到 RoboSystems 的 AI 集成客户端。 ``` npx -y @robosystems/mcp ``` - **功能**:Claude Desktop 集成、自然语言查询、图遍历、金融分析 - **用例**:AI 代理、聊天机器人、智能助手、自动化研究 - **文档**:[npm](https://www.npmjs.com/package/@robosystems/mcp) | [GitHub](https://github.com/RoboFinSystems/robosystems-mcp-client) ### TypeScript/JavaScript 客户端 ``` npm install @robosystems/client ``` ### Python 客户端 用于后端服务和数据科学工作流的原生 Python SDK。 ``` pip install robosystems-client ``` ## 文档 ### 用户指南(Wiki) - **[Getting Started](https://github.com/RoboFinSystems/robosystems/wiki)** - 快速入门和概述 - **[Bootstrap Guide](https://github.com/RoboFinSystems/robosystems/wiki/Bootstrap-Guide)** - Fork 并部署到您的 AWS 账户 - **[Architecture Overview](https://github.com/RoboFinSystems/robosystems/wiki/Architecture-Overview)** - 系统设计和组件 - **[Data Pipeline Guide](https://github.com/RoboFinSystems/robosystems/wiki/Pipeline-Guide)** - Dagster 数据编排和自定义集成 - **[SEC XBRL Pipeline](https://github.com/RoboFinSystems/robosystems/wiki/SEC-XBRL-Pipeline)** - 使用 SEC 金融数据 - **[Custom Graph Demo](https://github.com/RoboFinSystems/robosystems/wiki/Custom-Graph-Schema)** - 创建自定义 schema 图演示的指南 ### 开发者文档(代码库) **核心服务:** - **[Adapters](/robosystems/adapters/README.md)** - 外部服务集成 - **[Operations](/robosystems/operations/README.md)** - 业务工作流编排,扩展的 CQRS 读/命令内核 - **[Schemas](/robosystems/schemas/README.md)** - 图 schema 定义 - **[Extensions GraphQL](/robosystems/graphql/README.md)** - Strawberry GraphQL 读接口,Pydantic 自动派生,解析器模式 - **[Configuration](/robosystems/config/README.md)** - 配置管理 - **[Dagster](/robosystems/dagster/README.md)** - 数据管道和任务编排 **数据库模型:** - **[Platform Models](/robosystems/models/core/README.md)** - 平台数据库的 SQLAlchemy 模型 - **[Extensions Models](/robosystems/models/extensions/README.md)** - 扩展数据库的 SQLAlchemy 模型,采用 schema-per-graph 租户隔离 - **[API Models](/robosystems/models/api/README.md)** - 核心平台和扩展接口的 Pydantic 请求/响应模型 **图数据库系统:** - **[Graph API](/robosystems/graph_api/README.md)** - 图 API 概述 - **[Client Factory](/robosystems/graph_api/client/README.md)** - 客户端工厂系统 - **[Core Services](/robosystems/graph_api/core/README.md)** - 核心服务层 **中间件组件:** - **[Authentication](/robosystems/middleware/auth/README.md)** - 认证与授权 - **[Graph Routing](/robosystems/middleware/graph/README.md)** - 图路由层 - **[MCP](/robosystems/middleware/mcp/README.md)** - MCP 工具和池化 - **[Billing](/robosystems/middleware/billing/README.md)** - 订阅和计费管理 - **[Observability](/robosystems/middleware/otel/README.md)** - OpenTelemetry 可观测性 - **[Robustness](/robosystems/middleware/robustness/README.md)** - 断路器和重试策略 **基础设施:** - **[CloudFormation](/cloudformation/README.md)** - AWS 基础设施模板 - **[Setup Scripts](/bin/setup/README.md)** - 引导和配置脚本 **开发资源:** - **[Examples](/examples/README.md)** - 可运行的演示和集成示例 - **[Tests](/tests/README.md)** - 测试策略和组织 - **[Admin Tools](/robosystems/admin/README.md)** - 管理工具和 CLI **安全与合规:** - **[SECURITY.md](/SECURITY.md)** - 安全特性和合规配置 ## API 参考 - [API 参考](https://api.robosystems.ai) - [API 文档](https://api.robosystems.ai/docs) - [OpenAPI 规范](https://api.robosystems.ai/openapi.json) ## 许可证 本项目根据 Apache License 2.0 获得许可 - 详情请参阅 [LICENSE](LICENSE) 文件。 Apache-2.0 © 2026 RFS LLC
标签:AI代理, AWS云部署, Dagster工作流编排, DuckDB数据仓库, GitHub Actions CI/CD, GraphQL API, LadybugDB, OpenSearch搜索引擎, PMD, PostgreSQL数据库, 云基础设施, 代码示例, 会计系统, 信用计费, 实时流处理, 工作区隔离, 开源平台, 投资分析工具, 投资管理, 数据分析, 数据编排, 文档管理, 测试用例, 漏洞利用检测, 漏洞探索, 自动化报告, 语义搜索, 请求拦截, 财务会计软件, 财务报告, 逆向工具, 金融数据集成, 金融智能