Documentación

Kev-0.6B (Qwen3)

Generación anterior (Qwen3). Se mantiene como la opción pequeña y rápida en Apple Silicon (0.12 s por solicitud de cinco preguntas frente a 0.33 s de Kev-0.8B). Para precisión, usa Kev-0.8B: en el test bloqueado puntúa 0.668 frente a 0.642 fuera de dominio contra este modelo con los mismos elementos. Pesos: jaredpalmer/kev-0.6b.

Kev-0.6B es un modelo de decisión: un documento (el estado) y un conjunto de preguntas tipadas de entrada, una distribución de probabilidad por pregunta de salida, en una sola pasada hacia adelante. Sin generación de texto. Es un adaptador LoRA (r=16) más una cabeza de puntero sobre Qwen/Qwen3-0.6B-Base, y sirve el contrato público /v1/systemone de TypeSafe.

El miembro pequeño de la familia Kev. Es el mejor checkpoint de 0.6B bajo un protocolo de evaluación congelado y con suma de comprobación: los datos de la receta de 4B/8B (decision-v7) con lr 1e-4, tres semillas (transfer 0.613 / 0.605 / 0.620), después de que ocho mutaciones de un solo ajuste y tres semillas de los datos anteriores no encontraran nada mejor que 0.61. Fuera de dominio es un modelo de 0.6B: usa Kev-4B para precisión; usa este cuando la memoria o la latencia descarten el 4B, y mide con tus propios datos.

  • Hub: jaredpalmer/kev-0.6b (este repo; ensayo v7-06b/02-trial-2, semilla 2 de 3)
  • Código, suites, resultados y el registro de investigación completo: github.com/jaredpalmer/kev — véase PLAN.md (registro completo en la etiqueta de git research-archive-2026-09-24), runs/leaderboard.md y evals/v4/*/manifest.json

Qué cambió desde Kev-0.5B

Kev-0.5B Kev-0.6B (este)
backbone Qwen2.5-0.5B Qwen3-0.6B-Base
registros de entrenamiento 9,000 (seis fuentes) 12,576 (diez fuentes públicas + 896 pares mínimos de política + 1,680 registros de 60 estructuras de reglas aleatorias)
none-of-the-above solo corrección de aumento + pares mínimos: el mismo estado renderizado con la opción verdadera presente y eliminada
precisión en distribución (decision-v4 dev) 0.712 0.801
precisión fuera de dominio (transfer-v4 dev) 0.561 0.620
opción none presente, precisión 0.25 (transfer-v1) 0.80
semillas detrás del número 1 3 (transfer 0.605–0.620)

Jev (typesafe-ai/jev vía Vercel AI Gateway) en los mismos conjuntos de desarrollo congelados: 0.845 en distribución, 0.857 fuera de dominio. Precisión de transferencia por fuente para este checkpoint: QNLI 0.85, SciQ 0.93, TweetEval-offensive 0.69, PAWS 0.59, Emotion 0.49, MMLU 0.50; estructuras de política reservadas cerca del azar.

Límites conocidos

  • Fuera de dominio es un modelo de 0.6B. La precisión de transferencia es plana en ~0.60 en todos los hiperparámetros que probamos (ocho mutaciones de un solo ajuste, tres semillas). La misma receta a 4B llega a 0.72–0.75 y a 8B a 0.74–0.77; la capacidad, no los datos, es el cuello de botella a este tamaño.
  • El razonamiento sobre políticas reservadas falla: en pares de política programáticos cuya estructura de reglas nunca se entrenó, both-siblings-correct es 6–11% (Kev-4B 0.73, Jev 0.86).
  • Cobertura ordinal: en preguntas Score de 3 niveles con aritmética de fechas, se derrumba al nivel intermedio.
  • La tasa de errores con confianza fuera de dominio es del 11% (≥0.9 de confianza y errónea); ECE bruto 0.09 en distribución, 0.15 fuera de dominio. Las probabilidades son utilizables en distribución; fuera, trátalas como orientativas.
  • Test bloqueado, leído una vez (runs/locked/kev-06b-v7-ungated/): precisión en distribución 0.808 (Brier 0.266, ECE 0.089), fuera de dominio 0.642 (Brier 0.483, ECE 0.128, errores con confianza 7.9%). Esta partición no se volverá a leer para este checkpoint.

Arquitectura

LM causal solo prefill con una máscara de atención causal por bloques: un prefijo de estado compartido, una rama aislada por pregunta y una lectura por puntero sobre los tokens de frontera de opción. Las preguntas empaquetadas en una solicitud obtienen exactamente las mismas probabilidades que obtendrían solas (delta máximo medido 4e-6). Detalles en el README del repositorio.

Entrenamiento

Suite congelada evals/v7/decision-v7 (el manifiesto fija las revisiones del conjunto de datos y del modelo base): 10,000 registros públicos (1,000 por fuente), 896 registros de pares mínimos de política sobre nueve familias de plantillas y 1,680 registros de 60 estructuras de reglas generadas aleatoriamente, dos épocas, LoRA r=16 sobre las proyecciones de atención y MLP con lr 1e-4, cabeza de puntero desde cero, entropía cruzada sobre la distribución de opciones, autocast bf16 con pesos maestros fp32 en una H100 (~12 min). Aumento: permutación de opciones, inserción de none-of-the-above, distractores y pares mínimos de none en el 25% de los registros Choice. No se usaron salidas de Jev para el entrenamiento.

Protocolo de evaluación

Las particiones de desarrollo seleccionan modelos; existe una partición de test bloqueada y se lee como máximo una vez por candidato promovido. Cada número anterior lleva el hash de la suite, hashes del código y el commit de git en result.json. Las comparaciones usan un bootstrap emparejado agrupado por registro. Véase PLAN.md en la etiqueta de git research-archive-2026-09-24 (“Evidence and corrections”) para las correcciones que hicimos a nuestras propias afirmaciones anteriores.

Uso

from typesafe import TypeSafeClient   # any TypeSafe-compatible client
client = TypeSafeClient(api_key="local", base_url="http://127.0.0.1:8008", model="kev-latest")

Sirve con uv run --extra serve python -m kev.serve --run jaredpalmer/kev-0.6b --port 8008 desde el repositorio.

Licencia

Apache-2.0 para el adaptador y la cabeza. El modelo base es Apache-2.0 (Qwen3). Los conjuntos de datos de entrenamiento llevan sus propias licencias.