Vous débutez complètement en programmation API ? Pas de panique. Cet article vous explique, étape par étape, comment connecter une application Go à un service d'IA compatible OpenAI en utilisant le pattern « coupe-circuit » (circuit breaker). On part de zéro, on installe les outils, on écrit le code ensemble, et on sécurise l'ensemble contre les pannes réseau. À la fin, vous disposerez d'un microservice de relais prêt pour la production.
Pour illustrer, j'utiliserai HolySheep AI — commencez par S'inscrire ici pour obtenir vos crédits gratuits. C'est une plateforme qui expose une API 100 % compatible OpenAI à des tarifs en moyenne 85 % moins chers que les fournisseurs directs. Vous pouvez payer en WeChat, Alipay ou RMB au taux fixe 1 ¥ = 1 $, et la latence mesurée reste sous les 50 ms sur la plupart des modèles.
1. Comprendre ce que l'on va construire (sans jargon)
Imaginez un restaurant très fréquenté :
- Le SDK OpenAI-compatible, c'est la commande passée au chef dans un langage qu'il comprend (Go).
- Le relais, c'est le serveur qui transmet votre commande à la cuisine (ici, HolySheep AI).
- Le coupe-circuit, c'est un disjoncteur électrique : si la cuisine tombe en panne, le serveur arrête immédiatement d'envoyer des commandes et vous prévient, au lieu d'attendre 30 secondes pour rien.
Concrètement, on va écrire un programme Go qui envoie des prompts à un modèle d'IA, mais qui :
- bascule automatiquement vers un modèle de secours si le principal tombe en panne ;
- évite d'envoyer des requêtes inutiles quand l'API est surchargée ;
- fournit des statistiques claires (succès, échecs, latence).
2. Pré-requis à installer
2.1 Installer Go (version 1.22 ou plus)
Sous Windows, téléchargez l'installateur sur https://go.dev/dl/ et suivez l'assistant. Sous macOS : brew install go. Sous Linux : sudo apt install golang-go. Pour vérifier, ouvrez un terminal et tapez go version — vous devez voir s'afficher quelque chose comme go version go1.22.0 linux/amd64.
2.2 Créer un compte HolySheep AI
- Allez sur S'inscrire ici.
- Créez votre compte avec votre e-mail ou connectez-vous via WeChat / Alipay.
- Une fois connecté, cliquez sur l'onglet « API Keys » dans le menu de gauche.
- Cliquez sur « Créer une nouvelle clé », donnez-lui un nom (par exemple
mon-premier-relais), puis copiez la clé affichée. Elle commence parhs-.... - Notez-la immédiatement dans un fichier sécurisé : vous ne pourrez plus la revoir en clair.
📸 Capture d'écran suggérée : la page « API Keys » avec le bouton « Créer une clé » entouré en rouge, et la nouvelle clé hs-... affichée dans une notification verte en haut à droite.
2.3 Initialiser le projet Go
mkdir relais-ia
cd relais-ia
go mod init relais-ia
go get github.com/sashabaranov/go-openai
go get github.com/sony/gobreaker
Deux bibliothèques ont été ajoutées : go-openai pour parler aux API de type OpenAI, et gobreaker pour le coupe-circuit.
3. Premier appel à l'API HolySheep
Créez un fichier main.go et collez ce code minimal :
package main
import (
"context"
"fmt"
"log"
"os"
openai "github.com/sashabaranov/go-openai"
)
func main() {
// 1. On récupère la clé API depuis une variable d'environnement
apiKey := os.Getenv("HOLYSHEEP_API_KEY")
if apiKey == "" {
log.Fatal("Erreur : définissez la variable d'environnement HOLYSHEEP_API_KEY")
}
// 2. On configure le client pour pointer vers HolySheep AI
config := openai.DefaultConfig(apiKey)
config.BaseURL = "https://api.holysheep.ai/v1"
client := openai.NewClientWithConfig(config)
// 3. On envoie une requête de chat
resp, err := client.CreateChatCompletion(
context.Background(),
openai.ChatCompletionRequest{
Model: "gpt-4.1",
Messages: []openai.ChatCompletionMessage{
{
Role: openai.ChatCompletionMessageRoleUser,
Content: "Explique-moi ce qu'est un coupe-circuit en une phrase.",
},
},
},
)
if err != nil {
log.Fatalf("Erreur API : %v", err)
}
fmt.Println("Réponse :", resp.Choices[0].Message.Content)
}
Test :
export HOLYSHEEP_API_KEY