Fine-tuning de GPT-4o mini : le guide pas à pas (et ce qui change en 2026)

thibault monteiro guide
Mise à jour du 15 juin 2026. Publié initialement en juillet 2024, ce guide a été actualisé pour 2026 : modèles fine-tunables à jour et virage annoncé d’OpenAI sur le fine-tuning en self-service.

Personnaliser un modèle de langage pour qu’il parle votre langue, suive vos formats et connaisse votre métier : c’est exactement ce que promet le fine-tuning. GPT-4o mini reste l’un des petits modèles les plus pédagogiques pour s’y essayer. Mais avant de vous lancer, il faut connaître le virage que prend OpenAI en 2026.

Le fine-tuning consiste à ré-entraîner un modèle existant sur vos propres exemples, pour qu’il adopte un style d’écriture, respecte un format de réponse précis ou comprenne le vocabulaire de votre secteur. Concrètement, un chatbot de support qui répond du premier coup avec le bon ton, ou un classifieur de tickets qui ne se trompe plus de catégorie. Bonus non négligeable : un modèle fine-tuné a besoin de prompts plus courts, donc plus rapides et moins coûteux à l’inférence.

Ce guide vous montre les trois étapes du parcours :

  • Préparer vos données d’entraînement
  • Créer et entraîner votre modèle fine-tuné
  • Utiliser et évaluer votre modèle

Le fine-tuning OpenAI en 2026 : une porte qui se referme

Commençons par le fait qui change tout. En mai 2026, OpenAI a annoncé qu’il fermait progressivement sa plateforme de fine-tuning en self-serve. La plateforme n’est plus accessible aux nouveaux arrivants, et le calendrier est désormais public.

  • Depuis le 7 mai 2026, une organisation qui n’a jamais lancé de fine-tuning ne peut plus créer de nouveau job d’entraînement.
  • À partir du 2 juillet 2026, les organisations inactives depuis plus de 60 jours perdent aussi cet accès.
  • Le 6 janvier 2027, plus personne ne pourra créer de nouveau job de fine-tuning, y compris les clients historiques.

La raison invoquée par OpenAI est limpide : les modèles récents suivent si bien les instructions et les formats que le prompting bien fait suffit dans la majorité des cas. L’éditeur recommande désormais de privilégier l’ingénierie de prompt, la mise en place d’evals pour mesurer la qualité, la Responses API, et de démarrer tout nouveau projet sur GPT-5.5 plutôt que de fine-tuner un modèle plus ancien.

Faut-il en conclure que ce guide est périmé ? Pas si vite. Si votre organisation a déjà touché au fine-tuning, la fenêtre reste ouverte quelques mois. Et surtout, tous les modèles déjà fine-tunés continuent de fonctionner en inférence via les API Chat Completions et Responses, jusqu’à la dépréciation de leur modèle de base. Le savoir-faire décrit ici garde donc sa valeur, à condition de comprendre qu’il s’agit désormais d’une compétence de niche, et non plus du réflexe par défaut.

Quel petit modèle fine-tuner en 2026 ?

GPT-4o mini reste l’exemple de référence pour apprendre, parce que sa documentation et ses tutoriels sont partout. Mais si vous avez encore accès au fine-tuning, OpenAI oriente plutôt vers une génération plus récente.

  • gpt-4.1, gpt-4.1-mini et gpt-4.1-nano : la famille à privilégier, du plus capable au plus léger et économique.
  • gpt-4o-2024-08-06 : l’instantané de GPT-4o encore éligible au fine-tuning supervisé.
  • o4-mini : le seul modèle de raisonnement éligible au reinforcement fine-tuning.

Trois méthodes coexistent selon votre besoin. Le supervised fine-tuning (SFT) reste le point d’entrée, idéal pour imposer un format ou un style à partir d’exemples. La Direct Preference Optimization (DPO) apprend au modèle à préférer une bonne réponse à une mauvaise, par paires. Le reinforcement fine-tuning (RFT), réservé aux modèles de raisonnement, s’appuie sur une notation experte. Ce guide se concentre sur le SFT, la voie la plus accessible.

Préparer vos données d’entraînement

La première étape, et de loin la plus déterminante, consiste à rassembler des exemples propres et représentatifs des tâches que vous voulez confier au modèle. Un fine-tuning ne corrige pas un mauvais jeu de données : il l’amplifie.

Choisir les bons exemples. Sélectionnez des cas qui reflètent vos interactions réelles en production. Pour un chatbot, partez de conversations typiques de vos utilisateurs, pas de cas inventés trop parfaits.

Le format des données. OpenAI attend un fichier JSONL, où chaque ligne est un exemple au format chat : une liste de messages avec un rôle (system, user, assistant) et un contenu. Voici un exemple pour entraîner un chatbot au ton décalé :

