Hacker News 熱門精选72

Launch HN:Respan (YC W24)——围绕插件构建的开源 Rust AI 网关

Launch HN: Respan (YC W24) – Open-source Rust AI gateway built around plugins

· 1小时前

精选理由

以插件化 Rust 网关灵活整合模型、协议与安全功能,帮助团队扩展 AI 基础设施而不改动核心。

AI 摘要

大家好,HN,我是 Respan(https://www.respan.ai)的 Andy。我们正在构建一个开源 Rust AI 网关。这是一个解耦的网关,因此一切都是插件,包括不同的服务提供商、协议(MCP、语音)、模态(图像、视频),以及网关功能(故障回退、个人身份信息脱敏、智能路由)。Respan 不会把大量服务提供商和功能打包进一个网关,而是提供一个小巧的核心和公开接口,让团队能够据此组装应用所需的 AI 基础设施。这样,用户就可以通过添加插件来构建自己的功能,而无须修改网关核心。视频演示:https://www.youtube.com/watch?v=pVv2ibXiTXM LLM 网关数不胜数,其中大多数解决的都是一个共同问题:通过单一端点调用不同的服务提供商。然而,添加新功能可能会变得极其困难。因此,开发者最终可能又得构建另一个网关来解决某个特定问题。自 2024 年以来,我们一直基于 LiteLLM 构建网关,如今它已为数千家组织提供服务。每家组织都需要不同的 API 密钥设置、路由和限制。为了满足这些需求,我们不断在 LiteLLM 外部添加封装,为其增加更多功能,一度让封装代码超过了 10 万行。今年 1 月,一次常规的 LiteLLM 升级导致了间歇性连接错误,我们不得不回滚。至今我们仍未查明原因,但从那以后,我们不再直接升级 LiteLLM,而是手动将上游修复移植到当前版本。这些经历让我们意识到,继续给 LiteLLM 打补丁并不是可持续的长期解决方案,我们必须自行重新设计网关。 在重新设计网关时,我们希望能够更轻松地添加功能,而不破坏现有功能。受 Nginx 启发,我们认为 AI 网关应该拥有一个非常小的核心,只负责分发事件。我们相信,网关中的一切都应该是插件,包括服务提供商(OpenAI、Anthropic、Gemini)、协议(聊天、实时语音、MCP)、模态(图像、视频),以及保障可靠性和安全性的网关功能(通过示例插件实现的智能路由、故障回退和个人身份信息脱敏)。此外,我们希望开发者能够通过添加自己的插件,轻松扩展网关的能力,而无须触碰核心。 添加服务提供商,即便是你自己的服务,也非常简单,因为各种特殊行为也是插件,并没有什么神秘之处。一个服务提供商只需一个简短的文件,Mistral 的实现只有 22 行,而每种特殊行为,比如 Groq 将 token 用量放在专用字段中,都有各自的测试。Respan Gateway 不只是让你通过 OpenAI SDK 调用 Claude 或 Gemini 模型。它还能自动处理工具、图像和推理协议:基于 OpenAI Realtime API 的应用也可以通过网关使用 Gemini Live,不过并非所有功能都能转换。一个简单的聊天应用可以使用在网关中配置的 MCP 工具,而无须自行实现 MCP。 我们还会将请求解析为一种共享结构。当客户端和服务提供商使用相同的 API 时,我们会以原生格式保留服务提供商特有的字段,即便共享结构中没有对应字段。这样,网关就能将这些字段写回,而不是丢弃它们。 工作原理如下:适配器将每个 HTTP 或 WebSocket 连接交给第一个能够识别它的客户端格式处理器。该格式处理器将请求呈现为由带类型的输入和输出事件组成的双向流。核心按注册顺序运行插件,允许插件选择服务提供商、过滤或封装任一方向的流、发起额外调用、返回响应或拒绝请求。随后,服务提供商的格式处理器会建立上游连接。如果客户端和服务提供商使用相同的格式,且没有插件修改载荷,原始字节和协议特有字段就可以原样透传。当格式不同时,则通过消息、工具调用、结果、流和用量等共享类型进行转换。这种流模型既能表示一次性的 HTTP 请求,也能表示长期保持连接的双向会话。 网关以 MIT 或 Apache-2.0 许可证开源,代码地址为 https://github.com/respanai/respan-gateway。你不需要使用 Respan 的托管平台,可以直接在本地机器上运行它。从源码构建,添加服务提供商密钥,然后替换受支持客户端中的基础 URL 即可。你可以继续使用客户端原本采用的 API。目前它仍处于 pre-alpha 阶段。我们的收入来自托管平台(https://www.respan.ai/pricing),该平台为你运行网关,提供原生可观测性、评估功能以及统一计费。 如果你正在为智能体构建路由、工具、过滤、可观测性或安全功能,我们很希望看到你将其做成插件。仓库中的 PLUGINS.md 说明了如何编写插件,并提供了我们迄今已创建插件的链接。将这些发展成一个生态系统,基本上就是我们的路线图,也欢迎你贡献自己的插件。我们非常乐意回答任何问题,并听取你的反馈!https://github.com/respanai/respan-gateway 评论链接:https://news.ycombinator.com/item?id=50167583 得分:4 评论数:0

查看原文(Hacker News 熱門)