refactor(llm_models): 将 LLMRequest 重构为模块化的策略驱动架构

此次重构旨在分解原有的单体 `LLMRequest` 类,以提高代码的可维护性、可扩展性和健壮性。通过引入多个遵循单一职责原则的内部辅助类,请求生命周期的各个阶段被清晰地分离开来。

主要变更包括:

- **引入 `_ModelSelector`**: 专门负责模型的动态选择、负载均衡和失败惩罚策略。该策略现在能对网络错误和服务器错误等严重问题施加更高的惩罚。

- **引入 `_PromptProcessor`**: 封装所有与提示词相关的处理逻辑,包括内容混淆、反截断指令注入以及响应内容的后处理(如提取思考过程)。

- **引入 `_RequestExecutor`**: 负责执行底层的API请求,包含自动重试、异常分类和消息体压缩等功能。

- **引入 `_RequestStrategy`**: 实现高阶请求策略,如模型间的故障转移(Failover),确保单个模型的失败不会导致整个请求失败。

`LLMRequest` 类现在作为外观(Facade),协调这些内部组件,为上层调用提供了更简洁、稳定的接口。
This commit is contained in:
minecraft1024a
2025-09-26 21:17:34 +08:00
parent 0478be7d2a
commit 50835498f0

File diff suppressed because it is too large Load Diff