taolib.testing.multi_agent.llm.load_balancer#
LLM模型负载均衡器。
实现模型自动选择与负载均衡机制。
Classes#
LLM模型负载均衡器。 |
Module Contents#
- class taolib.testing.multi_agent.llm.load_balancer.LoadBalancer(config: taolib.testing.multi_agent.models.LoadBalanceConfig | None = None)#
LLM模型负载均衡器。
- _config#
- _providers: dict[str, taolib.testing.multi_agent.llm.protocols.BaseLLMProvider]#
- _instances: dict[str, taolib.testing.multi_agent.models.ModelInstance]#
- _round_robin_index = 0#
- register_provider(instance_id: str, provider: taolib.testing.multi_agent.llm.protocols.BaseLLMProvider) None#
注册模型提供商。
- 参数:
instance_id -- 实例ID
provider -- 模型提供商实例
- get_available_providers() list[tuple[str, taolib.testing.multi_agent.llm.protocols.BaseLLMProvider]]#
获取所有可用的提供商。
- 返回:
可用的提供商列表
- 返回类型:
- _select_round_robin(available: list[tuple[str, taolib.testing.multi_agent.llm.protocols.BaseLLMProvider]]) tuple[str, taolib.testing.multi_agent.llm.protocols.BaseLLMProvider]#
轮询策略选择。
- 参数:
available -- 可用提供商列表
- 返回:
选中的提供商
- 返回类型:
- _select_least_connections(available: list[tuple[str, taolib.testing.multi_agent.llm.protocols.BaseLLMProvider]]) tuple[str, taolib.testing.multi_agent.llm.protocols.BaseLLMProvider]#
最少连接策略选择。
- 参数:
available -- 可用提供商列表
- 返回:
选中的提供商
- 返回类型:
- _select_random(available: list[tuple[str, taolib.testing.multi_agent.llm.protocols.BaseLLMProvider]]) tuple[str, taolib.testing.multi_agent.llm.protocols.BaseLLMProvider]#
随机策略选择。
- 参数:
available -- 可用提供商列表
- 返回:
选中的提供商
- 返回类型:
- _select_weighted(available: list[tuple[str, taolib.testing.multi_agent.llm.protocols.BaseLLMProvider]]) tuple[str, taolib.testing.multi_agent.llm.protocols.BaseLLMProvider]#
加权随机策略选择。
- 参数:
available -- 可用提供商列表
- 返回:
选中的提供商
- 返回类型:
- select_provider() tuple[str, taolib.testing.multi_agent.llm.protocols.BaseLLMProvider]#
选择一个提供商。
- 返回:
选中的实例ID和提供商
- 返回类型:
- 抛出:
ModelUnavailableError -- 没有可用的提供商
- get_instance_stats(instance_id: str) taolib.testing.multi_agent.models.ModelInstance | None#
获取实例统计信息。
- 参数:
instance_id -- 实例ID
- 返回:
实例信息
- 返回类型:
Optional[ModelInstance]
- get_all_instances() list[taolib.testing.multi_agent.models.ModelInstance]#
获取所有实例信息。
- 返回:
实例列表
- 返回类型:
- get_provider(instance_id: str) taolib.testing.multi_agent.llm.protocols.BaseLLMProvider | None#
获取指定实例ID的提供商。
- 参数:
instance_id -- 实例ID
- 返回:
提供商实例,如果不存在则返回None
- 返回类型:
Optional[BaseLLMProvider]