{"messages": [{"role": "system", "content": "Léo est un chatbot factuel avec un sens de l'humour."}, {"role": "user", "content": "Qui a écrit 'Les Misérables' ?"}, {"role": "assistant", "content": "Victor Hugo, un gars qui savait écrire des pavés bien avant les tutos YouTube."}]}
{"messages": [{"role": "system", "content": "Léo est un chatbot factuel avec un sens de l'humour."}, {"role": "user", "content": "Combien de planètes y a-t-il dans le système solaire ?"}, {"role": "assistant", "content": "Huit, mais Pluton est toujours invité aux réunions de famille."}]}
{"messages": [{"role": "system", "content": "Léo est un chatbot factuel avec un sens de l'humour."}, {"role": "user", "content": "Quelle est la date de la prise de la Bastille ?"}, {"role": "assistant", "content": "Le 14 juillet 1789, la journée où les Parisiens ont décidé que c'était l'heure de la fête nationale."}]}
{"messages": [{"role": "system", "content": "Léo est un chatbot factuel avec un sens de l'humour."}, {"role": "user", "content": "Quelle est la vitesse de la lumière ?"}, {"role": "assistant", "content": "Environ 299 792 kilomètres par seconde. Plus rapide qu'une rumeur au lycée."}]}
{"messages": [{"role": "system", "content": "Léo est un chatbot factuel avec un sens de l'humour."}, {"role": "user", "content": "Quel est le plus grand océan sur Terre ?"}, {"role": "assistant", "content": "L'océan Pacifique, la piscine géante de la planète."}]}

Combien d’exemples ? OpenAI exige un minimum de 10 exemples, mais ce plancher ne sert qu’à valider la mécanique. Pour un résultat utile, visez plutôt 50 exemples au départ, puis enrichissez le jeu au fil de vos tests. Plus les exemples sont variés et fidèles à la réalité, plus le modèle généralise bien.

Séparer entraînement et test. Réservez une partie de vos données pour l’évaluation. L’ensemble d’entraînement forme le modèle, l’ensemble de test mesure objectivement les progrès. Sans cette séparation, vous n’avez aucun moyen de savoir si le modèle apprend vraiment ou s’il récite.

Les limites de tokens. Chaque modèle a ses plafonds. GPT-4o mini accepte un large contexte à l’inférence et une fenêtre d’entraînement confortable par exemple. Vérifiez que vos exemples ne dépassent pas ces limites, sous peine de troncatures qui dégradent l’apprentissage.

Estimer le coût. Le tarif d’entraînement se compte au million de tokens et dépend du modèle choisi. La logique reste la même quel que soit le modèle :

coût total = (tarif par 1M tokens ÷ 1 000 000) × tokens du fichier d'entraînement × nombre d'epochs

Pour un fichier de 100 000 tokens entraîné sur 3 epochs, la facture reste de l’ordre de quelques dizaines de centimes à quelques euros selon le modèle. Le fine-tuning d’un petit modèle n’a jamais été l’obstacle : c’est la qualité des données qui décide de tout.

Vérifier le format. Avant de lancer quoi que ce soit, validez votre fichier. Un outil comme JSONLint repère les erreurs de syntaxe sur une ligne isolée : https://jsonlint.com/

Validation JSON pour le fine-tuning OpenAI
Validation du format JSONL avant l’entraînement

OpenAI propose aussi un script qui contrôle votre fichier et estime le nombre de tokens, dans son cookbook officiel : chat_finetuning_data_prep

Créer et entraîner votre modèle fine-tuné

Vos données sont prêtes : le plus dur est fait. Place à l’entraînement proprement dit. Rappel utile pour 2026 : cette étape n’est disponible que si votre organisation dispose encore d’un accès au fine-tuning, et avant les échéances du calendrier de fermeture.

Accéder au tableau de bord. Connectez-vous à la plateforme OpenAI, puis rejoignez la section dédiée au fine-tuning : https://platform.openai.com/finetune

Charger les données. Dans cette section, sélectionnez l’option d’envoi de fichier et chargez votre JSONL d’entraînement. La plateforme valide le format au passage.

Interface de fine-tuning GPT sur la plateforme OpenAI
Création d’un job de fine-tuning sur la plateforme OpenAI

Lancer le fine-tuning. Créez un nouveau job, choisissez votre modèle de base, puis laissez les paramètres par défaut pour un premier essai. Vous pourrez ensuite ajuster le nombre d’epochs (le nombre de passages sur l’ensemble des données), le learning rate et la taille des batchs. Le job dure de quelques minutes à plusieurs heures selon la taille du jeu, et vous recevez un e-mail à la fin.

Paramètres du jeu de données de fine-tuning

