4 min de lecture · 688 mots

ChatGPT (OpenAI) : Guide de référence rapide

💻 Technologies: ChatGPT
📊 Difficulté: Intermédiaire

Modèles

Modèle Usage typique
GPT-4o Usage général, multimodal (texte, image)
Série « o » (raisonnement) Problèmes complexes nécessitant plusieurs étapes de raisonnement explicite
GPT-4o mini Réponses rapides, tâches simples, coût réduit

OpenAI fait évoluer sa gamme régulièrement. Vérifier platform.openai.com/docs/models pour la liste à jour et les dépréciations.

Interface web (chatgpt.com)

Custom GPTs

Un Custom GPT est une configuration réutilisable :
- Instructions personnalisées (comportement, ton, contraintes)
- Fichiers de connaissance (documents consultés par le GPT)
- Actions (appels à des API externes définis par un schéma OpenAPI)

Utile pour packager un assistant spécialisé (ex : « relecteur de configs Nginx ») réutilisable sans retaper le contexte.

Projects

Regroupe conversations, fichiers et instructions personnalisées sous un même contexte persistant – équivalent conceptuel aux Projects de claude.ai.

Canvas

Espace d’édition séparé de la conversation pour du texte ou du code long, avec historique de versions et édition ciblée (sélectionner un passage pour demander une modification localisée plutôt que régénérer tout le contenu).

Mémoire

ChatGPT peut retenir des informations entre conversations (préférences, contexte récurrent) si la mémoire est activée dans les paramètres. Consultable et modifiable manuellement – à vérifier périodiquement si le contexte semble incohérent.

API – bases

Authentification et endpoint (Chat Completions)

curl https://api.openai.com/v1/chat/completions 
  -H "Authorization: Bearer $OPENAI_API_KEY" 
  -H "Content-Type: application/json" 
  -d '{
    "model": "gpt-4o",
    "messages": [
      {"role": "system", "content": "Tu es un assistant technique concis."},
      {"role": "user", "content": "Explique la différence entre TCP et UDP en 3 phrases."}
    ]
  }'

Paramètres courants

Paramètre Rôle
model Identifiant du modèle
messages Historique avec rôles system/user/assistant
max_tokens Limite de tokens en sortie
temperature 0 = déterministe, plus haut = plus créatif
response_format Forcer une sortie structurée (ex : {"type": "json_object"})
stream true pour recevoir la réponse en flux
tools Déclaration de fonctions/outils appelables par le modèle

Sortie structurée (JSON)

{
  "model": "gpt-4o",
  "messages": [
    {"role": "user", "content": "Extrait le nom et la version depuis: nginx/1.24.0"}
  ],
  "response_format": {"type": "json_object"}
}

Force une réponse JSON valide plutôt qu’un texte libre à parser soi-même – utile pour intégrer la réponse dans un script sans post-traitement fragile.

Function calling / tools

{
  "model": "gpt-4o",
  "messages": [{"role": "user", "content": "Quel est l'état du service nginx ?"}],
  "tools": [
    {
      "type": "function",
      "function": {
        "name": "check_service_status",
        "description": "Vérifie l'état d'un service systemd",
        "parameters": {
          "type": "object",
          "properties": {
            "service_name": {"type": "string"}
          },
          "required": ["service_name"]
        }
      }
    }
  ]
}

Le modèle répond avec un appel de fonction structuré (nom + arguments) plutôt qu’une réponse texte, à exécuter côté application puis à renvoyer le résultat dans un tour suivant.

Bonnes pratiques de prompt

Séparer instructions système et demande utilisateur

Mettre le comportement permanent (ton, contraintes, format) dans le message system, la demande spécifique dans user – évite de répéter le contexte à chaque appel API.

Donner des exemples (few-shot)

Convertis ces logs au format structuré. Exemple :
Entrée : "2026-08-27 10:15:32 ERROR Connection refused on port 3306"
Sortie : {"date": "2026-08-27", "time": "10:15:32", "level": "ERROR", "message": "Connection refused on port 3306"}

Entrée : "2026-08-27 10:16:01 WARN High memory usage: 87%"
Sortie :

Un ou deux exemples avant la vraie tâche stabilisent fortement le format de sortie, surtout pour du parsing/formatage strict.

Demander une auto-vérification

Génère la config, puis relis-la toi-même et signale toute
incohérence avant de la présenter comme finale.

Limites à connaître

  • Pas d’accès internet en temps réel sauf activation explicite d’un outil de recherche.
  • Date de coupure des connaissances : vérifier la doc du modèle utilisé.
  • Le function calling exécute uniquement la déclaration de l’appel – le code réel de la fonction doit être implémenté et exécuté côté application, jamais côté modèle.

Une remarque, un retour ?

Cet article est vivant - corrections, contre-arguments et retours de production sont les bienvenus. Trois canaux, choisissez celui qui vous convient.

Laisser un commentaire