Visor de modelos de redes neuronales, deep learning y machine learning, compatible con ONNX, TensorFlow, PyTorch, Core ML y muchos otros formatos.
gomlx/gomlx
Framework de machine learning y matemáticas para Go, con entrenamiento acelerado por XLA, backend puro en Go y carga de modelos de HuggingFace.
Alternativa open source a:PyTorch
TensorFlow
- Estrellas
- 1,658
- Forks
- 84
- Issues abiertos
- 2
- Último commit
- hace 7 días
¿Qué es?
GoMLX es una biblioteca de machine learning y matemáticas genéricas para Go, a menudo descrita como un equivalente de PyTorch, JAX o TensorFlow para este lenguaje. Permite entrenar, ajustar y modificar modelos, e incluye operadores diferenciables, capas, optimizadores y funciones de pérdida, además de herramientas de entrenamiento como gráficos de métricas en notebooks de Jupyter.
GoMLX separa la API del modelo de su ejecución. El backend XLA predeterminado usa OpenXLA con compilación just-in-time para CPU, GPU y TPU, y admite ejecución distribuida en varios dispositivos (experimental). El backend puro en Go funciona sin dependencias de C o C++ y se puede compilar a WebAssembly. También hay un backend de ONNX Runtime, y los modelos se pueden guardar en formato .onnx.
El proyecto incluye integración con go-huggingface para descargar modelos, tokenizadores y conjuntos de datos, y leer pesos en formato GGUF o safetensors. Los ejemplos abarcan clasificación de imágenes, generación de texto con GPT-2 y Gemma, y ajuste fino con PEFT/LoRA.
Funciones clave
- 01Operadores diferenciables, capas comunes (FNN, atención, normalización, convoluciones, LSTM, KAN) y optimizadores.
- 02Backends seleccionables: XLA para CPU/GPU/TPU, un backend puro en Go y ONNX Runtime.
- 03Backend puro en Go que se compila a WASM y se ejecuta en navegadores.
- 04Guardar modelos en archivos .onnx y convertir modelos ONNX a GoMLX.
- 05Cargar desde Go modelos, tokenizadores y conjuntos de datos de HuggingFace.
- 06Ajuste fino eficiente en parámetros (LoRA) sin modificar el código del modelo.
Casos de uso
- Entrenar y desplegar modelos de redes neuronales en una base de código Go, sin Python.
- Ajustar desde Go modelos preentrenados de HuggingFace u ONNX.
- Ejecutar inferencias de ML en un navegador al compilar código Go a WebAssembly.
- Experimentar con nuevas capas, optimizadores o funciones de pérdida mediante una API de Go fácil de leer.
Inicio rápido
- 1
Lee la documentación de instalación y los tutoriales en gomlx.github.io
- 2
Importa los backends predeterminados en tu programa de Go con: import _ "github.com/gomlx/gomlx/backends/default"
- 3
Si quieres, elige un backend configurando la variable de entorno GOMLX_BACKEND
export GOMLX_BACKEND=go
Antes de usarlo
- El backend xla solo admite formas estáticas.
- Por ahora, el backend xla solo está disponible para linux/amd64, linux/arm64 y darwin/arm64 (CPU).
- El backend puro de Go es más lento que xla y aún está previsto añadir compatibilidad con formas dinámicas.
- El backend onnx está diseñado únicamente para Linux y Windows AMD64, y requiere la etiqueta de compilación --tags=onnx.
Temas
Preguntas frecuentes
- ¿Qué es gomlx?
- Framework de machine learning y matemáticas para Go, con entrenamiento acelerado por XLA, backend puro en Go y carga de modelos de HuggingFace. GoMLX es una biblioteca de machine learning y matemáticas genéricas para Go, a menudo descrita como un equivalente de PyTorch, JAX o TensorFlow para este lenguaje. Permite entrenar, ajustar y modificar modelos, e incluye operadores diferenciables, capas, optimizadores y funciones de pérdida, además de herramientas de entrenamiento como gráficos de métricas en notebooks de Jupyter.
- ¿gomlx es gratuito? ¿Qué licencia tiene?
- gomlx es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿gomlx sigue mantenido?
- Mantenimiento activo. El último commit de gomlx fue el 14 oct 2026.
- ¿Para qué puedo usar gomlx?
- Entrenar y desplegar modelos de redes neuronales en una base de código Go, sin Python. Ajustar desde Go modelos preentrenados de HuggingFace u ONNX. Ejecutar inferencias de ML en un navegador al compilar código Go a WebAssembly. Experimentar con nuevas capas, optimizadores o funciones de pérdida mediante una API de Go fácil de leer.
- ¿Cómo se instala gomlx?
- Lee la documentación de instalación y los tutoriales en gomlx.github.io Importa los backends predeterminados en tu programa de Go con: import _ "github.com/gomlx/gomlx/backends/default" Si quieres, elige un backend configurando la variable de entorno GOMLX_BACKEND: export GOMLX_BACKEND=go
- ¿Dónde consigo gomlx?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/gomlx/gomlx
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Biblioteca de tensores y framework de deep learning en Rust para entrenamiento e inferencia con backends CUDA, ROCm, Metal, Vulkan, WebGPU y CPU.
Plataforma open source integral para crear e implementar modelos de machine learning, con API para Python y C++.
Framework de deep learning para Python que ofrece operaciones con tensores aceleradas por GPU y redes neuronales dinámicas basadas en autograd.
Un framework minimalista de deep learning con una API de tensores similar a PyTorch, autograd, un compilador y compatibilidad con numerosos aceleradores.
Framework de inferencia de redes neuronales de alto rendimiento en C++ para ejecutar modelos de deep learning en dispositivos móviles, integrados y de escritorio.