Votre modèle s’entraîne. La prochaine étape consiste à vérifier qu’il répond vraiment à vos attentes, et pas seulement qu’il a terminé sans erreur.

Entraînement de fine-tuning terminé

Utiliser et évaluer votre modèle

Un fine-tuning qui se termine n’est pas un fine-tuning réussi. La vraie question est ailleurs : le modèle se comporte-t-il comme prévu sur des cas qu’il n’a jamais vus ? Pour le savoir, testez-le avec des exemples proches de la production, pas avec ceux de l’entraînement.

Utilisez le tableau de bord OpenAI ou l’API pour soumettre des requêtes de test, puis comparez les réponses au résultat attendu. Le modèle suit-il le style et le format définis pendant l’entraînement ?

Interface de test d'un modèle fine-tuné OpenAI

Si les résultats déçoivent, pas de panique. Deux leviers, dans cet ordre :

  • Revenir aux données. Identifiez où le modèle échoue, puis ajoutez des exemples clairs qui couvrent précisément ces cas. C’est presque toujours ici que se joue la qualité.
  • Ajuster les paramètres. Modifier le nombre d’epochs ou le learning rate peut aider à la marge. Testez plusieurs configurations et gardez la meilleure.

Une fois satisfait, vous pouvez intégrer le modèle dans votre application ou votre workflow.

Un exemple concret : votre modèle dans Google Sheets

Pour rendre tout cela tangible, voici comment appeler votre modèle fine-tuné directement depuis Google Sheets, via Apps Script. Pratique pour traiter une colonne de prompts en masse.

Ouvrez votre feuille, allez dans Extensions puis Apps Script, et collez ce script. Remplacez l’identifiant du modèle par celui de votre fine-tuning (ici sur la base gpt-4.1-mini) et votre clé API :

function onOpen() {
  var ui = SpreadsheetApp.getUi();
  ui.createMenu('OpenAI API')
      .addItem('Get Response', 'getResponse')
      .addToUi();
}

function getResponse() {
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  const range = sheet.getActiveRange();
  const numRows = range.getNumRows();
  const numCols = range.getNumColumns();

  for (let i = 0; i < numRows; i++) {
    for (let j = 0; j < numCols; j++) {
      const cell = range.getCell(i + 1, j + 1);
      var promptText = cell.getValue();
      if (!promptText) continue;

      const apiKey = 'votre_clé_api_openai';
      const apiURL = 'https://api.openai.com/v1/chat/completions';

      const payload = JSON.stringify({
        "model": "ft:gpt-4.1-mini:votre_organisation:votre_suffixe",
        "messages": [
          {"role": "system", "content": "Léo est un chatbot factuel avec un sens de l'humour."},
          {"role": "user", "content": `${promptText}`}
        ]
      });

      const options = {
        "method": "post",
        "contentType": "application/json",
        "payload": payload,
        "headers": { "Authorization": "Bearer " + apiKey },
        "muteHttpExceptions": false
      };

      try {
        const response = UrlFetchApp.fetch(apiURL, options);
        const json = JSON.parse(response.getContentText());
        const resultText = json.choices[0].message.content;
        cell.offset(0, 1).setValue(resultText);
      } catch (e) {
        Logger.log('Error: ' + e.toString());
      }
    }
  }
}

Enregistrez, retournez sur la feuille : un nouveau menu OpenAI API apparaît. Sélectionnez une plage de prompts, cliquez sur OpenAI API puis Get Response, et chaque réponse de votre modèle se range dans la cellule voisine.

Menu OpenAI API ajouté à Google Sheets

Vérifiez les sorties cellule par cellule. Si une réponse cloche, vous savez quoi faire : retour aux données d’entraînement, on ajoute l’exemple manquant, on relance.

Faut-il encore apprendre le fine-tuning en 2026 ?

Le mouvement de fond est clair : OpenAI ne pense plus le fine-tuning comme la première réponse à un besoin de personnalisation. Ce n’est plus une porte d’entrée, c’est devenu un outil de spécialiste, à sortir quand le prompting et les evals ont montré leurs limites.

Pour 90 % des cas, un bon system prompt sur un modèle récent comme GPT-5.5, complété d’exemples bien choisis et d’une batterie d’evals, fera aussi bien sans l’overhead d’un entraînement. Le fine-tuning garde son intérêt là où le format, le ton ou la latence comptent vraiment, et où vous disposez d’un jeu de données propre que personne d’autre n’a.

Reste une vraie question, et elle dépasse OpenAI : si même le leader du marché juge la personnalisation de modèle moins centrale que l’orchestration autour du modèle, où placerez-vous votre effort d’ingénierie l’an prochain, dans le modèle ou dans tout ce qui l’entoure ?

Sources

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *