sim
开源的AI agent工作流构建与编排平台,通过可视化画布拖拽连接agent、工具和LLM,实现复杂自动化任务。支持1000+第三方集成、文档知识库检索和Copilot辅助生成节点。与同类相比,提供从开发到部署的一体化体验,既可用云端托管也可自托管,并支持Ollama/vLLM接入本地模型。
README
开源平台,用于构建 AI 智能体(agent)并运行您的智能体劳动力。连接 1000 多种集成和 LLM(大语言模型),编排智能体工作流。
轻松构建工作流
在设计器画布上可视化设计智能体工作流——连接智能体、工具和模块,然后立即运行。
通过 Copilot 提升效率
利用 Copilot 直接通过自然语言生成节点、修复错误并迭代流程。
集成向量数据库
将文档上传至向量存储(vector store),让智能体基于您特定内容回答问题。
快速开始
云端托管:sim.ai
自托管:NPM 包
npx simstudio
注意
您的机器上必须安装并运行 Docker。
选项
| 标志 | 描述 |
|---|---|
-p, --port <port> |
运行 Sim 的端口(默认 3000) |
--no-pull |
跳过拉取最新的 Docker 镜像 |
自托管:Docker Compose
git clone https://github.com/simstudioai/sim.git && cd sim
docker compose -f docker-compose.prod.yml up -d
Sim 也支持通过 Ollama 和 vLLM 使用本地模型 — 详见 Docker 自托管文档 以了解配置细节。
自托管:手动设置
依赖: Bun、Node.js v20+、PostgreSQL 12+ 及 pgvector
- 克隆并安装:
git clone https://github.com/simstudioai/sim.git
cd sim
bun install
bun run prepare # 设置 pre-commit 钩子
- 设置带 pgvector 的 PostgreSQL:
docker run --name simstudio-db -e POSTGRES_PASSWORD=your_password -e POSTGRES_DB=simstudio -p 5432:5432 -d pgvector/pgvector:pg17
或者按照 pgvector 指南 手动安装。
- 配置环境变量:
cp apps/sim/.env.example apps/sim/.env
# 创建密钥
perl -i -pe "s/your_encryption_key/$(openssl rand -hex 32)/" apps/sim/.env
perl -i -pe "s/your_internal_api_secret/$(openssl rand -hex 32)/" apps/sim/.env
perl -i -pe "s/your_api_encryption_key/$(openssl rand -hex 32)/" apps/sim/.env
# 数据库迁移配置
cp packages/db/.env.example packages/db/.env
# 编辑两个 .env 文件,设置 DATABASE_URL="postgresql://postgres:your_password@localhost:5432/simstudio"
- 运行迁移:
cd packages/db && bun run db:migrate
- 启动开发服务器:
bun run dev:full # 启动 Next.js 应用和实时 socket 服务器
或者分别运行:bun run dev(Next.js)和 cd apps/sim && bun run dev:sockets(实时通信)。
Copilot API 密钥
Copilot 是一项由 Sim 管理的服务。要在自托管实例上使用 Copilot:
- 前往 https://sim.ai → 设置 → Copilot,生成一个 Copilot API 密钥
- 将生成的密钥设置为自托管实例中
apps/sim/.env文件里的COPILOT_API_KEY环境变量
环境变量
完整列表请参见环境变量参考,或查看 apps/sim/.env.example 了解默认值。
技术栈
- 框架:Next.js(App Router)
- 运行时:Bun
- 数据库:PostgreSQL + Drizzle ORM
- 身份认证:Better Auth
- UI:Shadcn、Tailwind CSS
- 流式 Markdown:Streamdown
- 状态管理:Zustand、TanStack Query
- 流程编辑器:ReactFlow
- 文档:Fumadocs
- 单仓库:Turborepo
- 实时通信:Socket.io
- 后台任务:Trigger.dev
- 远程代码执行:E2B
- 隔离代码执行:isolated-vm
贡献
欢迎贡献!详情请参见我们的贡献指南。
许可证
本项目采用 Apache License 2.0 许可证 — 请参阅 LICENSE 文件了解更多详情。
由 Sim 团队 ❤️ 制作