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; ensayov7-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 gitresearch-archive-2026-09-24),runs/leaderboard.mdyevals/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.