海外访问:www.kdjingpai.com
Ctrl + D 收藏本站

Bifrost 是一个使用 Go 语言构建的高性能大语言模型(LLM)网关。它的核心作用是为开发者提供一个统一的接口,用于连接和管理多个不同的大模型供应商,例如 OpenAI、Anthropic、Amazon Bedrock 等。通过这个网关,应用程序无需为每个模型单独编写集成代码,从而简化了开发流程。Bifrost 的设计重点是性能和可靠性,它在处理大量请求时只增加微秒级的延迟。 它内置了自动故障切换和负载均衡功能,当某个模型或供应商出现问题时,系统可以自动将请求转发到备用选项,确保服务的连续性和稳定性。此外,Bifrost 还提供了一个可视化的网页界面,让用户可以实时监控请求、管理模型配置和查看分析数据,极大地简化了运维工作。

功能列表

  • 统一 API 接口:通过单个 API 端点连接超过10个主流大模型供应商,包括 OpenAI, Anthropic, Amazon Bedrock, Mistral, Ollama 等。
  • 高性能处理:使用 Go 语言构建,在每秒处理5000个请求的负载下,平均只增加约11微秒的延迟开销。
  • 内置 Web 用户界面:提供可视化的配置界面和实时监控仪表盘,用户可直接在浏览器中管理供应商、监控日志和分析指标,无需手动编辑配置文件。
  • 自动故障切换:当一个模型或供应商的请求失败时,能自动重试或切换到预设的备用模型,保障服务的稳定性。
  • 负载均衡与密钥管理:支持对 API 密钥进行动态和加权管理,有效地在多个密钥或供应商之间分配请求。
  • 开箱即用的可观测性:原生支持 Prometheus 指标,可以轻松集成到现有的监控系统中,无需额外的配置。
  • 多种集成方式:支持三种使用模式:作为独立的 HTTP 服务运行、作为 Go 语言包直接集成到应用中,或作为现有 OpenAI/Anthropic SDK 的直接替代品(只需修改 API 的基础 URL)。
  • 插件化架构:采用插件优先的架构设计,并支持模型上下文协议(MCP),方便扩展和集成外部工具。

使用帮助

Bifrost 提供了多种灵活的使用方式,最快的方式是通过 npx 命令启动一个本地 HTTP 服务,这种方式无需安装任何依赖,即可在30秒内拥有一个功能完备的 AI 网关。

1. 快速启动(HTTP 服务)

这是最简单、最快捷的方式,适合所有开发者。它会启动一个本地服务器以及一个配套的 Web 管理界面。

环境要求:

  • 安装了 Node.js (18+ 版本)。
  • 拥有至少一个大模型供应商的 API 密钥(例如 OpenAI)。

操作步骤:

第一步:启动 Bifrost 服务
在你的终端(命令行工具)中运行以下命令:

npx @maximhq/bifrost

执行后,该命令会自动下载并运行 Bifrost。服务默认会监听本地的 8080 端口。

第二步:配置供应商
服务启动后,在你的浏览器中打开以下地址,进入 Bifrost 的 Web 管理界面:
http://localhost:8080
在这个界面中,你可以直观地添加和管理不同的大模型供应商。例如,要添加 OpenAI,你只需点击“添加供应商”按钮,然后填入你的 OpenAI API 密钥即可。你还可以设置模型的权重、优先级等高级选项,用于负载均衡和故障切换。

第三步:测试 API 调用
配置完成后,你的应用程序就可以通过访问 Bifrost 的 8080 端口来调用大模型了。Bifrost 会将你的请求转发给目标供应商。你可以使用 curl 命令来测试服务是否正常工作:

curl -X POST http://localhost:8080/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "openai/gpt-4o-mini",
"messages": [
{"role": "user", "content": "你好,Bifrost!🌈"}
]
}'

如果收到来自模型的回复,说明你的网关已经成功运行。

2. 作为现有代码的直接替代品

如果你的代码中已经集成了 OpenAI 或 Anthropic 的 SDK,你可以用最少的代码改动来使用 Bifrost。

操作步骤:

  1. 按照上述“快速启动”方法,先运行 Bifrost 服务并完成供应商配置。
  2. 在你的应用程序代码中,找到初始化 SDK 时设置的 base_url 或 baseURL 参数。
  3. 将这个 URL 从官方接口地址修改为 Bifrost 服务的地址。

代码示例:
假设你原来的 OpenAI Python 代码是这样:

