Chargement

Choisir le bon niveau d'effort dans Claude Code

L'effort indique à votre modèle la quantité de ressources à consacrer à une tâche. Quand le réduire, quand l'augmenter, et pourquoi la valeur par défaut est le bon point de départ.

15 minClaude Code

Les développeurs qui travaillent avec Claude Code finissent par se heurter à une contrainte de coût ou d'utilisation. Pourtant, les développeurs veulent travailler aux frontières de l'intelligence des modèles et optent souvent par défaut pour le modèle le plus performant disponible.

Quel que soit le modèle que vous utilisez, un autre levier important pour le coût et l'utilisation des tokens est le niveau d'effort. Adaptez l'effort à la complexité de la tâche ; le coût est ce qui se produit lorsque vous ne le faites pas, dans un sens comme dans l'autre.

L'effort ne change pas ce que le modèle sait

L'effort indique à votre modèle combien de ressources consacrer à la tâche décrite dans votre prompt. Si vous réglez l'effort au niveau le plus bas, le modèle tentera d'atteindre les objectifs du prompt avec le moins de ressources possible : moins d'appels d'outils, moins de tokens et globalement moins de travail. Si vous réglez l'effort au maximum, vous signalez au modèle qu'il peut et doit utiliser autant de ressources que nécessaire pour atteindre les objectifs du prompt.

L'effort détermine l'intensité du travail du modèle, pas l'étendue de ses connaissances. Le modèle que vous choisissez détermine le niveau de capacité avec lequel vous travaillez. L'effort est un signal indiquant à quel point vous voulez que ce modèle travaille dur.

Chargement

Quand changer l'effort

Lorsque l'effort est trop faible pour la tâche, le modèle s'arrêtera probablement tôt et vous reviendra avec un travail inachevé. C'est un signal indiquant que ce que vous avez demandé est plus complexe que l'effort que vous avez accordé. Vous devez alors déterminer où il s'est arrêté et relancer un prompt pour qu'il continue. En fin de compte, cela peut coûter plus cher que si vous aviez correctement réglé le niveau d'effort.

Lorsque l'effort est trop élevé, vous ne le remarquerez peut-être pas à chaque prompt ou à chaque tâche : le modèle utilisera plus de tokens que nécessaire, les temps de réponse seront plus longs, et vous remarquerez une tendance à la surréflexion, ou à l'identification de plus de tâches que celles que vous avez réellement confiées. Vous envoyez le signal « ce que je vous décris est vraiment complexe et difficile », et le modèle adaptera son comportement à ce signal et traitera le travail comme étant aussi complexe.

Chargement

La valeur par défaut se situe au milieu, et elle n'est pas arbitraire : elle est ajustée pour chaque modèle au niveau où la plupart des tâches se terminent sans dépense excessive. C'est pourquoi c'est le bon point de départ.

Vous réduisez l'effort pour les tâches que vous savez simples et qui ne devraient pas nécessiter une grande dépense de ressources : temps, tours, appels d'outils ou lectures de documents. Si vous avez déjà exécuté ce type de tâche au niveau par défaut, essayez de l'exécuter un niveau plus bas et voyez si vous remarquez une différence de qualité. Si ce n'est pas le cas, continuez à descendre d'un niveau à la fois jusqu'à ce que ce soit le cas.

Vous augmentez l'effort par rapport à la valeur par défaut lorsque vous savez que vous décrivez quelque chose qui devrait prendre beaucoup de temps et nécessiter de nombreux tours et vérifications. L'autre moment pour augmenter l'effort est lorsque la tâche est quelque chose que vous ne pouvez pas vérifier rapidement vous-même, et que vous voulez que le modèle effectue davantage d'autovérification pendant qu'il travaille. La même règle s'applique dans cette direction : montez d'un niveau, relancez, et arrêtez-vous lorsqu'il commence à terminer les choses que vous pensez qu'il devrait terminer.

Chargement

Quel levier actionner : l'effort ou le modèle ?

Ne changez de modèle que si davantage d'effort n'a pas résolu le problème. Le modèle n'en savait-il pas assez, ou ne s'est-il pas assez efforcé ? S'il en savait assez mais ne s'est pas assez efforcé, changez l'effort. S'il en savait assez mais a trop travaillé, c'est également un problème d'effort. Si le changement d'effort ne résout pas le problème et que vous n'êtes pas sur le modèle le plus performant, c'est le signe que le modèle que vous avez choisi n'a pas les connaissances, ou n'est pas assez performant, pour la tâche.

Chargement

Lorsque vous changez de modèle, repartez de la valeur par défaut

Les noms des niveaux sont les mêmes sur tous les modèles, mais un même niveau ne signifie pas la même quantité de travail sur un modèle différent.

Chargement

Chaque fois que vous choisissez un modèle, commencez l'effort à la valeur par défaut et ajustez-le vers le haut ou vers le bas selon vos besoins. Supposons que vous essayiez une tâche difficile avec le modèle le moins performant disponible, pour voir s'il peut faire le travail à moindre coût. Après avoir poussé l'effort aussi haut que possible, le modèle ne parvient toujours pas à accomplir la tâche au niveau de qualité requis, vous passez donc à un modèle supérieur. Ne laissez pas l'effort au maximum ; réessayez à la valeur par défaut. Le modèle plus performant peut encore accomplir la tâche avec moins d'effort.

