>_ DevTrendsnl

Taal

Home

Talen

Secties

Frontend Backend Mobiel DevOps AI / ML GameDev Blockchain Embedded Beveiliging
Go

De Neural Network-dierentuin temmen met TokenHub

TokenHub

Wanneer een team begint met het integreren van neurale netwerken in hun diensten, ontaardt sleutelbeheer vrijwel altijd in chaos. Ontwikkelaars gebruiken OpenAI, analisten experimenteren met DeepSeek en Qwen, iemand draait een lokale Llama via Ollama, en designers willen toegang tot afbeeldingsgeneratie. Aan het einde van de maand ziet de boekhouding de totale rekening en probeert uit te zoeken welke afdeling het budget heeft verbruikt.

Herkenbaar? Als je ooit geprobeerd hebt om de toegang tot tientallen verschillende LLM's te centraliseren, weet je hoeveel duct tape en improvisatie erin gaat: proxies, zelfgemaakte routers, log-aggregatoren. De auteur van het populaire Beego Go-framework (astaxie) heeft een project uitgebracht genaamd TokenHub, dat deze hoofdpijn wegneemt.

TokenHub supported providers

Wat er onder de motorkap zit en waarom je het nodig hebt

TokenHub is een private AI-gateway geschreven in Go. Je implementeert het binnen je infrastructuur, voegt API-sleutels van externe providers of adressen voor lokale modellen toe, en stelt één enkele uniforme interface naar buiten bloot.

Het kernidee is dat applicatieontwikkelaars hun code niet voor elke nieuwe API hoeven te herschrijven. TokenHub ondersteunt standaard OpenAI-eindpunten (/v1/chat/completions, /v1/embeddings, /v1/responses) en de Anthropic Messages-specificatie (/v1/messages). Als je service moet schakelen van GPT-4o naar Claude 3.5 Sonnet of een lokale vLLM, hoef je de clientcode niet te wijzigen—alleen de modelnaam bijwerken of een routeringsregel op de gateway configureren.

TokenHub interface

Kerngateway-functies

De repository richt zich op enterprise-scenario's waar kostenbeheer en duidelijke scheiding van verantwoordelijkheden cruciaal zijn.

Duidelijke rolverdeling

De interface en toegangsrechten in TokenHub zijn verdeeld over drie niveaus:

  • Reguliere gebruiker. Ziet de beschikbare modelcatalogus, maakt eigen projectsleutels aan, bekijkt persoonlijke statistieken en documentatie.
  • Teamleider. Beheert projectwerkruimtes, teamleden, gedeelde quota's, en ziet gedetailleerde kostenrapporten voor een specifiek project.
  • Administrator. Configureert externe providers, verbindt corporate SSO via OAuth/OIDC, en configureert failover- en auditregels.

Dit opzet is handig: teamleiders hoeven DevOps niet te lastig te vallen telkens wanneer een nieuwe stagair een testsleutel nodig heeft.

Slim routeren en failover

Als een externe provider een 500-fout retourneert of een rate limit bereikt, kan TokenHub automatisch verzoeken omschakelen naar back-upkanalen (failover). Je kunt prioriteiten instellen, gewichten voor het verdelen van de belasting over meerdere accounts, en de routegezondheid controleren via ingebouwde diagnostiek.

Ondersteuning voor meer dan 150 provider-sjablonen

Out of the box werkt de gateway met native adapters voor Azure OpenAI, Anthropic, Google Gemini, DeepSeek, Qwen, evenals lokale inferentieservers zoals vLLM en Ollama. Elke externe service met een OpenAI-compatibele API maakt verbinding via kant-en-klare sjablonen in een paar klikken.

Het is de moeite waard om de Codex-abonnementsintegratie te benadrukken: TokenHub kan aanroepen van lokale CLI-hulpprogramma's (bijv. Gemini CLI) doorgeven via geïsoleerde profielen.

Afbeeldingsgeneratie en -bewerking

Naast tekst en embeddings verwerkt het systeem afbeeldingsgeneratieverzoeken via eindpunten /v1/images/generations en /v1/images/edits. De gateway ondersteunt asynchrone taken en server-side opslag van gegenereerde afbeeldingen, waardoor clientapplicaties niet meer direct bestanden naar hun eigen S3 hoeven te downloaden.

Implementatie en architectuur

Het project is geschreven in Go en verbruikt minimale resources. SQLite wordt standaard gebruikt voor gegevensopslag, dus je kunt de service voor een klein team letterlijk in minuten opzetten zonder zware databases te hoeven draaien.

Voor testen op Linux via systemd:

curl -fsSL https://raw.githubusercontent.com/astaxie/TokenHub/main/deploy/native/install.sh \
  -o /tmp/tokenhub-install.sh
sudo bash /tmp/tokenhub-install.sh install

Of de klassieke Docker Compose-start:

cp deploy/.env.example deploy/.env
# Задайте надежные пароли в deploy/.env
./deploy/install.sh

Na opstart is de webbeheerconsole beschikbaar op poort 3000, en de API zelf accepteert verzoeken op poort 8080.

Als je van plan bent hoge belasting met meerdere backend-replica's, wordt SQLite eenvoudig vervangen door een externe PostgreSQL. In dat geval wordt de status verdeeld over instanties, en kunnen versie-updates centraal worden uitgerold.

Voor wie het project nu geschikt is

TokenHub is een uitstekende keuze als je:

  1. Interne AI-tools in je bedrijf ontwikkelt en de uitgaven centraal wilt bijhouden per project en afdeling.
  2. Een robuuste opzet bouwt met meerdere LLM-providers, waarbij één API die uitvalt niet je clientdienst hoeft plat te leggen.
  3. Lokale modellen (Ollama / vLLM) veilig wilt blootstellen aan je hele team zonder directe toegang te geven tot inferentieservers.
  4. Het beu bent om tientallen API-sleutels handmatig te beheren via verschillende dashboards.

Het project is nog vers, maar het wordt ondersteund door een ervaren maintainer, en de Go-codebase ziet er schoon en begrijpelijk uit. Als je twijfelt tussen zware commerciële oplossingen en zelfgemaakte proxies, is het zeker de moeite waard om TokenHub in een testomgeving op te zetten.

Gerelateerde projecten