Skip to content

Anthropic (Claude)

TL;DR

bash
ONGRID_ANTHROPIC_API_KEY=sk-ant-...
ONGRID_ANTHROPIC_MODEL=claude-sonnet-4-6     # default
ONGRID_ANTHROPIC_BASE_URL=                   # optional; relay / regional endpoint

Provider id : anthropic. Adaptateur SDK : API Anthropic Messages native (via le client Anthropic eino sous internal/pkg/llm/).

Variables d'env

VariableDéfautNotes
ONGRID_ANTHROPIC_API_KEYVide = provider retiré du catalogue
ONGRID_ANTHROPIC_MODELclaude-sonnet-4-6Le modèle utilisé quand aucun override par appel n'est posé
ONGRID_ANTHROPIC_BASE_URL(défaut API Anthropic)Override pour relais / endpoints régionaux
ONGRID_ANTHROPIC_MODELSclaude-opus-4-7,claude-sonnet-4-6,claude-haiku-4-5Séparé par virgules ; l'ensemble fermé que le picker SPA affiche

Les quatre sont seedés au premier démarrage dans system_settings.llm.anthropic_* via SetIfAbsent — les re-boots n'écrasent jamais les éditions opérateur dans l'UI Settings.

Catalogue par défaut

Out of box, le picker de modèle affiche ces trois modèles Claude :

  • claude-opus-4-7 — le modèle frontier. À utiliser pour les passes de cause racine difficiles où l'exactitude marginale bat le coût.
  • claude-sonnet-4-6 — le défaut. Coût / qualité équilibrés ; ce que le picker de chat présélectionne.
  • claude-haiku-4-5 — le bon marché. Recommandé pour l'extracteur structuré Pass-2 du RCA et pour les appels translate — prompts courts, réponses courtes, pas de boucle d'outils.

Éditez la liste dans la page /settings/llm de la SPA ou en surchargeant ONGRID_ANTHROPIC_MODELS au démarrage.

Override BaseURL

bash
ONGRID_ANTHROPIC_BASE_URL=https://api.anthropic-relay.example.com/v1

Utilisez ceci pour :

  • Proxies de relais corporate (la requête utilise encore votre clé Anthropic — le relais est transparent).
  • Endpoints régionaux — Anthropic ne publie pas plusieurs régions aujourd'hui, mais le bouton est là pour la parité avec d'autres providers.

L'URL de base par défaut est câblée dans cmd/ongrid/main.go:507 :

go
BaseURL: firstNonEmpty(cfg.LLM.Anthropic.BaseURL, "https://api.anthropic.com/v1"),

Faire d'Anthropic le défaut

bash
ONGRID_LLM_DEFAULT_PROVIDER=anthropic

Ou, depuis la SPA : /settings/llm → radio « Default provider ».

Le bouton default-provider contrôle ce que Chat() utilise quand aucun provider par appel n'est épinglé (le worker RCA, translate, le chat de la page d'accueil quand rien n'est sélectionné). Voir Routing pour le mécanisme de défaut dynamique qui laisse cela prendre effet sans redémarrage.

Sélection par appel

Le picker de modèle de l'UI de chat écrit à la fois provider et model dans l'enveloppe d'envoi de chat. Le router (RoutingChatModel.pick) prend l'option eino WithProvider(id) :

go
resp, err := chatModel.Generate(ctx, msgs,
    model.WithModel("claude-opus-4-7"),
    llm.WithProvider("anthropic"),
)

Particularités

  • Stop reasons — Anthropic renvoie son propre vocabulaire de stop-reason (end_turn, tool_use, max_tokens). L'adaptateur Ongrid les mappe vers le FinishReason standard eino pour que le code en aval n'ait pas à brancher.
  • Tool use — l'API tool-use d'Anthropic utilise des blocs de contenu, pas la forme tool_calls plate d'OpenAI. L'adaptateur fait la traduction de façon transparente ; vous écrivez les outils de la même façon peu importe le provider.
  • Messages système — Claude prend un seul paramètre system (string), pas un message role:system initial. L'adaptateur fusionne plusieurs messages système avec des séparateurs \n\n avant l'envoi.

Voir aussi

  • Aperçu des modèles — comment le catalogue s'assemble.
  • RoutingWithProvider, défauts dynamiques.
  • Budget — plafonds de tokens par jour qui s'appliquent globalement à travers les providers.