refactor(provider): use LiteLLM as unified LLM requester backend

- Replace 23+ individual requester implementations with unified litellmchat.py
  - Add litellm_provider field to 27 YAML manifests for provider routing
  - Delete redundant requester subclasses
  - Add unit tests for LiteLLMRequester (29 tests)
  - Fix num_retries parameter name (was max_retries)
  - Fix exception handling order for subclass exceptions

  LiteLLM provides unified API for 100+ providers, eliminating need for
  provider-specific requesters.
This commit is contained in:
huanghuoguoguo
2026-04-24 22:32:33 +08:00
parent 101e04db6d
commit a62fce1cf7
58 changed files with 1161 additions and 3319 deletions

View File

@@ -160,7 +160,9 @@ class ModelProviderService:
return {'llm_count': llm_count, 'embedding_count': embedding_count, 'rerank_count': rerank_count}
async def find_or_create_provider(self, requester: str, base_url: str, api_keys: list) -> str:
async def find_or_create_provider(
self, requester: str, base_url: str, api_keys: list
) -> str:
"""Find existing provider or create new one"""
api_keys = self._normalize_api_keys(api_keys)