<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Go on Sachin Chavan</title>
    <link>https://sachinsmc.me/blog/tags/go/</link>
    <description>Recent content in Go on Sachin Chavan</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Sun, 21 Jun 2026 12:00:00 +0400</lastBuildDate>
    <atom:link href="https://sachinsmc.me/blog/tags/go/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Failover Before the First Byte: An OpenAI-Compatible LLM Gateway in Pure Go</title>
      <link>https://sachinsmc.me/blog/posts/llm-relay-openai-gateway-go/</link>
      <pubDate>Sun, 21 Jun 2026 12:00:00 +0400</pubDate>
      <guid>https://sachinsmc.me/blog/posts/llm-relay-openai-gateway-go/</guid>
      <description>I just shipped llm-relay, a small OpenAI-compatible LLM gateway in pure Go (zero third-party dependencies). The interesting part is the failover: when a provider is rate-limited or down, it switches to the next one BEFORE any bytes reach the client, so the caller never sees half a stream and then a different model. Here is how it works, with the real code.</description>
    </item>
  </channel>
</rss>
