Skip to content

Commit f3ad813

Browse files
committed
feat: Enhance documentation and configuration for script injection v3.0
- Updated README-Docker.md to reflect major upgrades in script injection configuration and features. - Revised advanced-configuration.md to recommend using UNIFIED_PROXY_CONFIG for proxy settings. - Improved api-usage.md with detailed explanations of the three-layer response retrieval mechanism. - Added architecture-guide.md to outline the modular architecture and component responsibilities. - Enhanced authentication-setup.md with simplified command line and .env configuration examples. - Updated daily-usage.md to clarify the three-layer response mechanism and recommended configurations. - Revised dependency-versions.md to reflect updates in FastAPI and Pydantic versions. - Added streaming-modes.md to detail the three-layer streaming response mechanism. - Improved troubleshooting.md with common proxy configuration issues and response retrieval failures. - Introduced ui_state_management.md to document the UI state enforcement functionality. - Enhanced webui-guide.md with new features and improvements in the chat interface and server information.
1 parent d29c155 commit f3ad813

17 files changed

Lines changed: 1439 additions & 367 deletions

README.md

Lines changed: 28 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -28,28 +28,27 @@ This project is generously sponsored by ZMTO. Visit their website: [https://zmto
2828

2929
## 系统要求
3030

31-
* **Python**: >=3.9, <4.0 (推荐 3.10+ 以获得最佳性能)
32-
* **依赖管理**: [Poetry](https://python-poetry.org/) (现代化Python依赖管理工具)
33-
* **类型检查**: [Pyright](https://github.com/microsoft/pyright) (可选,用于开发时类型检查)
34-
* **操作系统**: Windows, macOS, Linux (完全跨平台支持)
35-
* **内存**: 建议 2GB+ 可用内存
36-
* **网络**: 稳定的互联网连接访问 Google AI Studio
31+
* **Python**: >=3.9, <4.0 (推荐 3.10+ 以获得最佳性能,Docker环境使用3.10)
32+
* **依赖管理**: [Poetry](https://python-poetry.org/) (现代化Python依赖管理工具,替代传统requirements.txt)
33+
* **类型检查**: [Pyright](https://github.com/microsoft/pyright) (可选,用于开发时类型检查和IDE支持)
34+
* **操作系统**: Windows, macOS, Linux (完全跨平台支持,Docker部署支持x86_64和ARM64)
35+
* **内存**: 建议 2GB+ 可用内存 (浏览器自动化需要)
36+
* **网络**: 稳定的互联网连接访问 Google AI Studio (支持代理配置)
3737

3838
## 主要特性
3939

40-
* **OpenAI 兼容 API**: 支持 `/v1/chat/completions` 端点,完全兼容 OpenAI 客户端
41-
* **流式和非流式响应**: 支持实时流式输出和传统的完整响应模式
40+
* **OpenAI 兼容 API**: 支持 `/v1/chat/completions` 端点,完全兼容 OpenAI 客户端和第三方工具
41+
* **三层流式响应机制**: 集成流式代理 → 外部Helper服务 → Playwright页面交互的多重保障
4242
* **智能模型切换**: 通过 API 请求中的 `model` 字段动态切换 AI Studio 中的模型
43-
* **完整参数控制**: 支持 `temperature``max_output_tokens``top_p``stop` 等所有主要参数
43+
* **完整参数控制**: 支持 `temperature``max_output_tokens``top_p``stop``reasoning_effort` 等所有主要参数
4444
* **反指纹检测**: 使用 Camoufox 浏览器降低被检测为自动化脚本的风险
45-
* **多层响应获取**: 集成流式代理、外部 Helper 服务、Playwright 页面交互的多重保障机制
46-
* **脚本注入功能**: 支持油猴脚本动态挂载,实现与前端显示效果100%一致的模型增强 🆕
47-
* **现代化 Web UI**: 内置测试界面,支持实时聊天、状态监控、API密钥管理
45+
* **脚本注入功能 v3.0**: 使用 Playwright 原生网络拦截,支持油猴脚本动态挂载,100%可靠 🆕
46+
* **现代化 Web UI**: 内置测试界面,支持实时聊天、状态监控、分级API密钥管理
4847
* **图形界面启动器**: 提供功能丰富的 GUI 启动器,简化配置和进程管理
4948
* **灵活认证系统**: 支持可选的API密钥认证,完全兼容OpenAI标准的Bearer token格式
50-
* **模块化架构**: 采用清晰的模块化设计,便于维护和扩展
51-
* **统一配置管理**: 基于 `.env` 文件的统一配置方式,支持环境变量覆盖
52-
* **现代化开发工具**: 集成 Poetry 依赖管理和 Pyright 类型检查,提供优秀的开发体验
49+
* **模块化架构**: 清晰的模块分离设计,api_utils/、browser_utils/、config/ 等独立模块
50+
* **统一配置管理**: 基于 `.env` 文件的统一配置方式,支持环境变量覆盖,Docker兼容
51+
* **现代化开发工具**: Poetry 依赖管理 + Pyright 类型检查,提供优秀的开发体验
5352

5453
## 系统架构
5554

@@ -250,12 +249,14 @@ poetry update
250249
- [脚本注入指南](docs/script_injection_guide.md) - 油猴脚本动态挂载功能使用指南 (v3.0) 🆕
251250

252251
#### ⚙️ 高级配置
252+
- [流式处理模式详解](docs/streaming-modes.md) - 三层响应获取机制详细说明 🆕
253253
- [高级配置指南](docs/advanced-configuration.md) - 高级功能和配置选项
254254
- [日志控制指南](docs/logging-control.md) - 日志系统配置和调试
255255
- [故障排除指南](docs/troubleshooting.md) - 常见问题解决方案
256256

257257
#### 🛠️ 开发相关
258-
- [开发者指南](docs/development-guide.md) - Poetry、Pyright 和开发工作流程 🆕
258+
- [项目架构指南](docs/architecture-guide.md) - 模块化架构设计和组件详解 🆕
259+
- [开发者指南](docs/development-guide.md) - Poetry、Pyright 和开发工作流程
259260
- [依赖版本说明](docs/dependency-versions.md) - Poetry 依赖管理和版本控制详解
260261

261262
## 客户端配置示例
@@ -326,14 +327,19 @@ bash update.sh
326327
327328
## 重要提示
328329
329-
### 响应获取与参数控制
330+
### 三层响应获取机制与参数控制
330331
331-
* **响应获取优先级**: 项目采用多层响应获取机制
332-
1. **集成的流式代理服务**: 默认启用,提供最佳性能
333-
2. **外部 Helper 服务**: 可选配置
334-
3. **Playwright 页面交互**: 后备方案
332+
* **响应获取优先级**: 项目采用三层响应获取机制,确保高可用性
333+
1. **集成流式代理服务 (Stream Proxy)**: 默认启用,端口3120,提供最佳性能和稳定性
334+
2. **外部 Helper 服务**: 可选配置,需要有效认证文件,作为备用方案
335+
3. **Playwright 页面交互**: 最终后备方案,通过浏览器自动化获取响应
335336
336-
* **参数控制**: API 请求中的模型参数(如 `temperature`, `max_output_tokens`, `top_p`, `stop`**仅在通过 Playwright 页面交互获取响应时生效**。使用集成流式代理或外部 Helper 服务时,参数传递取决于这些服务的实现。
337+
* **参数控制机制**:
338+
- **流式代理模式**: 支持基础参数传递,性能最优
339+
- **Helper服务模式**: 参数支持取决于外部服务实现
340+
- **Playwright模式**: 完整支持所有参数(`temperature`, `max_output_tokens`, `top_p`, `stop`, `reasoning_effort`等)
341+
342+
* **脚本注入增强**: v3.0版本使用Playwright原生网络拦截,确保注入模型与原生模型100%一致
337343
338344
### 客户端管理历史
339345

browser_utils/__init__.py

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,11 @@
1515
switch_ai_studio_model,
1616
load_excluded_models,
1717
_handle_initial_model_state_and_storage,
18-
_set_model_from_page_display
18+
_set_model_from_page_display,
19+
_verify_ui_state_settings,
20+
_force_ui_state_settings,
21+
_force_ui_state_with_retry,
22+
_verify_and_apply_ui_state
1923
)
2024
from .script_manager import ScriptManager, script_manager
2125

@@ -40,6 +44,10 @@
4044
'load_excluded_models',
4145
'_handle_initial_model_state_and_storage',
4246
'_set_model_from_page_display',
47+
'_verify_ui_state_settings',
48+
'_force_ui_state_settings',
49+
'_force_ui_state_with_retry',
50+
'_verify_and_apply_ui_state',
4351

4452
# 脚本管理相关
4553
'ScriptManager',

0 commit comments

Comments
 (0)