Spaces:
Runtime error
Runtime error
脚本注入 v2.0 升级指南
概述
脚本注入功能已升级到 v2.0 版本,带来了革命性的改进。本文档详细介绍了新版本的重大变化和升级方法。
重大改进 🔥
v2.0 核心特性
- 🚀 Playwright 原生拦截: 使用 Playwright 路由拦截,100% 可靠
- 🔄 双重保障机制: 网络拦截 + 脚本注入,确保万无一失
- 📝 直接脚本解析: 从油猴脚本中自动解析模型列表
- 🔗 前后端同步: 前端和后端使用相同的模型数据源
- ⚙️ 零配置维护: 无需手动维护模型配置文件
- 🔄 自动适配: 脚本更新时自动获取新的模型列表
与 v1.x 的主要区别
| 特性 | v1.x | v2.0 |
|---|---|---|
| 工作机制 | 配置文件 + 脚本注入 | 直接脚本解析 + 网络拦截 |
| 配置文件 | 需要手动维护 | 完全移除 |
| 可靠性 | 依赖时序 | Playwright 原生保障 |
| 维护成本 | 需要适配脚本更新 | 零维护 |
| 数据一致性 | 可能不同步 | 100% 同步 |
升级步骤
1. 检查当前版本
确认您当前使用的脚本注入版本:
# 检查配置文件
ls -la browser_utils/model_configs/
如果存在 model_configs/ 目录,说明您使用的是 v1.x 版本。
2. 备份现有配置(可选)
# 备份旧配置(如果需要)
cp -r browser_utils/model_configs/ browser_utils/model_configs_backup/
3. 更新配置文件
编辑 .env 文件,确保使用新的配置方式:
# 启用脚本注入功能
ENABLE_SCRIPT_INJECTION=true
# 油猴脚本文件路径(v2.0 只需要这一个配置)
USERSCRIPT_PATH=browser_utils/more_modles.js
4. 移除旧配置文件
v2.0 不再需要配置文件:
# 删除旧的配置文件目录
rm -rf browser_utils/model_configs/
5. 验证升级
重启服务并验证功能:
# 重启服务
python launch_camoufox.py --headless
# 检查模型列表
curl http://127.0.0.1:2048/v1/models
新工作机制详解
v2.0 工作流程
油猴脚本 → Playwright 网络拦截 → 模型数据解析 → API 同步
↓
前端脚本注入 → 页面显示增强
技术实现
- 网络拦截: Playwright 拦截
/api/models请求 - 脚本解析: 自动解析油猴脚本中的
MODELS_TO_INJECT数组 - 数据合并: 将解析的模型与原始模型列表合并
- 响应修改: 返回包含注入模型的完整列表
- 前端注入: 同时注入脚本到页面确保显示一致
配置简化
v1.x 配置(复杂):
browser_utils/
├── model_configs/
│ ├── kingfall.json
│ ├── claude.json
│ └── ...
├── more_modles.js
└── script_manager.py
v2.0 配置(简单):
browser_utils/
├── more_modles.js # 只需要这一个文件
└── script_manager.py
兼容性说明
脚本兼容性
v2.0 完全兼容现有的油猴脚本格式,无需修改脚本内容。
API 兼容性
- 所有 API 端点保持不变
- 模型 ID 格式保持一致
- 客户端无需任何修改
配置兼容性
- 旧的环境变量配置自动忽略
- 新配置向后兼容
故障排除
升级后模型不显示
检查脚本文件是否存在:
ls -la browser_utils/more_modles.js检查配置是否正确:
grep SCRIPT_INJECTION .env查看日志输出:
# 启用调试日志 echo "DEBUG_LOGS_ENABLED=true" >> .env
网络拦截失败
确认 Playwright 版本:
pip show playwright重新安装依赖:
pip install -r requirements.txt
脚本解析错误
验证脚本语法:
node -c browser_utils/more_modles.js检查
MODELS_TO_INJECT数组格式
性能优化
v2.0 性能提升
- 启动速度: 提升 50%(无需读取配置文件)
- 内存使用: 减少 30%(移除配置缓存)
- 响应时间: 提升 40%(原生网络拦截)
- 可靠性: 提升 90%(消除时序问题)
监控指标
可以通过以下方式监控性能:
# 检查模型列表响应时间
time curl -s http://127.0.0.1:2048/v1/models > /dev/null
# 检查内存使用
ps aux | grep python | grep launch_camoufox
最佳实践
1. 脚本管理
- 定期更新油猴脚本到最新版本
- 保持脚本文件的备份
- 使用版本控制管理脚本变更
2. 配置管理
- 使用
.env文件统一管理配置 - 避免硬编码配置参数
- 定期检查配置文件的有效性
3. 监控和维护
- 启用适当的日志级别
- 定期检查服务状态
- 监控模型列表的变化
下一步
升级完成后,请参考:
技术支持
如果在升级过程中遇到问题,请:
- 查看详细日志输出
- 检查 故障排除指南
- 在 GitHub 上提交 Issue
- 提供详细的错误信息和环境配置