Saltar al contenido
pando/ docs

Configuración de la automejora

Claves del bloque [evaluator] y los comandos que lo rodean. Para la idea, lee Sistema de automejora; para el paso a paso, la guía Ayuda a Pando a aprender de tus sesiones.

Web UI: Configuración > Self-Improvement. También está en los ajustes de la TUI.

Ajustes de Self-Improvement

Claves principales

[evaluator]
enabled = true
model = 'anthropic.claude-haiku-4'   # the judge; a cheap model is enough
provider = ''
async = true                 # evaluate in the background
idleTimeout = '30m'          # score a session after this long without activity
backfillLimit = 50           # old unscored sessions evaluated at startup; negative disables
backfillJudge = false        # also run the judge on those
includeSubagents = false     # also score delegated (child) sessions
explorationC = 1.41
minSessionsForUCB = 5
maxTokensBaseline = 50
maxSkills = 100
judgePromptTemplate = ''     # path to a custom .md or .txt Go template
correctionsPatterns = []     # regex list; empty = built-in patterns

[evaluator.judge]
highReward = 0.8             # the judge runs at or above this reward…
lowReward = 0.3              # …or at or below this one
minTurns = 4                 # minimum user turns
maxTranscriptTokens = 6000   # head and tail of the transcript kept
dailyCalls  = 20             # judge calls per local day; 0 = no limit
dailyTokens = 200000         # judge tokens per local day; 0 = no limit

[evaluator.templates]
enabled = true               # prompt variant selection; inert until variant files exist
ClavePor defectoEtiqueta en la Web UI
enabledfalseEnabled
modelningunoJudge model
asynctrueAsync evaluation
idleTimeout30mIdle timeout
backfillLimit50Backfill limit
backfillJudgefalseJudge during backfill
includeSubagentsfalseInclude subagent sessions
explorationC1.41UCB exploration factor
judgePromptTemplatela integradaJudge prompt template
correctionsPatternslos integradosCorrection patterns
judge.highReward0.8High reward band (judge at or above)
judge.lowReward0.3Low reward band (judge at or below)
judge.minTurns4Minimum user turns
judge.maxTranscriptTokens6000Transcript cap (tokens)
judge.dailyCalls20Daily judge calls
judge.dailyTokens200000Daily judge tokens
templates.enabledtruePrompt variant selection
minSessionsForUCB5
maxTokensBaseline50
maxSkills100
Cuándo se evalúan las sesiones
Límites del juez y variantes de prompt

Pesos de la puntuación

La nota es la media ponderada de las señales medidas en cada sesión. Los pesos son relativos. Deslizadores de la Web UI y valores de partida: Success (corrections) 0.80, Token efficiency 0.20, Tool errors 0.10, Cancelled runs 0.05, Repeated tool calls 0.05, Turns to completion 0.05, Ended right after an error 0.10. En el fichero de configuración van en [evaluator.weights]; las claves antiguas alphaWeight (éxito, 0.8) y betaWeight (eficiencia de tokens, 0.2) se siguen leyendo cuando no hay pesos definidos.

Un /feedback explícito sustituye el total: bad por debajo de 0.3, good por encima de 0.8.

Cuándo se puntúa una sesión

  • Al cambiar a otra sesión.
  • Tras idleTimeout sin mensajes nuevos.
  • Al cerrar Pando.
  • En el repaso de arranque (solo la instancia primaria), hasta backfillLimit sesiones.

Puntuar no llama a ningún modelo. El modelo juez solo se llama para sesiones dentro de las bandas de nota, con al menos minTurns turnos de usuario y dentro del presupuesto diario.

Reglas aprendidas

Las propuestas del juez son ficheros en .pando/skills/learned/<id>.md con estado pendiente. Solo las reglas aprobadas se inyectan en los prompts, y una aprobación llega a la siguiente sesión nueva, nunca a una en curso. Las rechazadas no se inyectan ni se vuelven a proponer.

pando skills list --status pending
pando skills approve verify-the-build-before-reporting-done
pando skills reject some-skill-id

Variantes de prompt

Pon una redacción alternativa de una sección del prompt en .pando/prompts/variants/<section>/<name>.md.tpl. Pando usa una variante por sesión, sigue las notas y poco a poco prefiere la que funciona mejor. Requiere enabled = true; templates.enabled es el interruptor de corte.

Recortador de contexto

Experimental y desactivado por defecto: una llamada extra a un modelo en cada sesión nueva que filtra las herramientas que se enseñan al modelo. Web UI: Context trimmer y Trimmer minimum confidence (0.70). Bloque de configuración: [evaluator.contextTrimmer].

Patrones de corrección

Patrones de corrección

Expresiones regulares que marcan un mensaje del usuario como corrección. Usa barras invertidas sencillas, por ejemplo (?i)\bwrong\b. Una barra doble busca una barra literal y nunca salta; pando evaluator doctor las señala.

Comandos

ComandoQué hace
/feedback good · /feedback badSustituye la nota de la sesión actual
/evaluate [session-id]Puntúa una sesión desde el chat (por defecto, la actual)
pando evaluator doctorDice si el bucle está funcionando y, si no, por qué
pando evaluate <session-id>Puntúa una sesión
pando evaluate --all --limit 20Puntúa las sesiones que aún no tienen nota. Añade --judge para ejecutar también el juez
pando skills list|approve|rejectRevisa las reglas aprendidas