from openai import OpenAI
client = OpenAI(
api_key="YOUR_OPENAI_API_KEY",
# base_url="https://api.openai.com/v1"  # 这是原来的地址
)

你只需要将其修改为:

from openai import OpenAI
client = OpenAI(
api_key="YOUR_OPENAI_API_KEY", # 这里的 key 依然需要,但 Bifrost 会使用自己管理的 key
base_url="http://localhost:8080/v1" # 指向 Bifrost 网关
)

修改完成后,你的应用请求就会通过 Bifrost 进行转发,你将自动获得故障切换、负载均衡等所有网关功能,而无需更改任何其他的业务逻辑代码。

3. 作为 Go 语言包集成

对于 Go 语言开发者,可以直接将 Bifrost 的核心功能作为库集成到自己的应用程序中,以获得最高的性能和最强的控制力。

操作步骤:

  1. 在你的 Go 项目中,使用以下命令获取 Bifrost 核心包:
    go get github.com/maximhq/bifrost/core
    
  2. 在你的代码中导入并使用 Bifrost。你可以通过代码来配置供应商、路由规则和插件。这种方式避免了额外的 HTTP 通信开销,性能最佳。详细的 API 和使用方法可以参考项目官方文档。

应用场景

  1. 提升 AI 应用的稳定性
    对于需要持续提供服务的生产环境应用,模型的稳定性至关重要。通过 Bifrost 的自动故障切换功能,当主要模型(如 GPT-4)因故无法访问时,系统能自动切换到备用模型(如 Claude 3 或其他模型),确保用户的请求总能得到处理,从而避免服务中断。
  2. 降低和管理多模型使用成本
    不同的模型有不同的定价策略。开发者可以在 Bifrost 中配置多个模型,并设置路由规则,例如将计算密集的复杂任务交给性能强大但昂贵的模型,而将简单的常规任务分配给成本较低的模型。通过这种方式,可以在保证效果的前提下,显著优化运营成本。
  3. 简化多云或混合云部署
    企业可能会同时使用来自不同云服务商(如 AWS Bedrock, Azure OpenAI)的模型。Bifrost 提供一个统一的 API 入口,屏蔽了底层供应商的差异。这使得应用程序的部署和迁移变得更加简单,避免了平台锁定。
  4. 快速实验和切换新模型
    AI 领域模型更新迭代速度很快。当有新的、更优秀的模型出现时,开发者可以通过 Bifrost 的 Web 界面快速添加新模型并进行测试,甚至可以实现按流量比例进行 A/B 测试。整个过程无需修改和重新部署应用程序代码,大大加快了创新和迭代的速度。

QA

  1. Bifrost 和其他类似工具(如 LiteLLM)相比有什么优势?
    Bifrost 最主要的优势是性能。 它是用 Go 语言从头开始构建的,专为高并发、低延迟的生产环境设计。根据官方的性能测试,在相同硬件下,Bifrost 的延迟开销远低于 LiteLLM 等基于 Python 的工具,能够处理更高的请求并发量。 此外,它自带的可视化 Web 界面也让配置和监控变得更加简单直观。
  2. 使用 Bifrost 是否会影响数据隐私?
    Bifrost 是一个完全开源且可以自行部署的网关。 这意味着你可以将它部署在你自己的服务器或私有云环境中。所有请求和数据都只在你控制的基础设施内部流转,然后再直接发送给最终的大模型供应商,Bifrost 本身不会存储或将你的数据发送到任何第三方服务器,从而确保了数据隐私和安全。
  3. Bifrost 是否支持流式(Streaming)响应?
    是的,Bifrost 完全支持大模型的流式响应。当你向一个支持流式输出的模型(例如 OpenAI 的聊天模型)发起请求时,Bifrost 会将模型生成的数据块实时地传回给客户端,这对于构建实时的聊天机器人或代码生成等应用至关重要。
  4. 配置故障切换的具体流程是怎样的?
    在 Bifrost 的 Web 管理界面中,你可以为一个或多个主要模型设置备用(Fallback)模型列表。例如,你可以将 openai/gpt-4o-mini 设置为主要模型,然后将 anthropic/claude-3-haiku 和 google/gemini-1.5-flash 添加到它的备用列表中。当对 gpt-4o-mini 的请求失败后,Bifrost 会自动按照列表顺序依次尝试备用模型,直到请求成功为止。
0已收藏
0已赞

找不到AI工具?在这试试!

输入关键词,即可 无障碍访问 必应 搜索,快速找到本站所有 AI 工具。

回顶部

zh_CN简体中文