负载均衡
此功能在所有 Portkey 计划 中均可用。
负载均衡功能有效地将网络流量分配到多个 LLM 上。这确保了生成 AI 应用程序的高可用性和最佳性能,防止任何单个 LLM 成为性能瓶颈。
启用负载均衡
要启用负载均衡,您可以修改 config 对象以包含一个 strategy,并设置为 loadbalance 模式。
这是一个 75-25 负载均衡 OpenAI 和 Azure OpenAI 账户的快速示例
{
"strategy": {
"mode": "loadbalance",
},
"targets": [
{
"virtual_key": "openai-virtual-key",
"weight": 0.75
},
{
"virtual_key": "azure-virtual-key",
"weight": 0.25
}
]
}负载均衡的工作原理
定义负载均衡目标及其权重:您提供一个
virtual keys(或provider+api_key对)列表,并为每个目标分配一个weight值。权重表示应路由到每个目标的请求相对份额。权重标准化:Portkey 首先将您为目标提供的所有权重相加。然后,它将每个目标的权重除以总和,以计算该目标的标准化权重。这确保权重加起来为 1(或 100%),使 Portkey 能够按比例分配负载。
例如,假设您有三个目标,权重分别为 5、3 和 1。权重的总和为 9(5 + 3 + 1)。Portkey 将按如下方式标准化权重:
目标 1:5 / 9 = 0.55(占流量的 55%)
目标 2:3 / 9 = 0.33(占流量的 33%)
目标 3:1 / 9 = 0.011(占流量的 11%)
请求分配:当请求到达时,Portkey 根据标准化权重概率将其路由到目标 LLM。这确保流量根据指定的权重在 LLM 之间分配。
注意事项和考虑因素
虽然负载均衡功能提供了许多好处,但有几点需要考虑:
确保您列表中的 LLM 与您的用例兼容。并非所有 LLM 都提供相同的功能或以相同的格式响应。
注意您与每个 LLM 的使用情况。根据您的权重分配,您与每个 LLM 的使用情况可能会有显著差异。
请记住,每个 LLM 都有其自身的延迟和定价。多样化您的流量可能会对成本和响应时间产生影响。
Last updated