前言
在当今的人工智能领域,接入和使用各种大语言模型是非常重要的。
然而,随着技术的不断发展,各种AI模型框架也越来越多,管理和整合多个模型、服务提供商和密钥可能会变得复杂。
幸运的是,而今有一款名为“AI 网关”的开源项目可以帮助简化这一过程。
本篇小编将介绍这个令人振奋的项目,以及它的特色功能、使用方法和应用场景。
项目介绍
AI Gateway
是一个AI领域的开源工具,是应用程序和托管 LLM 之间的接口,通过统一简单的 API,让用户轻松快速接入 100 多种大语言模型,如 OpenAI、Anthropic、Mistral、LLama2、Google Gemini 等。
项目地址:https://github.com/Portkey-AI/gateway
特色功能
- ✅ 速度极快(快 9.9 倍),占用空间极小(已安装约 45kb)
- ✅ 跨多个模型、提供程序和密钥的负载平衡
- ✅ 回退确保您的应用程序保持弹性
- ✅ 默认情况下具有指数回退的 自动重试
- ✅ 插件中间件根据需要
- ✅ 经过超过100B 代币的战斗测试
四大特征
1、统一API签名
2、倒退
3、自动重试
4、负载均衡
使用方法
部署属于自己的私人网关,前提是电脑上安装Node.js 和npx
。
npx @portkey-ai/gateway
网关web服务启动之后,直接访问以下地址即可:
http://localhost:8787
而详细的用法及相关模型的调用是通过curl
命令请求的,比如使用OpenAI的模型:
curl '127.0.0.1:8787/v1/chat/completions' \ -H 'x-portkey-provider: openai' \ -H "Authorization: Bearer $OPENAI_KEY" \ -H 'Content-Type: application/json' \ -d '{"messages": [{"role": "user","content": "Say this is test."}], "max_tokens": 20, "model": "gpt-4"}'
支持的SDK基本上满足当下各种开发语言:Java、Python、GO、JS等。
支持接入的GPT产品有100+。以下只是一部门AI产品截图:
配置AI网关
AI 网关支持配置以启用多种路由策略,例如回退、负载平衡、重试等。 您可以在通过标头
进行 OpenAI 调用时使用这些配置x-portkey-config
// Using the OpenAI JS SDK const client = new OpenAI({ baseURL: "http://127.0.0.1:8787", // The gateway URL defaultHeaders: { 'x-portkey-config': {.. your config here ..}, } });
下面是官方提供的一个示例配置,比如:在回退到 Gemini Pro 之前重试 OpenAI 请求 5 次。
{ "retry": { "count": 5 }, "strategy": { "mode": "fallback" }, "targets": [{ "provider": "openai", "api_key": "sk-***" },{ "provider": "google", "api_key": "gt5***", "override_params": {"model": "gemini-pro"} }] }
还可以配置在 2 个 OpenAI 密钥之间实现均匀的负载平衡。
{ "strategy": { "mode": "loadbalance" }, "targets": [{ "provider": "openai", "api_key": "sk-***", "weight": "0.5" },{ "provider": "openai", "api_key": "sk-***", "weight": "0.5" } ] }
应用场景
AI Gateway
适用于各种人工智能应用场景,包括自然语言处理、文本生成、语音识别等。无论是个人开发者还是企业级应用,都可以受益于该工具的便捷性和稳定性。
总结
AI Gateway
是一个令人振奋的开源项目,为用户提供了轻松接入多种大语言模型的解决方案。
其极小的占用空间和快速的处理速度,以及丰富的特色功能,使其成为人工智能领域的导航工具。
通过该工具,用户可以更加高效地管理和集成多个模型,提高应用的稳定性和可靠性。如果你正在寻找一种简单而强大的方法来接入大语言模型,那么AI网关绝对值得一试。