Microsoft Agent-Lightning 设置与应用指南
本文档介绍了如何利用
microsoft/agent-lightning 自动优化 GIIP 代理的提示词(Prompt)。
🚀 概述
Agent-Lightning 是一个通过强化学习 (RL) 对代理提示词进行微调的框架。它利用操作历史作为数据集,寻找能让代理发挥更高性能的最佳指令。
[!IMPORTANT] Windows 用户注意:由于
使用了 Unix 专属库,请务必在 WSL2 或 Linux 环境下运行。agent-lightning
🛠️ 安装方法 (基于 WSL2 / Linux)
-
准备 Python 环境:
# 推荐使用 Python 3.10+ python3 -m venv venv source venv/bin/activate -
安装库:
pip install agentlightning -
配置 API 密钥: 设置环境变量,以便学习循环可以调用 LLM。
export AZURE_OPENAI_API_KEY="your-key" export AZURE_OPENAI_ENDPOINT="your-endpoint"
📈 应用流程
第一步:生成训练数据
在 Windows 环境的终端运行以下命令,将项目内的操作记录转换为数据集:
python giipdb/scripts/prompt_optimization/generate_dataset.py
成功后将生成
giipdb/scripts/prompt_optimization/giip_training_data.jsonl 文件。
第二步:启动强化学习 (WSL2)
使用生成的数据集微调代理指令:
# 在 WSL 终端执行 python giipdb/scripts/prompt_optimization/train_giip_role.py
第三步:应用优化结果
训练完成后,将得出的 Optimal Prompt 更新到
.agent/roles/ 文件夹内相应的 Markdown 文件中。
📊 预期效果
- 提高成功率:学习过往失败案例,防止类似错误再次发生。
- 自动提示词工程:利用基于数据的数据驱动优化,替代手动调优。
- 自主改进系统:在整个项目运营过程中提升代理的平均智能水平。
🩺 故障排除
| 症状 | 原因 | 解决 |
|---|---|---|
| 在 Windows 上安装或运行训练时出现 Unix 库相关错误 | 依赖 Unix 专属库 | 训练(第二步)在 WSL2 或 Linux 中运行。仅在 Windows 上执行数据集生成(第一步) |
| 运行第二步训练时找不到数据集 | 未运行第一步的 ,或路径不同 | 先运行第一步,确认是否生成了 |
| 训练循环调用 LLM 时出现认证错误 | 未设置 / 环境变量 | 在 WSL 会话中使用 设置这两个环境变量后重新运行 |
或版本错误 | Python 低于 3.10,或未激活 venv | 安装 Python 3.10+ 后,使用 激活虚拟环境 |