Respan(YC W24)推出以插件為核心的開源 Rust AI 閘道
Launch HN: Respan (YC W24) – Open-source Rust AI gateway built around plugins
Respan 推出以插件為核心的開源 Rust AI 閘道,採用小型核心,讓供應商、協議、模態及閘道功能以插件擴充。Respan Gateway 可處理工具、圖片及推理協議,並支援 OpenAI、Anthropic、Gemini 等供應商。程式以 MIT 或 Apache-2.0 授權開源,目前仍處於 pre-alpha,可在本機運行,無須使用 Respan 的託管平台。
Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Launch HN: Respan (YC W24) – Open-source Rust AI gateway built around plugins 14 points by Andydy251 hour ago | hide | past | favorite | 5 comments Hey HN, this is Andy from Respan (https://www.respan.ai). We are building an open-source Rust AI gateway. It is a decoupled gateway, so everything is a plugin, including different providers, protocols (MCP, voice), modalities (images, videos), and gateway features (fallbacks, PII redaction, smart routing). Instead of packaging tons of providers and features into one gateway, Respan provides a small core and public interfaces that teams can use to assemble the AI infrastructure their application needs. That way, users can build their own features as additional plugins without having to change the gateway's core. Here’s a video demo: https://www.youtube.com/watch?v=pVv2ibXiTXM There are countless LLM gateways and most of them solve a common problem: calling different providers from a single endpoint. However, adding new features can become prohibitively difficult. So developers can end up building another gateway to solve a specific problem. We've been building our gateway based on LiteLLM since 2024, and now it's providing services for thousands of orgs. Each org needs different API key settings, routes, and limits. To support that, we kept wrapping LiteLLM, adding more features to it, and at one stage, our wrapper code exceeded 100,000 lines. This January, a routine LiteLLM upgrade caused intermittent connection errors, and we had to roll back. We still haven't figured out the cause, but since then, we no longer upgrade LiteLLM directly and instead manually backport upstream fixes. These experiences made us realize that continuing to patch LiteLLM is not a sustainable long-term solution, and we had to redesign the gateway ourselves. While redesigning our gateway, we wanted to make it easier to add features without breaking existing ones. Inspired by Nginx, we think an AI gateway should have a really small core, only responsible for dispatching events. We believe that everything should be a plugin in our gateway, including providers (OpenAI, Anthropic, Gemini), protocols (chat, realtime voice, MCP), modalities (images, videos), and gateway features for reliability and security (smart routing, fallbacks, and PII redaction through example plugins). Beyond that, we want developers to be able to easily extend the gateway's capabilities by adding their own plugins, without touching the core. Adding a provider, even your own, is dead simple, because quirks are plugins too and there’s nothing magical about them. A provider is a short file, Mistral’s is 22 lines, and each quirk, like Groq putting token usage in its own field, gets its own test. Respan Gateway does more than let you call Claude or Gemini models from the OpenAI SDK. It handles tools, images, and reasoning protocols automatically: an application based on the OpenAI Realtime API can also use Gemini Live through the gateway, though not every feature translates. A simple chat app can use MCP tools configured in the gateway, without implementing MCP itself. We also parse requests into a shared structure. When the client and provider use the same API, we preserve provider-specific fields in their native format, even if our shared structure doesn't have a field for them. That way, the gateway can write them back instead of dropping them. Here’s how it works: An adapter hands each HTTP or WebSocket connection to the first client format that recognizes it. The format exposes the request as a two-way stream of typed input and output events. The core runs plugins in registration order, allowing them to choose a provider, filter or wrap either stream, make additional calls, return a response, or refuse the request. A provider format then opens the upstream connection. If the client and provider use the same format and no plugin changes the payload, the original bytes and protocol-specific fields can pass through unchanged. When formats differ, they translate through shared types for messages, tool calls, results, streams, and usage. This stream model can represent both one-shot HTTP requests and long-lived bidirectional sessions. The gateway is open source at https://github.com/respanai/respan-gateway under the MIT or Apache-2.0 license. You don't need to use Respan's hosted platform and can run it directly on your local machine. Build it from source, add your provider keys, and swap the base URL in a supported client. You can keep using the API your client already speaks. It's still pre-alpha. We make money from our hosted platform (https://www.respan.ai/pricing), which runs the gateway for you with native observability and evals, along with unified billing. If you’re building routing, tools, filtering, observability, or security for agents, we'd love to see it as a plugin. PLUGINS.md in the repo explains how to write one and links to the plugins we’ve created so far. Turning that into an ecosystem is basically our roadmap, and we welcome you to contribute your own plugins. We'd love to answer any questions and hear your feedback! https://github.com/respanai/respan-gateway help
blakeashleyjr19 minutes ago | next[–] What's your plugin model for Rust? Are they compiletime or interpreted? reply
m00dy15 minutes ago | prev | next[–] Good luck with the launch! Quick question: do you personally understand the Rust code in your project, or was the whole thing AI-assisted ? reply
verdverm25 minutes ago | prev[–] Why are plugins a desirable feature for core features? Today I use GoModel, and in example, all providers are built in. Having recently given Pi a try, the plugin ecosystem is a mess and I have more security worries. Can you explain why you think a plugin based system is preferable to a competent team building a complete, curated product? Plugins seems like a great way to expose yourself to supply chain security events. reply
Andydy256 minutes ago | parent[–] Hi, I hear your concerns, and we can clarify how this works. In Respan, plugins are not arbitrary executables that you download from a random repository. They are modular crates that you compile into your application. The benefit of this system is that it provides explicit processing boundaries. For example, a PII filter can register for relevant events without requiring changes across tangled client, provider, logging, and translation paths. This also makes it easier to compose features. reply
verdverm3 minutes ago | root | parent[–] So we cannot just run a docker image for a gateway, we will also need an entire CI process to use this paradigm? Crates are still an avenue for supply chain compromise, we've seen it before and I expect we will see in more frequently for a while, until out industry gets really serious about all the things around this. reply
Consider applying for YC's Winter 2027 batch! Applications are open till November 2. Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact Search:
來源:Hacker News:AI 熱帖 · news.ycombinator.com