¿Alguna vez has querido probar el último modelo de lenguaje que ha salido, como un Llama 3.1 o un Qwen, pero te has encontrado con una pared de terminales, compilaciones de C++ y errores de dependencias? Si te gusta la potencia de correr modelos en tu propio hardware pero no siempre quieres pelearte con la línea de comandos, necesitas una herramienta que te facilite la vida. Ahí es donde entra LM Studio.
LM Studio es una aplicación de escritorio (Windows, macOS y Linux) diseñada para descargar, gestionar y ejecutar LLMs localmente desde una interfaz gráfica intuitiva. Si llama.cpp es el motor de combustión y la línea de comandos es el manual de taller, LM Studio es el asiento del conductor: buscas un modelo, lo descargas con un clic y chateas con él sin tocar una sola terminal.
Por debajo utiliza los mismos motores que ya conoces —llama.cpp para modelos GGUF y Apple MLX en Apple Silicon— pero añade una capa visual para descubrir modelos, ajustar parámetros y levantar un servidor con una API totalmente compatible con OpenAI. Esta guía es dedicada y práctica; si lo que buscas es comparar diferentes frameworks entre sí, te recomiendo revisar Ecosistema de Modelos Locales.
¿LM Studio u Ollama?
Ollama es CLI-first y encaja mejor en automatización y despliegues. LM Studio brilla en el uso interactivo: explorar modelos, probar prompts y ajustar parámetros visualmente. Ambos exponen una API compatible con OpenAI.
🧭 Flujo de trabajo
Para que no te pierdas, este es el camino que seguirás desde que buscas un modelo hasta que lo integras en tu código:

