乐于分享
好东西不私藏

OpenScience:AI科学家助手

OpenScience:AI科学家助手

一、项目定位

OpenScience 是由 Synthetic Sciences 推出的一款开源、模型无关的 AI 研究代理系统,专为机器学习工程与科学研究场景设计。系统基于 Bun 和 TypeScript 构建,提供从文献综述、假设生成、实验运行到结果撰写的全流程自动化研究闭环

其核心定位是本地优先的科研助手工具,支持超过 75 家主流大模型服务商,通过命令行启动本地服务并在浏览器中打开工作区界面,让研究人员在本地环境中即可获得端到端的 AI 辅助科研能力。

二、核心功能与能力

2.1 自主研究闭环

系统具备完整的端到端研究流程处理能力,覆盖文献综述、代码编写、实验执行与结果分析四大核心环节,能够自主推进研究任务,减少人工介入成本。

2.2 领域专家代理

内置默认的通用研究代理(research),并配备生物学(biology)、物理学(physics)、机器学习(ml)三大领域的专业化代理,可针对不同学科场景提供精准的领域知识支持。

2.3 丰富技能集

系统预装超过 250 项技能,涵盖 DeepSpeed 分布式训练、分子生物学、化学信息学、云端计算等多个专业方向,能够直接执行复杂的科研计算与分析任务。

2.4 科学数据库连接器

原生集成 UniProt、PDB、Ensembl、ChEMBL、arXiv 等主流学术数据库查询工具,可直接检索蛋白质结构、基因序列、化学分子、学术论文等专业数据。

2.5 集成化工作区

提供基于 SolidJS 构建的浏览器端交互界面,包含文件树、代码编辑器、终端模拟器,以及分子结构、基因组数据等专业数据的专属渲染器,实现科研工作一站式操作。

三、系统架构

3.1 整体交互流程

系统采用本地服务 + 浏览器前端的双层架构:

  • 本地主机层(Bun 运行时):包含 CLI 入口、Hono 服务端、代理运行时、工具集与模型路由模块,负责核心逻辑执行与外部 API 调用。

  • 客户端空间(浏览器):基于 SolidJS 的工作区前端,通过 HTTP/SSE 协议与本地服务进行消息循环交互,向用户呈现可视化操作界面。

3.2 核心模块流转

  • 用户通过浏览器工作区提交研究任务

  • 前端通过 HTTP/SSE 将请求发送至本地 Hono 服务器

  • 会话层(Session)管理消息循环,调度代理运行时

  • 代理调用工具层与科学工具集执行具体任务

  • 模型路由层统一对接外部 AI 服务商,完成大模型请求

  • 执行结果沿链路反向回传至前端界面展示

3.3 代码架构映射

  • 入口层index.ts 作为 CLI 程序入口

  • 服务层server/ 目录承载 Hono 应用服务

  • 会话层session/ 目录实现消息循环机制

  • 代理层agent/ 目录管理代理注册与调度

  • 模型层provider/ 目录封装多模型接入逻辑

  • 前端层workspace/ 为工作区应用,ui/ 为共享组件库

四、技术栈

层级

技术选型

说明

运行时

Bun 1.3+

高性能 JavaScript/TypeScript 运行时

后端框架

Hono

轻量级 Web 服务框架

前端框架

SolidJS

响应式前端框架,用于构建工作区 UI

开发语言

TypeScript

全栈 TypeScript 类型安全开发

包管理

npm

标准 npm 包分发,支持 npx 直接运行

模型接入

75+ 服务商

兼容 Anthropic、OpenAI、Google 等主流模型

发布形态

npm 包 + 原生二进制

支持 Linux、macOS、Windows 三平台

五、仓库组织结构

项目采用 Monorepo 架构,按运行边界划分目录职责:

  • backend/cli:CLI 入口、Hono 服务器、代理运行时、工具与技能集的核心实现

  • frontend/workspace:浏览器端研究工作区 UI 应用

  • frontend/ui:共享组件库、主题系统与设计令牌

  • tooling/sdk/js:基于 OpenAPI 契约生成的 TypeScript SDK

  • tooling/plugin@synsci/plugin 插件运行时,提供系统扩展能力

六、安装与部署方式

6.1 环境要求

  • 开发环境需安装 Bun 1.3 及以上版本

  • 运行环境支持 Linux、macOS、Windows 三大操作系统

6.2 快速安装

通过 npm 全局安装:

bash                  npm install -g @synsci/openscience

安装完成后,可执行二进制命令为 openscience

6.3 直接运行

无需安装,通过 npx 直接启动:

bash                  npx synsci

6.4 原生二进制

项目同时提供各平台专属的原生二进制文件,可直接下载运行,无需依赖 Node.js 或 Bun 环境。

6.5 首次运行

启动后,CLI 会自动拉起本地服务器并在默认浏览器中打开工作区界面,用户按引导完成 API 密钥配置与环境初始化即可开始使用。

七、配置系统

OpenScience 采用分层配置机制,支持全局配置与项目级配置叠加:

  • 全局配置:存放于用户主目录 ~/.config/openscience/openscience.json,适用于所有项目

  • 项目配置:在仓库根目录放置 openscience.json 文件或 .openscience/ 目录,可覆盖全局设置

配置内容涵盖模型服务商密钥、代理参数、自定义代理定义等,支持 JSON 格式声明式配置。

八、托管集成(Atlas)

OpenScience 支持完全独立运行(自带 API 密钥模式,BYOK),同时提供可选的 Atlas 托管平台集成:

  • 托管模型访问:通过预付费钱包直接调用前沿大模型

  • 研究图谱存储:提供研究产物的持久化存储与管理

  • 客户端实现位于代码库 src/openscience 目录

九、总结

OpenScience 是一款面向科研人员的本地化 AI 研究代理平台,以模型无关、本地优先、领域专业化为核心特色,通过全栈 TypeScript 技术栈构建,覆盖从文献调研到实验产出的完整科研链路,尤其适合生命科学、物理学、机器学习等领域的研究工作者使用。

* 官方开源代码仓库https://github.com/synthetic-sciences/openscience