3.3 KiB
3.3 KiB
AutoGen SDLC 系统 - 问题修复说明
🔧 已修复的问题
问题:Streamlit 运行时报错 'TERMINAL'
错误现象:
错误:'TERMINAL'
根本原因:
UserProxyAgent 的 human_input_mode="TERMINAL" 设置会在 Web 环境下尝试使用终端输入,导致 Streamlit 报错。
解决方案:
将所有文件中的 human_input_mode="TERMINAL" 改为 human_input_mode="NEVER"。
修改的文件
- ✅
frontend/streamlit_app_v2.py(第 224 行) - ✅
frontend/streamlit_app.py(第 104 行) - ✅
autogen_sdls_system.py(第 115 行)
🚀 现在可以正常运行了
方式 1: Streamlit 增强版界面(推荐)
streamlit run frontend/streamlit_app_v2.py
功能特色:
- 🎭 Agent 实时状态面板
- 🔄 Mermaid 工作流程图
- ⏱️ 执行时间线
- 💬 对话实录展示
- 📁 生成文件预览
- 📊 统计仪表盘
方式 2: Streamlit 经典界面
streamlit run frontend/streamlit_app.py
方式 3: 命令行完整工作流
python autogen_sdls_system.py
方式 4: HTML 独立演示(无需依赖)
# 直接在浏览器打开
demo_visualization.html
⚙️ 配置说明
环境变量设置
Windows PowerShell:
$env:DASHSCOPE_API_KEY="your_api_key_here"
Linux/Mac:
export DASHSCOPE_API_KEY="your_api_key_here"
依赖安装
pip install -r requirements.txt
或单独安装:
pip install streamlit autogen dashscope pytest
🎯 Agent 说明
| Agent | 职责 | 图标 |
|---|---|---|
| PM Agent | 产品经理 - 需求分析与 SRS 生成 | 📋 |
| QA Agent | 测试工程师 - 测试用例设计 | ✅ |
| Dev Agent | 开发工程师 - 代码实现 | 💻 |
| Orchestrator | 协调器 - 流程调度与验证 | 🎯 |
| User Proxy | 用户代理 - 人机交互 | 👤 |
📊 工作流程
用户需求
↓
📋 PM Agent → SRS 文档
↓
✅ QA Agent → 测试用例
↓
💻 Dev Agent → 源代码
↓
🔧 自动测试
↓ (失败)
💻 Dev Agent (修复)
↓ (通过)
🎯 Orchestrator → 最终报告
💡 使用提示
- API Key 获取: 访问 阿里云 DashScope 控制台
- 模型选择: 推荐使用
qwen3.5-flash(速度快、成本低) - 工作目录: 所有生成的文件保存在
workspace/目录 - 日志位置: 对话历史保存在
logs/目录 - 人机协同: 如需人工确认,可在代码中添加 Streamlit 弹窗
🐛 常见问题
Q1: 仍然报错怎么办?
检查清单:
- API Key 是否正确设置
- 依赖包是否安装完整
- Python 版本是否 >= 3.9
- 工作目录是否有写权限
Q2: 如何查看详细的错误信息?
在 Streamlit 界面查看底部的红色错误提示,或在命令行运行查看完整堆栈。
Q3: 生成的代码在哪里?
所有生成的文件都在 workspace/ 目录下,可以在 Streamlit 界面的"生成的文件"区域查看。
📞 技术支持
如有其他问题,请查看: