v0.2.1 : anti-boucle + system prompt facon pi

- Nouveau system prompt structure facon pi (identite -> methode/guidelines
  -> date -> outils + conseils -> contexte machine/skills), injecte via
  InjectSkills. Corrige les boucles de raisonnement infinies.
- Plafond de reflexion par defaut (REASONING_BUDGET=2048 au lieu de -1) :
  coupe une reflexion qui derape au lieu de tourner a l'infini.
- Garde-fou anti-boucle dans runChat : stop si le modele relance
  exactement le meme appel d'outil plusieurs tours de suite.
- Descriptions d'outils enrichies (run_shell, skill).
- Bump version 0.2.0 -> 0.2.1.
This commit is contained in:
nathaninline committed 2026-06-21 09:14:08 +02:00
1 parent e606206d90
commit ca5d3f9197
6 files changed
+78 -10

No files matched your search

+6 -5
View File
@@ -61,11 +61,12 @@ func cmdServe(args []string) error {
llmArgs = append(llmArgs, "-ctv", vtv)
}
if r := cfg["REASONING"]; r != "" {
// budget -1 = thinking illimité (défaut). NE PAS forcer 0 : sur llama.cpp
// vanilla, 0 = "immediate end" → coupe le raisonnement net (le fork
// ik_llama.cpp, lui, l'ignore, d'où l'ancien comportement trompeur).
// Configurable via REASONING_BUDGET (ex: 2048 pour plafonner).
llmArgs = append(llmArgs, "--reasoning", r, "--reasoning-budget", get("REASONING_BUDGET", "-1"))
// budget plafonné par défaut (2048) : une réflexion qui part en boucle est
// coupée net au lieu de tourner à l'infini — c'est le comportement de pi.
// NE PAS forcer 0 : sur llama.cpp vanilla, 0 = "immediate end" → coupe tout
// le raisonnement (le fork ik_llama.cpp l'ignore). Mettre -1 pour illimité.
// Configurable via REASONING_BUDGET.
llmArgs = append(llmArgs, "--reasoning", r, "--reasoning-budget", get("REASONING_BUDGET", "2048"))
}
// API_KEY protège le serveur quand il est exposé sur internet : llama-server
// exige alors l'en-tête "Authorization: Bearer <clé>". La clé est lue depuis