📦 Instalación
Empezar es tan sencillo como descargar el instalador desde la web oficial y seguir el asistente:
# Página oficial de descargas
# https://lmstudio.ai/download
- Windows: instalador
.exe(requiere Windows 10/11, preferible con soporte AVX2). - macOS:
.dmgpara Apple Silicon (M1/M2/M3/M4) — aprovecha MLX y la memoria unificada. - Linux:
AppImage(x64 con AVX2).
Requisito de CPU
LM Studio necesita instrucciones AVX2 en x86. En equipos antiguos sin AVX2 no arrancará; en ese caso usa llama.cpp compilado a medida.
🔍 Descubrir y descargar modelos
En la pestaña Discover (🔍) puedes buscar modelos por nombre (p. ej. Llama 3.1, Qwen2.5, Phi-4). LM Studio te listará todas las variantes disponibles en GGUF (y MLX en Mac) con distintos niveles de cuantización.
Para evitar errores de memoria, presta atención a la recomendación que te dará el software según tu hardware:
| Etiqueta | Significado |
|---|---|
| Full GPU Offload Possible | El modelo cabe entero en tu GPU/VRAM |
| Partial GPU Offload Possible | Cabe parcialmente; el resto irá a CPU/RAM |
| Likely too large | Excede tu memoria; evítalo o baja de cuantización |
Qué cuantización elegir
Como en llama.cpp, Q4_K_M es el equilibrio recomendado. Sube a Q5/Q6/Q8 si te sobra memoria; baja a Q3 solo si un modelo no te entra.
💬 Cargar un modelo y chatear
Una vez descargado, hablar con la IA es cuestión de tres pasos:
- Ve a la pestaña Chat (💬).
- En el selector superior, elige el modelo descargado: LM Studio lo carga en memoria.
- Escribe tu prompt y comienza la conversación.
Antes de empezar a chatear, puedes usar el panel de configuración para tunear la experiencia.
⚙️ Configuración de parámetros
Parámetros de carga (load-time)
Estos parámetros definen cómo se reserva la memoria de tu sistema al arrancar el modelo:
| Parámetro | Descripción |
|---|---|
| Context Length | Tokens de contexto que «recuerda» el modelo. Más contexto = más RAM/VRAM |
| GPU Offload | Cuántas capas se descargan a la GPU (equivale a -ngl de llama.cpp) |
| CPU Threads | Hilos de CPU para la inferencia |
| Evaluation Batch Size | Tokens procesados por lote al ingerir el prompt |
| Keep Model in Memory | Mantiene el modelo cargado aunque no se use |
| Flash Attention | Reduce el uso de memoria del contexto (experimental) |
GPU Offload al máximo
Sube el deslizador de GPU Offload todo lo que permita tu VRAM (etiqueta «max»). Si al cargar hay errores de memoria, redúcelo un poco. Las capas no descargadas corren en CPU.
Parámetros de inferencia (sampling)
Aquí es donde controlas la «personalidad» de la respuesta. Puedes ajustar Temperature, Top P, Top K, Repeat Penalty y Max Tokens de forma individual o guardar combinaciones útiles como presets reutilizables.
🌐 Servidor local con API compatible OpenAI
Esta es quizás la función más potente para desarrolladores. La pestaña Developer (o Local Server) levanta un servidor HTTP con endpoints compatibles con la API de OpenAI. Es la forma perfecta de conectar tus propios scripts o apps a un modelo que vive en tu máquina.
- Abre la pestaña Developer.
- Selecciona el modelo a servir y pulsa Start Server (puerto por defecto
1234).
Llamar al endpoint de chat con curl
Si quieres probar rápidamente desde la terminal, puedes usar curl:
curl http://localhost:1234/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "local-model",
"messages": [
{"role": "system", "content": "Eres un asistente DevOps conciso."},
{"role": "user", "content": "Dame un comando para ver los pods de un namespace"}
],
"temperature": 0.7
}'
Con el SDK de OpenAI en Python
Si estás programando, puedes usar la librería oficial de OpenAI sin cambiar casi nada de tu código:
from openai import OpenAI
# base_url apunta al servidor local de LM Studio; la api_key es un placeholder
client = OpenAI(base_url="http://localhost:1234/v1", api_key="lm-studio")
resp = client.chat.completions.create(
model="local-model",
messages=[{"role": "user", "content": "Explica qué es un Deployment en Kubernetes"}],
)
print(resp.choices[0].message.content)
Los endpoints disponibles son: /v1/chat/completions, /v1/completions, /v1/embeddings y /v1/models.
Compatibilidad drop-in
Igual que llama-server de llama.cpp, cualquier herramienta que hable con la API de OpenAI funciona cambiando solo base_url. Cambiar el puerto: 1234 es el valor por defecto de LM Studio.
🖥️ CLI lms: automatización desde terminal
Si te gusta el control total, LM Studio incluye lms, una herramienta de línea de comandos para scripting y CI. Primero, debes activarla:
# Registra el comando lms en el PATH (una sola vez)
npx lmstudio install-cli
Una vez instalada, puedes gestionar todo desde tu terminal:
# Listar modelos descargados
lms ls
# Cargar un modelo en memoria con contexto y GPU al máximo
lms load llama-3.1-8b-instruct --context-length 8192 --gpu max
# Descargar (unload) el modelo de la memoria
lms unload --all
# Arrancar el servidor local vía CLI
lms server start --port 1234
Interactivo para explorar, CLI para automatizar
Usa la interfaz gráfica para descubrir y probar; usa lms cuando quieras reproducir la configuración en scripts o pipelines.
🎯 Casos de uso e integración
¿Para qué querrías usar esto en el día a día? Aquí tienes algunas ideas:
- Prototipado y evaluación de prompts sin coste ni fugas de datos a la nube.
- Backend local para IDEs: apunta extensiones como Continue al servidor
http://localhost:1234/v1. - RAG local: usa el endpoint
/v1/embeddingscon un modelo de embeddings para indexar documentos privados. - Demos offline: lleva la app y los modelos en un portátil, sin conexión.
Ten en cuenta que para despliegues automatizados en servidores o Kubernetes, Ollama o llama.cpp suelen encajar mejor por su naturaleza headless.
🔗 Recursos adicionales
- Sitio oficial de LM Studio
- Documentación de LM Studio
- Referencia de la CLI lms
- Ecosistema de Modelos Locales · Ollama · LLaMA.cpp
