Anthropic (Claude)
TL;DR
ONGRID_ANTHROPIC_API_KEY=sk-ant-...
ONGRID_ANTHROPIC_MODEL=claude-sonnet-4-6 # default
ONGRID_ANTHROPIC_BASE_URL= # optional; relay / regional endpointProvider id : anthropic. Adaptateur SDK : API Anthropic Messages native (via le client Anthropic eino sous internal/pkg/llm/).
Variables d'env
| Variable | Défaut | Notes |
|---|---|---|
ONGRID_ANTHROPIC_API_KEY | — | Vide = provider retiré du catalogue |
ONGRID_ANTHROPIC_MODEL | claude-sonnet-4-6 | Le 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_MODELS | claude-opus-4-7,claude-sonnet-4-6,claude-haiku-4-5 | Sé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
ONGRID_ANTHROPIC_BASE_URL=https://api.anthropic-relay.example.com/v1Utilisez 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 :
BaseURL: firstNonEmpty(cfg.LLM.Anthropic.BaseURL, "https://api.anthropic.com/v1"),Faire d'Anthropic le défaut
ONGRID_LLM_DEFAULT_PROVIDER=anthropicOu, 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) :
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 leFinishReasonstandard 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_callsplate 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 messagerole:systeminitial. L'adaptateur fusionne plusieurs messages système avec des séparateurs\n\navant l'envoi.
Voir aussi
- Aperçu des modèles — comment le catalogue s'assemble.
- Routing —
WithProvider, défauts dynamiques. - Budget — plafonds de tokens par jour qui s'appliquent globalement à travers les providers.