ChatDev 开源项目使用教程
1. 项目介绍
ChatDev 是一个虚拟软件公司,通过各种智能代理(如首席执行官、首席产品官、首席技术官、程序员、评审员、测试员、艺术设计师等)来构建软件。这些代理形成了一个多代理组织结构,并通过参与专门的功能研讨会(如设计、编码、测试和文档编写)来协作完成任务。ChatDev 的主要目标是提供一个易于使用、高度可定制和可扩展的框架,该框架基于大型语言模型(LLMs),并适用于研究集体智能的理想场景。
2. 项目快速启动
2.1 克隆 GitHub 仓库
首先,克隆 ChatDev 的 GitHub 仓库到本地:
git clone https://github.com/10cl/chatdev.git
2.2 设置 Python 环境
确保你有一个 Python 3.9 或更高版本的环境。你可以使用 Conda 创建并激活这个环境:
conda create -n ChatDev_conda_env python=3.9 -y
conda activate ChatDev_conda_env
2.3 安装依赖
进入 ChatDev 目录并安装所需的依赖:
cd chatdev
pip3 install -r requirements.txt
2.4 设置 OpenAI API 密钥
导出你的 OpenAI API 密钥作为环境变量:
export OPENAI_API_KEY="your_OpenAI_API_key"
2.5 构建你的软件
使用以下命令启动软件构建,替换 [description_of_your_idea] 和 [project_name] 为你自己的描述和项目名称:
python3 run.py --task "[description_of_your_idea]" --name "[project_name]"
2.6 运行你的软件
软件生成后,你可以在 WareHouse 目录下找到你的项目文件夹,例如 project_name_DefaultOrganization_timestamp。进入该目录并运行你的软件:
cd WareHouse/project_name_DefaultOrganization_timestamp
python3 main.py
3. 应用案例和最佳实践
3.1 游戏开发
ChatDev 可以用于快速开发游戏。例如,你可以使用以下命令创建一个 2048 游戏:
python3 run.py --task "设计一个2048游戏" --name "2048" --org "THUNLP" --config "Default"
3.2 数据分析工具
ChatDev 还可以用于构建数据分析工具。你可以定义一个数据分析师的角色,并使用 ChatDev 生成相应的工具:
python3 run.py --task "构建一个数据分析工具" --name "DataAnalyzer" --org "DataScience" --config "Default"
4. 典型生态项目
4.1 ChatDev 社区贡献软件
ChatDev 社区已经贡献了许多有用的软件项目,你可以在 GitHub 仓库的 WareHouse 目录下找到这些项目。这些项目展示了 ChatDev 在不同领域的应用。
4.2 ChatDev 可视化工具
ChatDev 提供了一个可视化工具,可以帮助你实时查看软件开发过程的日志,并回放日志以分析开发过程。你可以在本地启动这个可视化工具,具体步骤请参考项目文档。
通过以上步骤,你可以快速上手并使用 ChatDev 构建你自己的软件项目。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0216
cann-learning-hubCANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。Jupyter Notebook0138
uni-appA cross-platform framework using Vue.jsJavaScript08
GLM-5.2智谱开源 GLM-5.2,这是针对长文本任务的最新旗舰模型。相较于前代产品 GLM-5.1,它在长文本任务处理能力上实现了显著飞跃,并且首次在稳定的 100 万 token 上下文中提供这一能力。Jinja00
SwanLab⚡️SwanLab - an open-source, modern-design AI training tracking and visualization tool. Supports Cloud / Self-hosted use. Integrated with PyTorch / Transformers / LLaMA Factory / veRL/ Swift / Ultralytics / MMEngine / Keras etc.Python00
tiny-universe《大模型白盒子构建指南》:一个全手搓的Tiny-UniverseJupyter Notebook03