Orion: Evadiendo CoreML para ejecutar y entrenar LLMs directamente en el Motor Neuronal de Apple

Acceso directo al ANE para cargas de trabajo de LLM
Orion proporciona un sistema completo en Objective-C que evita por completo a CoreML para ejecutar y entrenar LLMs directamente en el Motor Neuronal de Apple (ANE). Este enfoque otorga a los desarrolladores control directo sobre el ANE, que anteriormente era tratado por CoreML como un programador de caja negra, eliminando cualquier control directo o capacidad de entrenamiento.
Implementación técnica y limitaciones
El proyecto se basa en trabajos de ingeniería inversa que mapearon las APIs privadas ANEClient y ANECompiler. El ANE presenta lo que el desarrollador llama un "desajuste de impedancia de hardware" con 17 restricciones de programación en total, 11 de las cuales estaban completamente sin documentar. Las limitaciones clave incluyen:
- La operación de concatenación causa un fallo inmediato y silencioso del compilador
- Los pesos BLOBFILE requieren un desplazamiento de 64 bytes desde la cabecera del fragmento, o se produce una corrupción numérica silenciosa
- El ANE mantiene un estado interno que tiene un límite fijo de aproximadamente 119 compilaciones por proceso antes de fallar silenciosamente
Soluciones a los desafíos del entrenamiento
Intentos anteriores de entrenamiento en el ANE encontraron divergencia NaN después de un solo paso. Orion resuelve esto mediante:
- Configurando una canalización de compilación diferida
- Implementando un recorte estricto de activaciones para detener la cascada de desbordamiento fp16 (recortando activaciones entre -65504 y +65504)
- Usando un bucle de reinicio de proceso exec() después de cada paso de entrenamiento para evitar el límite de 119 compilaciones
Resultados de rendimiento
El compilador reduce un gráfico IR de 27 operaciones a través de cinco pasos de optimización hasta llegar al MIL nativo del ANE. El rendimiento actual incluye:
- Más de 170 tokens/s para la decodificación de GPT-2 124M
- Entrenamiento mecánicamente estable de múltiples pasos en un transformador de 110 millones de parámetros (el "límite de coherencia" del hardware)
- En más de 1,000 pasos, la pérdida disminuyó de 12.3 a 6.2 sin ningún NaN
Limitaciones actuales
El ANE integra los pesos en tiempo de compilación, lo que significa que cada actualización de entrenamiento requiere una penalización de recompilación de aproximadamente 4.2 segundos. El ANE alcanza aproximadamente 19 TFLOPS en fp16, pero la limitación fundamental para usarlo no ha sido la capacidad de cálculo, sino la completa falta de una capa de orquestación nativa.
📖 Read the full source: r/LocalLLaMA
👀 Ver también

Personalizando Claude AI para Mejorar la Retroalimentación
Ajusta la configuración de Claude AI para evitar un exceso de acuerdo y fomentar un pensamiento más crítico y retroalimentación práctica.

Chromeflow: Extensión de Chrome Automatiza Tareas de Interfaz Web para Claude
Chromeflow es una extensión gratuita y de código abierto para Chrome y un servidor MCP construido con Claude Code que le da a Claude control del navegador para automatizar tareas manuales de interfaz web como configurar Stripe, Supabase o SendGrid. Resalta elementos para hacer clic, llena campos, hace clic en Guardar y escribe claves API directamente en archivos .env.

Orquestador de flujo de trabajo con integración de CLI de IA para tareas de administración de sistemas
Un desarrollador creó un orquestador de flujos de trabajo basado en archivos llamado 'workflow' que se integra con Claude Code, Codex CLI y Gemini CLI. Genera, actualiza, corrige y refina flujos de trabajo YAML a partir de descripciones en lenguaje natural para tareas de administración de sistemas.

Dos Habilidades de Código de Claude para Gestionar la Configuración de CLAUDE.md
Un desarrollador creó dos habilidades de Claude Code para manejar la configuración de CLAUDE.md: /cc-init crea configuraciones ligeras para proyectos nuevos, y /cc-optimize analiza proyectos existentes en busca de bloat y problemas. Ambas buscan reducir la sobrecarga de contexto y mejorar el seguimiento de instrucciones.