bots-garden/mini-mepublic Fork
⑂ feature/genkit-v1.13.1
Commits
⬇ Clone ▾
git clone https://git.rickub.com/bots-garden/mini-me.git
git clone ssh://git@rickub.com/bots-garden/mini-me.git

Host key fingerprint (ed25519): SHA256:iycHnxEyq0Q7uyVpB7JlznP0G7JrTPXLYRcAU5CSLhc — verify it before your first connect.

Download ZIP
🛟 Updated. 13af864Unverified · on feature/genkit-v1.13.1 · k33g · 16d ago
turn-reasoning-off.md · 54 lines · 2.7 KBmarkdown
Blame HistoryOpen raw

Couper le raisonnement d'un modèle

Un modèle à raisonnement (Qwen3.5, Qwen3.x, gpt-oss…) réfléchit avant de répondre. Sur une question simple, cela coûte des secondes et des tokens pour rien. Ce guide montre comment demander au serveur de ne pas raisonner, à chaque tour. Il suppose que vous lancez déjà mm avec un fichier de configuration YAML et un modèle à raisonnement.

Étapes

  1. Repérez votre fournisseur dans le fichier de configuration (provider:).

  2. Ajoutez l'interrupteur propre au serveur sous sampling.

    Pour dmr, llamacpp ou llmman — tous trois llama.cpp en dessous :

    sampling:
      temperature: 0.0
      max_tokens: 4096
      chat_template_kwargs:
        enable_thinking: false
    

    Pour ollama :

    sampling:
      temperature: 0.0
      max_tokens: 4096
      reasoning_effort: none
    

    Les clés que vous écrivez s'ajoutent à celles par défaut (temperature, top_p, max_tokens) : seul l'interrupteur est à ajouter.

  3. Posez une question et comparez. Raisonnement actif, le mode ligne affiche un bloc 💭 grisé avant la réponse 🤖 ; coupé, la réponse arrive directement :

    $ mm -p "What is 17*23? Answer with the number only." agent.yaml
    
    🤖 391⚙ 0 command(s)
    391
    

    Mesuré avec Qwen3.5 4B sur Docker Model Runner : moins d'une seconde, là où la même question prenait quatre secondes de raisonnement.

Variantes

  • Masquer le raisonnement mais laisser le modèle réfléchir. showThinking: false retire le bloc 💭, l'entrée ‣ thinking de la fenêtre et les morceaux de pensée envoyés à l'éditeur. Le modèle raisonne quand même — même durée, mêmes tokens.
  • Le modèle ignore l'interrupteur. enable_thinking est une variable du template de chat du modèle : un template qui ne la lit pas (un modèle sans mode de raisonnement, ou qui utilise un autre nom de variable) n'est pas concerné. Vérifiez sur la fiche du modèle la variable que lit son template.
  • Le couper pour une seule exécution. Gardez deux fichiers de configuration, ou démarrez le serveur lui-même sans raisonnement (pour llama-server, voir son option --reasoning-budget).
  • Résumés de compaction. Rien à faire : mm demande déjà au serveur de ne pas raisonner pour le résumé de /compact et de la compression automatique, quoi que dise sampling.

Voir aussi

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# Couper le raisonnement d'un modèle

Un modèle à raisonnement (Qwen3.5, Qwen3.x, gpt-oss…) réfléchit avant de répondre. Sur une question simple, cela coûte des secondes et des tokens pour rien. Ce guide montre comment demander au serveur de ne pas raisonner, à chaque tour. Il suppose que vous lancez déjà `mm` avec un fichier de configuration YAML et un modèle à raisonnement.

## Étapes

1. Repérez votre fournisseur dans le fichier de configuration (`provider:`).

2. Ajoutez l'interrupteur propre au serveur sous `sampling`.

   Pour `dmr`, `llamacpp` ou `llmman` — tous trois llama.cpp en dessous :

   ```yaml
   sampling:
     temperature: 0.0
     max_tokens: 4096
     chat_template_kwargs:
       enable_thinking: false
   ```

   Pour `ollama` :

   ```yaml
   sampling:
     temperature: 0.0
     max_tokens: 4096
     reasoning_effort: none
   ```

   Les clés que vous écrivez s'ajoutent à celles par défaut (`temperature`, `top_p`, `max_tokens`) : seul l'interrupteur est à ajouter.

3. Posez une question et comparez. Raisonnement actif, le mode ligne affiche un bloc `💭` grisé avant la réponse `🤖` ; coupé, la réponse arrive directement :

   ```
   $ mm -p "What is 17*23? Answer with the number only." agent.yaml

   🤖 391⚙ 0 command(s)
   391
   ```

   Mesuré avec Qwen3.5 4B sur Docker Model Runner : moins d'une seconde, là où la même question prenait quatre secondes de raisonnement.

## Variantes

- **Masquer le raisonnement mais laisser le modèle réfléchir.** `showThinking: false` retire le bloc `💭`, l'entrée `‣ thinking` de la fenêtre et les morceaux de pensée envoyés à l'éditeur. Le modèle raisonne quand même — même durée, mêmes tokens.
- **Le modèle ignore l'interrupteur.** `enable_thinking` est une variable du template de chat du modèle : un template qui ne la lit pas (un modèle sans mode de raisonnement, ou qui utilise un autre nom de variable) n'est pas concerné. Vérifiez sur la fiche du modèle la variable que lit son template.
- **Le couper pour une seule exécution.** Gardez deux fichiers de configuration, ou démarrez le serveur lui-même sans raisonnement (pour llama-server, voir son option `--reasoning-budget`).
- **Résumés de compaction.** Rien à faire : `mm` demande déjà au serveur de ne pas raisonner pour le résumé de `/compact` et de la compression automatique, quoi que dise `sampling`.

## Voir aussi

- La clé `sampling` et ce qu'elle transmet : [référence de la configuration](../reference/configuration.md).
- D'où vient le raisonnement et pourquoi `mm` le lit lui-même : [Modèles à raisonnement](../explanation/thinking-models.md).
- Pourquoi chaque serveur est prévenu dans ses propres termes : [Fournisseurs](../explanation/providers.md).