Hybride : prompt et réglage léger
Combiner les deux approches.
Hybride : prompt et réglage léger est une leçon AI Prompt Engineering gratuite sur CoddyKit. Ceci est la leçon 3 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage AI Prompt Engineering, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours AI Prompt Engineering comprend 4 leçons au total.
L’état d’esprit hybride
La formulation d’instructions et le réglage fin ne sont pas des rivaux — ce sont des couches. L’approche experte consiste à utiliser un modèle légèrement réglé qui gère les comportements stables et appris, entouré d’une fine couche d’instructions fournissant le contexte variable propre à chaque requête.
- Le réglage fin absorbe ce qui est stable : format, voix, cadrage de la tâche
- La formulation d’instructions fournit ce qui est variable : consignes, faits récupérés, état de l’utilisateur
- Chaque couche fait ce qu’elle sait faire de mieux ; aucune ne porte toute la charge
Décomposition stable/volatile
La compétence hybride essentielle consiste à répartir le comportement selon l’axe stable/volatile. Tout ce qui est identique d’un appel à l’autre et coûteux à répéter dans l’invite est candidat à l’ajustement. Tout ce qui change à chaque appel doit rester dans l’invite.
Si vous vous trompez dans un sens ou dans l’autre, vous y perdez : intégrer un contenu volatil aux poids vous oblige à réajuster le modèle pour le modifier ; conserver un contenu stable dans l’invite vous impose de payer indéfiniment son coût en jetons.
# Classify each behavior element before deciding where it lives
def placement(element):
# element: dict with 'changes_per_call' and 'repeated_every_call'
if element['changes_per_call']:
return 'PROMPT' # volatile -> must stay dynamic
if element['repeated_every_call']:
return 'WEIGHTS' # stable + repetitive -> distill into tuning
return 'PROMPT' # default to the flexible layer
print(placement({'changes_per_call': False, 'repeated_every_call': True}))
# WEIGHTSMotif A : distillation de l’invite
Le motif hybride le plus précieux. Vous concevez une invite longue et de grande qualité, vous l’utilisez pour générer des sorties de référence, puis vous ajustez un modèle sur ces sorties avec une invite courte.
Résultat : le modèle se comporte comme s’il disposait encore de l’invite longue, mais vous ne fournissez qu’une fraction des jetons. L’invite coûteuse devient l’enseignant ; l’invite économique devient l’interface d’exécution. Latence, coût et cohérence s’améliorent simultanément.
# Build distillation set: long prompt -> output, store with SHORT prompt
def distill_example(input_x, long_prompt, teacher):
full = long_prompt + '\n\n' + input_x
gold = teacher(full) # quality from the long prompt
short = 'Task: process the input.\n' + input_x # runtime prompt
return {'messages': [
{'role': 'user', 'content': short},
{'role': 'assistant', 'content': gold},
]}Motif B : ajuster la forme, fournir le contenu par invite
Ajustez le modèle pour qu’il produise toujours la bonne structure — un schéma strict, un ton maison, un DSL de domaine — et laissez l’invite fournir le contenu propre à chaque requête.
Cette approche est idéale lorsque la conformité au format doit être quasi parfaite et que les règles sont trop nombreuses pour être énumérées, mais que le contenu proprement dit est entièrement dynamique. Le modèle ajusté se conforme à la structure sans difficulté, ce qui libère des jetons de l’invite pour les instructions et le contexte récupéré.
Motif C : routeur ajusté + experts guidés par invite
Dans les systèmes à plusieurs étapes, ajustez un petit modèle rapide pour la décision ciblée et fréquente (classification, routage, extraction) et gardez un grand modèle guidé par invite pour les étapes de raisonnement ouvertes.
Vous bénéficiez du coût et de la latence d’un petit modèle ajusté lorsque la tâche est ciblée, ainsi que de la souplesse des invites lorsque la tâche est vaste. Le routeur est stable et ajusté ; les experts restent pilotables par invite à mesure que les exigences évoluent.
def pipeline(user_input, router_tuned, expert_prompted):
route = router_tuned(user_input) # cheap, fast, learned
if route == 'simple':
return router_tuned(user_input) # small model handles it
# complex -> hand to large prompted model with full instructions
return expert_prompted(
'Detailed instructions...\n' + user_input
)Garder RAG dans la couche des invites
Même avec un modèle ajusté, les connaissances restent récupérées et non apprises par entraînement. Le modèle hybride apprend comment utiliser le contexte ; l’invite fournit quel contexte utiliser pour cette requête.
C’est pourquoi les modèles hybrides vieillissent bien : le comportement de base est figé dans les poids, mais les faits sont actualisés à chaque appel grâce à la récupération. Vous réajustez rarement le comportement, tout en mettant constamment à jour les connaissances, sans coût d’entraînement.
Ajustement léger : LoRA et adaptateurs
L’approche hybride privilégie l’ajustement léger. Les adaptateurs de type LoRA entraînent un petit ensemble de paramètres supplémentaires tout en laissant le modèle de base figé. Ils sont économiques, rapides à faire évoluer et combinables.
- Entraîner plusieurs adaptateurs pour différentes tâches sur un même modèle de base
- Changer d’adaptateur au moment du déploiement sans recharger le modèle de base
- Réentraîner un adaptateur en quelques heures, et non en quelques jours, lorsque le comportement dérive
L’approche hybride conserve ainsi une vitesse d’itération proche de celle des invites, tout en bénéficiant de la cohérence de l’ajustement.
Éviter la double spécification
Un bug hybride classique : le modèle est ajusté pour effectuer X et l’invite continue d’indiquer X. Ces jetons d’invite redondants vont à l’encontre de la distillation et peuvent même entrer en conflit avec le comportement appris.
Après l’ajustement, utilisez trim pour élaguer agressivement l’invite de tout ce qui est désormais intégré aux poids. Relancez l’évaluation après ce trim afin de vérifier que le comportement ajusté se maintient sans les instructions redondantes.
# After tuning, prune prompt lines that the model now does on its own
def trim_prompt(prompt_lines, behaviors_in_weights):
return [ln for ln in prompt_lines
if not any(b in ln for b in behaviors_in_weights)]
kept = trim_prompt(
['Use JSON schema', 'Write in formal tone', 'Answer the question'],
behaviors_in_weights=['JSON schema', 'formal tone'])
print(kept) # ['Answer the question'] -- only the volatile part remainsGérer les versions des deux couches ensemble
Un système hybride comporte deux artefacts liés : la version de l’adaptateur et la version du modèle d’invite. Ils doivent être versionnés et déployés ensemble : une invite conçue pour l’adaptateur v3 peut mal se comporter avec l’adaptateur v4.
Épinglez cette association dans la configuration, lancez (run) l’évaluation sur la paire exacte que vous allez déployer, puis revenez en arrière sur les deux éléments simultanément. Les traiter indépendamment est la source la plus courante de régressions hybrides silencieuses.
Cadence de réajustement
Comme le comportement volatil réside dans l’invite, un système hybride bien conçu ne nécessite un réajustement que rarement — principalement lorsque le modèle de base devient obsolète ou lorsque le comportement stable évolue réellement. Les changements quotidiens s’effectuent dans la couche des invites, sans coût d’entraînement.
Si vous vous retrouvez à réajuster fréquemment le modèle, votre séparation stable/volatile est incorrecte : du contenu volatil s’est infiltré dans les poids. Replacez-le dans l’invite.
Schéma hybride de bout en bout
La boucle complète : récupérez le contexte, générez une invite courte avec l’adaptateur ajusté, puis laissez les poids fournir la forme apprise. Les connaissances et les instructions restent dynamiques ; la structure et le ton sont intégrés.
def hybrid_call(user_q, retriever, tuned_model, adapter_version):
docs = retriever.search(user_q, k=4) # volatile knowledge
ctx = '\n'.join(d.text for d in docs)
short_prompt = (
'Answer from context.\n' # form is in weights
'<context>' + ctx + '</context>\n'
'<q>' + user_q + '</q>'
)
return tuned_model.generate(short_prompt, adapter=adapter_version)Vérification rapide
Vous distillez une invite longue dans un adaptateur LoRA afin que le modèle produise désormais toujours votre schéma JSON strict et votre ton maison. Que doit-il advenir de l’invite d’exécution ?
Récapitulatif
Hybride = ajusté pour un comportement stable, guidé par invite pour un contexte volatil. Répartissez le comportement selon l’axe stable/volatile et laissez chaque couche faire ce qu’elle fait le mieux.
- Distillation de l’invite : l’invite longue enseigne, l’invite courte sert à l’exécution
- Ajuster la forme, fournir le contenu par invite ; routeur ajusté et experts guidés par invite
- Conserver les connaissances dans la récupération pour que le système hybride vieillisse bien
- Privilégier les adaptateurs légers de type LoRA pour accélérer les itérations
- Élaguer les instructions spécifiées en double et versionner l’adaptateur et l’invite ensemble
- Des réajustements fréquents indiquent que du contenu volatil s’est infiltré dans les poids : replacez-le dans l’invite
Questions Fréquemment Posées
La leçon « Hybride : prompt et réglage léger » est-elle gratuite ?
Oui — le texte complet de « Hybride : prompt et réglage léger » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours AI Prompt Engineering, passe à CoddyKit PRO. Le cours AI Prompt Engineering comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Hybride : prompt et réglage léger » ?
Combiner les deux approches. Tu pratiques AI Prompt Engineering avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer AI Prompt Engineering ?
Aucune expérience préalable n'est requise. AI Prompt Engineering sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 3 sur 4.
Combien de temps prend la leçon « Hybride : prompt et réglage léger » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon AI Prompt Engineering ?
Oui. Chaque leçon AI Prompt Engineering inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Quand le prompting suffit
- Quand affiner un modèle
- Hybride : prompt et réglage léger
- Évaluer la décision