Skip to main content
Le fine-tuning dans Pioneer adapte un modèle de base à votre tâche et à votre domaine spécifiques en utilisant votre dataset étiqueté. Vous soumettez une tâche d’entraînement via l’API, Pioneer gère le calcul, et vous récupérez un modèle entraîné que vous pouvez appeler pour l’inférence ou télécharger. L’ensemble du processus est asynchrone : vous démarrez la tâche, puis vous interrogez son statut jusqu’à ce qu’elle se termine. Les nouvelles tâches d’entraînement Pioneer utilisent le fine-tuning supervisé (SFT). Consultez le guide de fine-tuning LLM pour le format des datasets et des exemples d’entraînement de décodeurs.

Cycle de vie d’une tâche d’entraînement

Le champ status d’une tâche d’entraînement passe par plusieurs états. Le chemin principal est le suivant :
1

requested

Votre tâche a été acceptée et est mise en file d’attente pour exécution. Pioneer alloue les ressources de calcul.
2

running

L’entraînement s’exécute activement sur le fournisseur.
3

complete

L’entraînement GPU s’est terminé avec succès. Les métriques de perte sont disponibles sur l’enregistrement de la tâche (voir Interrogation du statut et lecture des métriques), et les checkpoints sont prêts à être téléchargés ou déployés.
4

normalizing / artifact_ready

Étapes intermédiaires post-entraînement. Pioneer normalise et empaquette l’artefact entraîné. Vous ne verrez généralement ces états que de manière transitoire entre complete et deployed.
5

deployed

L’adaptateur entraîné est en ligne sur un fournisseur d’inférence et prêt à servir des requêtes via model_id.
Une tâche peut également se terminer par errored (une erreur est survenue pendant l’entraînement), stopped (vous l’avez arrêtée proprement avec POST /felix/training-jobs/:id/stop, les checkpoints sont conservés), terminated (vous avez appelé POST /felix/training-jobs/:id/terminate, qui arrête la tâche et supprime définitivement ses checkpoints, action irréversible), ou paused.

Paramètres clés

base_model est requis et doit correspondre à la forme d’un ID de modèle ou d’un UUID, pas à une chaîne libre. L’omettre, ou envoyer une valeur mal formée, renvoie 422. Une valeur bien formée qui ne correspond à aucun modèle disponible pour l’entraînement renvoie 400 à la place.

Démarrer une tâche d’entraînement

La réponse renvoie immédiatement l’enregistrement complet de la tâche, y compris un UUID id et le statut initial :
Conservez l’id. Vous l’utiliserez pour interroger le statut, récupérer les métriques et exécuter l’inférence sur votre modèle entraîné.

Interrogation du statut et lecture des métriques

Interrogez l’endpoint de la tâche jusqu’à ce que status atteigne une valeur terminale : complete, deployed, errored, stopped ou terminated :
Le champ metrics inclut toujours les valeurs de perte une fois l’entraînement démarré, plus F1/précision/rappel/exactitude si une évaluation distincte a été exécutée sur le modèle résultant :
Pour récupérer les lignes de log stdout/stderr structurées de la tâche :
Cela renvoie une liste JSON d’entrées de log ({id, timestamp, level, message, source}). Il s’agit d’un instantané ponctuel, pas d’un flux en direct. Interrogez-le périodiquement pendant que la tâche est running pour suivre la progression.

Arrêter ou terminer une tâche

Pour arrêter proprement une tâche en cours d’exécution tout en préservant ses checkpoints :
Le statut de la tâche passe à stopped. Les checkpoints enregistrés avant l’arrêt restent disponibles pour le déploiement ou le téléchargement. Pour mettre fin définitivement à une tâche et supprimer ses checkpoints à la place, utilisez /terminate :
/terminate arrête la tâche chez le fournisseur si elle est encore en cours et supprime définitivement tous ses checkpoints. Cette action est irréversible. Utilisez /stop à la place si vous voulez conserver les checkpoints entraînés jusqu’à présent.

Checkpoints et téléchargement des poids

Pioneer enregistre des checkpoints pendant l’entraînement. Vous pouvez les lister à tout moment après le démarrage de la tâche :
Chaque checkpoint porte les drapeaux is_best, is_final et is_deployable. Vous pouvez déployer n’importe quel checkpoint déployable, et pas seulement le dernier, sur un endpoint d’inférence en direct :
Pour télécharger les poids à la place, demandez une URL présignée (nécessite un plan Pro ou supérieur ; cet appel renvoie 403 sinon) :
La réponse est un JSON contenant un download_url qui expire dans 1 heure. Récupérez cette URL séparément pour obtenir le fichier réel :
Vous pouvez également utiliser un UUID de checkpoint comme valeur de base_model dans une nouvelle tâche d’entraînement pour poursuivre l’entraînement à partir de ce checkpoint.

Récapitulatif des endpoints d’entraînement