Compétences en prompts IA
Dernière mise à jour : 2026-06-14
Your Trainer est une application de cyclisme en intérieur multi-cyclistes pour tablettes Android. Contrôle du home-trainer avec données locales + contrôle local. Achat unique.
L'AI Workout Coach génère un entraînement structuré à partir d'une description en texte brut. Plus le prompt est clair, meilleur est le résultat. Une poignée de schémas t'amène déjà à l'essentiel ; le reste est une question de goût.
.ytw file and runs the training-load math. Format-hallucination errors drop to near zero; history answers stop drifting between sessions.Ce que l'AI Coach voit réellement
Cette section couvre la génération d'entraînements — l'AI Workout Coach que tu lances depuis un onglet d'entraînement. L'Assistant Historique sur l'écran Workout History est un flux distinct avec d'autres entrées ; voir Interroger l'AI Coach sur ton historique ci-dessous.
Pour la génération d'entraînements, l'IA voit, dans cet ordre :
- Le texte que tu as saisi.
- L'onglet depuis lequel tu as lancé — Power ou Heart Rate. L'onglet Power renvoie des intervalles exprimés en pourcentage de la FTP ; l'onglet Heart Rate renvoie des intervalles ancrés sur des zones (Z1–Z5).
- Ta locale actuelle (afin qu'il choisisse la langue des étiquettes d'intervalles et des indices).
Les entraînements en puissance reviennent sous forme de pourcentages de la FTP (par exemple targetPowerPercent: 90 pour un bloc sweet spot) ; ton home-trainer applique localement, au moment de la séance, ta FTP enregistrée pour traduire cela en wattage. Le même entraînement généré peut ainsi être effectué correctement par un cycliste à 200 W et par un autre à 300 W — wattages différents, effort relatif identique. Passe un fichier .ytw à un ami et il fonctionnera aussi pour lui.
Si un entraînement doit s'inscrire dans un contexte — l'entraînement de la semaine dernière, ton style de sortie habituel, un plan sur plusieurs semaines que tu suis — mets ce contexte dans le prompt.
Anatomie d'un bon prompt
Les prompts vagues produisent des entraînements génériques. Les prompts précis produisent des entraînements ciblés. Cinq éléments à expliciter :
| Élément | Exemple | Pourquoi c'est utile |
|---|---|---|
| Durée totale | « 60 minutes au total » | Le modèle prend par défaut 45 à 60 minutes si tu ne précises rien. Précise toujours si tu veux autre chose. |
| Intensité | « 95–100 % de la FTP pour les blocs de travail » | « Dur » est ambigu. Une plage de wattage est concrète. |
| Structure | « Deux intervalles de 20 minutes avec 5 minutes de récupération entre les deux » | Désigne directement la forme de l'intervalle. |
| Cible de cadence | « Cadence basse, 60–70 RPM » | Optionnel. Utile pour le travail en cadence basse en montée ou les exercices à cadence élevée. |
| Indices de coaching | « Ajoute des indices de motivation pendant les blocs de travail » | Le modèle parsemera de courts textes en superposition dans les intervalles. |
Compare :
- Vague : « Un entraînement au seuil. »
- Mieux : « 60 minutes de travail au seuil avec deux intervalles de 20 minutes à 95–100 % de la FTP et un long échauffement. »
Bibliothèque de schémas
Prompts éprouvés qui produisent un résultat raisonnable. Copie, colle, ajuste les chiffres.
Endurance Z2
90 minutes of steady Z2 endurance at 65–72 % FTP.
10-minute warm-up ramping from 50 % to 65 %, then steady,
with a 5-minute cooldown.
Sweet Spot
60 minutes total. 15-minute warm-up, then two 18-minute
sweet-spot blocks at 90 % FTP with 5 minutes of Z2 between.
Cool down for the rest.
Seuil (2×20, 4×8)
2×20 at threshold: 75 minutes total, 15-minute warm-up, two
20-minute intervals at 95–100 % FTP separated by 8 minutes
of recovery, then cool down.
4×8 at threshold: 60 minutes total, 12-minute warm-up,
four 8-minute intervals at 100 % FTP with 4 minutes recovery
between, cool down for the rest.
Over-unders
Over-unders: 60 minutes total, 12-minute warm-up, three sets
of (3 minutes at 95 % FTP / 1 minute at 105 % FTP) with no
recovery within a set, 5 minutes Z2 between sets, cool down.
VO2 max
VO2max session, 50 minutes total. 15-minute warm-up, then
five 3-minute intervals at 115 % FTP with 3 minutes of easy
spinning between. Cool down at the end.
Micro-bursts
Microbursts: 45 minutes total. 10-minute warm-up, then 20
minutes of 30 seconds at 130 % FTP / 30 seconds at 50 % FTP
back to back. 15-minute cool-down.
Pyramide
Pyramid: 60 minutes total. 12-minute warm-up, then 1, 2, 3,
4, 3, 2, 1 minute Z5 efforts at 115 % FTP with equal-duration
recovery between. Cool down for the rest.
Récupération
30-minute recovery ride. Steady Z1 at 50 % FTP throughout,
high cadence (95–100 RPM). No intervals, no surges.
Test FTP
FTP test, 20-minute protocol: 15-minute warm-up with three
1-minute openers at 110 % FTP near the end, 5 minutes easy,
then 20 minutes all-out at 100 % FTP, then 10-minute cooldown.
Pour la variante plus douce du test en rampe, utilise l'entraînement FTP Test (Ramp) fourni dans l'onglet Power — il est calibré pour le flux de mise à jour de la FTP de l'application.
Simulation de course
90-minute race simulation: 15-minute warm-up, then alternating
between Z2 base (70 % FTP) and unpredictable surges — random
20-second to 90-second efforts at 110–130 % FTP every few
minutes. Steady Z2 cooldown at the end.
Prompts HR-Zone vs Power
Pour les séances pilotées par la fréquence cardiaque, génère depuis l'onglet Heart Rate — le contexte d'appel de l'éditeur détermine la forme de la sortie, donc le résultat sera des bandes HR-Zone plutôt que des pourcentages de puissance. Utilise les numéros de zone dans le prompt :
30 minutes of zone-2 endurance with two 3-minute zone-4
surges in the middle.
45 minutes total. Zone-2 base for 30 minutes, then 10 minutes
zone-3 tempo, then 5 minutes zone-2 cooldown.
La sortie en fréquence cardiaque se stabilise lentement par rapport à la puissance, donc les entraînements en HR-Zone laissent au cycliste davantage de temps pour s'installer dans une zone — garde des durées de bloc d'au moins 3 minutes pour les zones stables, et au moins 1 minute même pour les pointes.
Prompts pour les indices de coaching
Les indices de coaching sont de courts textes en superposition qui apparaissent sur le cockpit pendant une séance. Demande-les explicitement :
Threshold intervals with motivation cues during the work
blocks — "stay smooth", "find your rhythm", that kind of
thing.
VO2max session with cadence and form reminders — call out
the start of each interval and remind me to stay relaxed in
the shoulders.
Les indices sont stockés avec l'intervalle. Tu peux les modifier dans l'éditeur visuel après la génération si les choix de l'IA ne correspondent pas à ton goût.
Notes par fournisseur
Your Trainer prend en charge trois fournisseurs d'IA. Ils produisent tous du JSON .ytw valide, mais chacun a des particularités structurelles bonnes à connaître.
Gemini (par défaut)
Gemini Flash est rapide et économique ; Gemini Pro est plus lent et plus réfléchi. Le modèle par défaut gère bien la sortie structurée, donc l'analyse du JSON échoue rarement. Particularité : Gemini ajoute parfois du texte autour du JSON ; le parseur le supprime, donc cela reste invisible pour le cycliste.
OpenAI
Le modèle par défaut est gpt-4o. La qualité de sortie est constante et la fiabilité structurelle est élevée. Les limites de tokens font que les prompts très longs (descriptions de semaine d'entraînement sur plusieurs paragraphes) risquent davantage d'être tronqués — limite-toi à quelques phrases pour de meilleurs résultats.
Claude
Le modèle par défaut est claude-sonnet-4-6. Il est solide pour les parties rédigées de la sortie (le texte des indices se lit plus naturellement) et bon pour suivre des contraintes élaborées. Légèrement plus lent que Gemini Flash ; comparable à OpenAI.
Changer de fournisseur
Settings → AI Coach → Provider. Tu peux aussi remplacer le nom du modèle par défaut pour chaque fournisseur — utile si un nouveau modèle vient d'être publié et que tu veux l'essayer avant la mise à jour des valeurs par défaut de l'application.
URL de base OpenAI personnalisée (auto-hébergée)
Si tu fais tourner toi-même un point de terminaison d'API compatible OpenAI — LM Studio, Ollama, llama.cpp, un proxy d'entreprise — Settings → AI Coach → OpenAI Base URL te permet d'y diriger Your Trainer. Indique le point de terminaison alternatif, laisse la clé API à ce que ton point de terminaison attend (ou vide pour les points de terminaison qui n'en exigent pas), et les prompts iront là plutôt que vers openai.com. Utile pour garder la génération IA entièrement sur ton réseau local.
Traduction automatique des entraînements importés
Quand tu importes un entraînement rédigé dans une autre langue — un fichier .ytw avec des étiquettes et des indices en anglais, mais que tu utilises l'application en néerlandais — l'écran de détail de l'entraînement affiche un bouton Translate à côté des chaînes dans la langue d'origine. En appuyant dessus, les noms, descriptions, étiquettes et indices sont envoyés au fournisseur d'IA configuré et la traduction est réécrite dans le bloc de chaînes de l'entraînement.
Les chaînes traduites sont conservées avec l'entraînement, donc la prochaine fois que tu l'ouvres, tu vois directement la version localisée. Les chaînes d'origine sont préservées — la traduction ajoute une locale supplémentaire plutôt que de remplacer la source. Nécessite une clé d'API IA (Settings → AI Coach).
Interroger l'AI Coach sur ton historique
Le même fournisseur d'IA que tu as configuré pour la génération d'entraînements peut aussi répondre à une question sur ton historique d'entraînement. Ouvre l'écran Workout History et utilise la saisie Ask AI Coach — pose une question, obtiens une réponse textuelle qui résume tes séances et tes records personnels. Prompts utiles :
- « Quelle a été ma sortie la plus dure ce mois-ci ? »
- « Est-ce que je progresse sur les entraînements au seuil ? »
- « Comment se compare ma puissance moyenne en Z2 sur les quatre dernières semaines ? »
- « Montre-moi mes meilleurs parcours par efficacité. »
Ce qui est envoyé au fournisseur. L'Assistant Historique envoie ta FTP, ton poids (s'il est défini), ta fréquence cardiaque maximale (si elle est définie) et ta préférence d'unité, plus un résumé de tes ~10 dernières séances — date, type d'entraînement, durée, distance et dénivelé lorsqu'ils sont enregistrés, puissance moyenne et FC, travail total, ainsi que toutes les métriques dérivées qui ont été calculées (puissance normalisée, facteur d'intensité, indice de variabilité, TSS, puissance maximale sur des durées standard de 5 s à 20 min, facteur d'efficacité, temps dans chaque zone de FC, scores de respect du plan et de récupération). Limité au cycliste actif. Si tu préfères ne rien envoyer du tout au fournisseur, n'utilise pas l'Assistant Historique.
C'est en lecture seule — l'IA résume, compare et fait ressortir des tendances mais ne peut pas modifier tes données, supprimer des séances ni modifier des entraînements. Disponible sur les formules Pro et Family.
Modifier la sortie de l'IA à la main
La sortie de l'IA arrive directement dans l'éditeur visuel d'entraînements — chaque intervalle, indice et cible de cadence est un bloc standard que tu peux glisser, dupliquer ou supprimer. Pour des modifications plus poussées, enregistre l'entraînement, exporte-le en .ytw et modifie le JSON directement avec le schéma d'entraînement comme référence.
Un schéma courant : générer un entraînement à peu près correct, puis ajuster à la main un ou deux intervalles (un échauffement plus long, une récupération de forme légèrement différente) sans repasser par l'IA. Plus rapide que d'essayer de prompt-engineer la séance exacte.
Quand l'IA échoue
Depuis la v2.1.0, les parties déterministes de chaque flux IA (création d'entraînements, calculs de charge d'entraînement, validation) passent par le serveur MCP plutôt que par la sortie brute du LLM, donc l'ancien mode « Impossible d'analyser la réponse de l'IA en tant qu'entraînement » a quasiment disparu. Deux modes d'échec subsistent en usage normal :
- « Impossible de joindre le fournisseur d'IA. » Panne réseau ou panne du fournisseur. Réessaie ; vérifie la connexion de ta tablette. Si cela persiste, essaie un autre fournisseur — ils tombent en panne indépendamment.
- « L'IA a refusé de générer cet entraînement. » Refus pour cause de politique de contenu. Rare pour les prompts sportifs ; généralement déclenché par un langage que le modèle interprète comme décrivant un préjudice. Reformule de manière neutre.
Un mode dégradé : si le serveur MCP lui-même est injoignable, l'AI Workout Coach se rabat sur l'ancien chemin direct vers le LLM. La sortie reste valide la plupart du temps, mais le rare message « Impossible d'analyser » peut réapparaître jusqu'au retour du MCP. L'état du serveur public est indiqué sur la page intégrateurs.
Le catalogue de dépannage complet se trouve sur Troubleshooting → AI Workout Coach errors.
Ce qui se cache derrière les fonctionnalités IA
Depuis la v2.1.0, l'AI Workout Coach, l'Assistant Historique et la traduction d'entraînements font tous passer leur travail déterministe — création du fichier d'entraînement, calculs de charge d'entraînement, analyse de sortie, conversion de format — par le serveur MCP public de Your Trainer à l'adresse mcp.your-applications.com/your-trainer. Le modèle propose une intention ; le serveur MCP construit le .ytw, effectue les calculs et renvoie un résultat validé.
Ce découpage règle les deux problèmes de fiabilité de longue date :
- L'hallucination du format a disparu. Le modèle n'émet plus directement de JSON
.ytw, donc les sorties presque-valides-mais-malformées n'atteignent plus le chemin d'import. Les 5 à 10 % d'entraînements qui échouaient autrefois à l'analyse ne plantent tout simplement plus. - Les réponses historiques ne dérivent plus. Quand tu interroges l'Assistant Historique sur les tendances de charge d'entraînement, le véritable calcul sur les séries temporelles a lieu côté serveur, à partir de tes vrais chiffres. Deux cyclistes qui posent la même question sur le même historique obtiennent la même réponse.
Le MCP est sans état — aucune donnée conservée — et n'est invoqué que lorsque tu utilises une fonctionnalité qui en a besoin. Si tu préfères passer par ton propre serveur, la page intégrateurs documente le protocole ; si tu construis un outil qui dialogue avec les fichiers Your Trainer, tu peux utiliser le même backend toi-même. Voir la documentation intégrateurs →