Chargement

Chaque fois qu'un nouveau modèle apparaît, y compris une version plus récente de celui que vous utilisez déjà, revisitez les tâches que vous effectuiez. Voyez si vous pouvez obtenir les mêmes résultats avec le modèle plus performant à un effort plus faible, ce qui pourrait rendre ces tâches moins coûteuses.

Définir le niveau d'effort

Vous pouvez modifier l'effort de l'une des manières suivantes :

Pour cette session uniquement :

  • Indicateur --effort : transmettez un nom de niveau au lancement de Claude Code

Pour cette session et les sessions futures :

  • /effort : exécutez /effort sans argument pour ouvrir un curseur interactif, /effort suivi d'un nom de niveau pour le définir directement, ou /effort auto pour revenir à la valeur par défaut du modèle
  • Dans /model : lors de la sélection d'un modèle, utilisez les touches fléchées gauche/droite pour ajuster le curseur d'effort
  • Paramètres : définissez effortLevel sur low, medium, high ou xhigh dans votre fichier de paramètres
  • Variable d'environnement : définissez CLAUDE_CODE_EFFORT_LEVEL sur un nom de niveau ou sur auto

Pour une Compétence ou un sous-agent :

  • Frontmatter de Compétence et de sous-agent : définissez effort dans un fichier markdown de Compétence ou de sous-agent pour remplacer le niveau d'effort pendant son exécution

Un niveau que vous définissez avec /effort persiste dans votre prochaine session, utilisez donc l'indicateur --effort lorsque vous voulez un niveau pour une seule exécution. Le niveau max utilise suffisamment de ressources pour que Claude Code le limite à la session en cours, sauf si vous le définissez via la variable d'environnement, afin que vous ne puissiez pas le laisser activé par accident.

Ultracode n'est pas un niveau d'effort. C'est un paramètre de Claude Code limité à la session qui exécute le modèle à xhigh et, pour les tâches substantielles, fait également orchestrer par Claude des workflows dynamiques, répartissant le travail entre plusieurs agents.

Chargement

Lorsque plusieurs méthodes définissent l'effort, celle la plus proche du haut de l'ordre ci-dessous l'emporte.

Chargement

Quelle que soit la méthode qui l'emporte ci-dessus, votre organisation peut la plafonner. Sur les forfaits Enterprise, un administrateur peut définir un niveau d'effort maximal par modèle. Les niveaux supérieurs au plafond n'apparaissent pas dans le sélecteur /effort, et si vous en demandez un avec /effort ou --effort, Claude Code s'exécute au niveau du plafond et vous en informe.

Exemple détaillé

Le même prompt exécuté trois fois sur un même modèle, à low, à la valeur par défaut et à max : lancez chaque niveau et observez la quantité de travail investie pour obtenir le même résultat. Le prompt demande un petit script de conversion CSV vers JSON testé sur un fichier d'exemple, volontairement simple afin que les niveaux d'effort aient de la marge pour différer.

Chargement

Essayez-le dans votre propre environnement

Trois sessions distinctes. Effectuez les mêmes quatre étapes dans chacune. Vous assemblez vous-même la comparaison, car /usage ne rend compte que de la session dans laquelle vous vous trouvez. Vérifiez-le à la fin de chaque exécution, notez le nombre de tokens qu'il indique pour la session, puis quittez et recommencez l'exécution suivante à zéro.

1. Lancez une nouvelle session dans son propre dossier vide, au niveau de cette exécution

bash
# depuis un dossier vide en dehors de tout dépôt
# exécution 1 · faible
mkdir effort-low && cd effort-low && claude --effort low

# exécution 2 · par défaut
cd .. && mkdir effort-default && cd effort-default && claude
# puis exécuter /effort auto

# exécution 3 · max
cd .. && mkdir effort-max && cd effort-max && claude --effort max

L'indicateur (ou /effort auto) fait démarrer chaque exécution à son propre niveau, car les niveaux de low à xhigh persistent dans votre prochaine session une fois définis avec /effort.

2. Collez le même prompt

Écrivez un script qui convertit un fichier CSV en JSON. Enregistrez-le sous le nom csv_to_json.py dans ce dossier. Testez-le sur ce CSV, enregistré sous le nom sample.csv :

name,team,start_date
Priya,Payments,2024-03-18
Marcus,Platform,2023-11-02
Lena,Support,2025-01-27

3. Lorsque Claude vous rend le travail, vérifiez ce que cette session a utilisé

/usage

Recherchez le total de tokens de la session ; le reste de l'écran varie selon le forfait.

4. Quittez, puis revenez à l'étape 1 pour le niveau suivant

/exit

Les trois totaux de tokens devraient augmenter de low à max, et les trois dossiers devraient chacun contenir un convertisseur fonctionnel. Ouvrez les trois scripts côte à côte : la différence dans ce qui a été construit est la différence que vous avez payée.

L'habitude à conserver

Gérer l'effort se résume à une seule habitude : commencer à la valeur par défaut, observer ce qui revient, et ajuster un niveau à la fois. Maintenez cette boucle en marche et vous saurez de quel niveau une tâche a besoin, et vous serez capable d'expliquer à un collègue ou à un administrateur pourquoi.

En savoir plus