Intermedio 11 minLM Studio

Transformar LM Studio en un servidor de la API de OpenAI (2026)

Respuesta directa

En LM Studio, abre la pestaña Developer y activa el interruptor Start server: el servidor escucha en el puerto 1234 y expone endpoints compatibles con OpenAI (/v1/chat/completions, /v1/responses, /v1/embeddings, /v1/models). Cualquier cliente OpenAI funciona simplemente cambiando la dirección base. Por defecto, no requiere autenticación y solo escucha en localhost: los tokens de API y el acceso de red se configuran en Server Settings.

LM Studio no es solo una interfaz de chat: su servidor local reemplaza la API de OpenAI para tus scripts, editores de código y agentes, sin enviar una línea de texto al exterior. Esta guía cubre la activación, cada ajuste del servidor, el acceso desde la red con autenticación, la carga de modelos bajo demanda y las limitaciones reales de un único equipo, teniendo en cuenta los cambios de la versión 0.4.

Por Mohamed Meguedmi·Actualización 2026-09-30·Probado en Windows, macOS y Linux

#Lo que obtienes

Al final de esta guía, dispondrás de una dirección http://localhost:1234/v1 que cualquier SDK de OpenAI (Python, JavaScript, C#), LangChain o una herramienta de código como Cline o Continue puede usar en lugar de la API de OpenAI. El servidor también ofrece una API nativa en /api/v1 (chat con estado, carga y descarga de modelos) y endpoints compatibles con Anthropic. Todo permanece en tu máquina: el modelo, las peticiones y las respuestas no salen de tu equipo, siempre que no lo expongas tú mismo en la red.

#1. Iniciar el servidor

El kit de IA Local

Tu ChatGPT privado y gratuito en tu máquina en 1 hora — LM Studio, Ollama, Open WebUI, tus documentos, sin nube.

  • Espacio en línea de por vida
  • PDF + archivos
  • Reembolsado 30 j
  1. 01
    Abre la pestaña Developer
    En LM Studio, la pestaña Developer agrupa el servidor, sus registros y sus ajustes. El modelo a servir debe descargarse previamente.
  2. 02
    Activa Start server
    Activa el interruptor Start server: el servidor se inicia en el puerto indicado en Server Settings, 1234 en los ejemplos de la documentación.
  3. 03
    O inicia desde la línea de comandos
    Desde un terminal, el comando lms server start arranca el mismo servidor, sin abrir la interfaz.
  4. 04
    Verifica la lista de modelos
    Consulta /v1/models para confirmar que el servidor responde y ver los identificadores de modelos que debes usar en tus solicitudes.
Iniciar el servidor desde el terminal
lms server start

#2. Los ajustes del servidor, uno por uno

Los ajustes se encuentran en Developer, Server Settings. Determinan quién puede llamar al servidor y qué pueden hacer que ejecute los clientes. La mayoría de los problemas de integración provienen de uno de estos interruptores, casi siempre del de red o del de CORS.

Server Settings de LM Studio (documentación oficial)
AjusteRolRecomendación
Server PortPuerto de escucha del servidor (1234 en la documentación)Cámbialo si el puerto ya está en uso
Require AuthenticationRequiere un token de API válido en el encabezado AuthorizationActívalo en cuanto el servidor deje de estar limitado a localhost.
Serve on Local NetworkHace accesible el servidor a otros dispositivos de la red localDeshabilitado por defecto; combinar con autenticación
Allow per-request MCPsPermite a los clientes usar servidores MCP remotos efímerosDéjalo desactivado salvo que tengas una necesidad concreta.
Allow calling servers from mcp.jsonPermite a los clientes usar los servidores MCP definidos en LM StudioRequiere autenticación; arriesgado si un MCP accede a tus archivos
Enable CORSPermite aplicaciones web de otros orígenesSolo para una aplicación web o algunas extensiones
Just in Time Model LoadingCarga los modelos a demanda, en el momento de la solicitudPráctico con herramientas externas; ver la sección dedicada
Auto Unload Unused JIT ModelsDescarga de la memoria los modelos JIT que han dejado de utilizarseLibera la memoria
Only Keep Last JIT Loaded ModelSolo conserva el último modelo cargado bajo demandaÚtil en tarjetas con VRAM limitada
!
Un ajuste que expone tus archivos
La opción que permite llamar a los servidores de mcp.json da a los clientes de la API acceso a las herramientas que has definido allí. La documentación la desaconseja sin autenticación y, de hecho, exige que se active Require Authentication. No la actives si no conoces el alcance de cada servidor MCP declarado.

#3. Probar con curl

Una primera llamada de comprobación basta para validar el servidor. En las peticiones, el campo model debe contener el identificador del modelo tal como aparece en LM Studio, y no un nombre genérico como local-model: la documentación lo recuerda en su ejemplo curl.

Lista de modelos
curl http://localhost:1234/v1/models
Completado de chat
curl http://localhost:1234/v1/chat/completions \
  -H 'Content-Type: application/json' \
  -d '{
    "model": "IDENTIFIANT-DU-MODELE",
    "messages": [
      {"role":"system","content":"Tu es concis."},
      {"role":"user","content":"Capitale du Portugal ?"}
    ],
    "temperature": 0.2
  }'

La respuesta es un JSON en formato OpenAI: choices[0].message.content contiene el texto. Si el campo model es incorrecto, o si la carga bajo demanda está desactivada y el modelo no está cargado, la solicitud falla: verifica primero el identificador devuelto por /v1/models.

#4. Llamar desde Python

Se utiliza el SDK openai cambiando únicamente la dirección base: es la modificación que muestra la documentación de LM Studio. El SDK requiere una clave; mientras la autenticación esté desactivada, LM Studio no la controla, y si activas la autenticación, la clave se convierte en tu token de API.

A través del SDK openai
from openai import OpenAI

client = OpenAI(
    base_url="http://localhost:1234/v1",
    api_key="lm-studio",  # ignorée sans authentification ; votre jeton sinon
)

resp = client.chat.completions.create(
    model="IDENTIFIANT-DU-MODELE",
    messages=[
        {"role": "system", "content": "Réponds en 1 phrase."},
        {"role": "user",   "content": "Qu'est-ce qu'un LLM ?"},
    ],
    temperature=0.3,
    stream=True,
)

for chunk in resp:
    delta = chunk.choices[0].delta.content or ""
    print(delta, end="", flush=True)

El streaming funciona como en OpenAI: no hay cambios del lado del cliente para mostrar los tokens en directo. Para los agentes y editores, LM Studio también implementa el endpoint /v1/responses, presentado más abajo.

#¿Qué API elegir: OpenAI, Anthropic o nativa?

LM Studio expone tres familias de endpoints. Los endpoints compatibles con OpenAI cubren modelos, respuestas, chat, embeddings y completaciones. Los endpoints compatibles con Anthropic aceptan el formato de mensajes de Anthropic. Desde la versión 0.4.0, la API nativa /api/v1 añade funciones propias de LM Studio: chat con estado, carga y retirada de modelos de la memoria, descarga de modelos y ajuste del contexto por solicitud.

Endpoints según la necesidad
NecesidadEndpointNota
Reemplazar la API de OpenAI en una herramienta existente/v1/chat/completionsCompatibilidad con streaming y herramientas personalizadas
Agente o cliente de tipo Codex/v1/responsesChat con estado y MCP disponibles
Embeddings para un RAG/v1/embeddingsModelo de embeddings cargado previamente
Clientes que usan el formato AnthropicEndpoints compatibles con AnthropicMismo servidor, otro formato de mensajes
Cargar un modelo, retirarlo de la memoria y descargarlo/api/v1/models/*API nativa, recomendada por LM Studio desde 0.4.0
Fijar el contexto en la solicitud/api/v1/chatÚnico punto de entrada que acepta el contexto por solicitud

#6. Varios modelos: carga bajo demanda y TTL

Con la carga bajo demanda (JIT, por Just in Time), la primera llamada a un modelo lo carga en memoria, y /v1/models enumera todos los modelos descargados, no solo los cargados. Sin JIT, /v1/models solo devuelve los modelos ya cargados y debes cargar el modelo antes de llamarlo. Este modo es ideal cuando una herramienta como Zed, Cline o Continue elige por sí misma su modelo.

TTL por defecto
Un modelo cargado bajo demanda se libera de la memoria después de 60 minutos sin solicitudes.
TTL por solicitud
Agrega un campo ttl (en segundos) en la solicitud; 300 corresponde a 5 minutos.
TTL para lms load
Los modelos cargados con lms load no tienen TTL por defecto: usa la opción --ttl.
Auto-Evict
Activado por defecto: solo un modelo cargado a demanda permanece en memoria a la vez. Desactívalo para mantener varios.
!
Dos modelos, el doble de pesos
Auto-Evict libera de la memoria el modelo anterior antes de cargar uno nuevo. Si lo desactivas, los pesos se suman: un modelo de 8 mil millones de parámetros en Q4 (aproximadamente 5 GB) y otro de 9 mil millones (aproximadamente 6 GB) ocupan juntos más de 10 GB incluso antes de contar el contexto. Vigila la VRAM.

#7. Exponer el servidor en red, con autenticación

Para que otro equipo de la red acceda a tu servidor, activa Serve on Local Network en Server Settings o inicia el servidor con la dirección de escucha 0.0.0.0. El servidor deja entonces de escuchar únicamente en localhost: la documentación advierte que vincularlo a cualquier dirección distinta de 127.0.0.1 lo expone más allá de la máquina y recomienda activar la autenticación.

Escuchar en todas las interfaces IPv4
lms server start --bind 0.0.0.0
Cliente remoto
curl http://192.168.1.42:1234/v1/models

A diferencia de una creencia común, LM Studio sabe autenticar las solicitudes. Por defecto, no requiere autenticación; al activar el interruptor en Server Settings, solo acepta solicitudes con un token de API válido, creado en Manage Tokens con permisos seleccionados. El token solo se muestra al crearlo: cópialo inmediatamente. Esta función requiere LM Studio 0.4.0 o una versión más reciente.

Llamada con token de API
curl http://192.168.1.42:1234/v1/models \
  -H "Authorization: Bearer $LM_API_TOKEN"

Para acceder desde Internet, no expongas el puerto: utiliza una VPN o un proxy inverso con TLS. El principio es el mismo que el de un servidor Ollama, detallado en la guía de seguridad. Una alternativa más sencilla para usar un modelo de otra máquina es LM Link, que sirve un modelo de un dispositivo remoto como si estuviera cargado localmente.

#Sin interfaz gráfica: llmster y arranque automático

Desde la versión 0.4.0, el núcleo de LM Studio está disponible como un demonio autónomo, llmster, diseñado para funcionar sin interfaz en un servidor Linux, una máquina con GPU o un ordenador local. Se instala con una línea de comandos, se inicia con lms daemon up y luego el servidor se pone en marcha con lms server start. En un equipo con interfaz, también puedes marcar, en los ajustes de la aplicación, la opción que inicia el servidor al iniciar sesión: al cerrar la aplicación, esta se minimiza en la bandeja del sistema y el servidor sigue funcionando.

Instalar y arrancar llmster (Linux y Mac)
curl -fsSL https://lmstudio.ai/install.sh | bash
lms daemon up
lms server start

#9. Rendimiento: lo que realmente importa

Transferencia de cómputo a la GPU
Carga tantas capas como sea posible en la VRAM. Un modelo que necesita trasladar parte de sus datos a la RAM del sistema pierde la mayor parte de su velocidad de generación.
Context Length
Elige el contexto que necesitas, no el máximo: el caché de contexto ocupa VRAM y aumenta con la longitud.
Max Concurrent Predictions
Número de solicitudes procesadas simultáneamente por un modelo; más allá de eso, esperan en cola.
Unified KV Cache
Activado por defecto: los recursos no se comparten en partes fijas entre solicitudes, lo que permite tamaños de solicitud variables.

La guía sobre Flash Attention y la dedicada a la ventana de contexto detallan los efectos sobre la memoria. Para un alto rendimiento de procesamiento con múltiples usuarios, un servidor dedicado sigue siendo más adecuado: la guía sobre vLLM muestra cómo desplegarlo.

#Límites y alternativas: lo que ha cambiado

Varias limitaciones que se citan a menudo ya no son ciertas, y corregir esa información cambia la elección de la herramienta. La tabla contrasta lo que todavía se lee con lo que indica la documentación actual.

Ideas preconcebidas y realidad (documentación de LM Studio, 2026)
Idea erróneaRealidad
Sin autenticaciónTokens de API disponibles desde la 0.4.0, desactivados por defecto
Las consultas se ejecutan secuencialmenteLa versión 0.4.0 procesa solicitudes paralelas al mismo modelo (procesamiento continuo por lotes), hasta el límite de Max Concurrent Predictions; las siguientes esperan
Licencia comercial obligatoria para el trabajoGratuito en casa y en el trabajo desde julio de 2025, según la declaración de LM Studio
Imposible sin interfaz gráficallmster funciona en modo demonio, sin interfaz gráfica
Un solo equipo, sin compartirServe on Local Network y LM Link permiten dar servicio a otros dispositivos

Siguen existiendo limitaciones reales: LM Studio está diseñado para un equipo, no para un clúster; el batching continuo no sustituye a un servidor pensado para decenas de usuarios, como vLLM; y las actualizaciones de la aplicación pueden cambiar su comportamiento, lo que obliga a mantener una versión fija en una máquina que presta un servicio. Para elegir entre LM Studio y sus competidores, compáralos antes de comprometerte.

FAQ
¿Cómo activar el servidor API en LM Studio?+
Abre la pestaña Developer y activa el interruptor Start server, o ejecuta el comando lms server start en un terminal. El servidor escucha en el puerto establecido en Server Settings, 1234 según la documentación. Pruébalo con curl http://localhost:1234/v1/models, que devuelve los modelos disponibles; si la lista está vacía, carga primero un modelo o activa la carga bajo demanda en Server Settings.
¿Cómo hacer que el servidor LM Studio sea accesible desde otro PC?+
Activa Serve on Local Network en Server Settings, o inicia con el comando lms server start --bind 0.0.0.0. El servidor entonces escucha más allá de localhost: activa también la autenticación con token de API, ya que la documentación recomienda esta precaución para cualquier bind distinto de 127.0.0.1. Desde otro equipo, utiliza la dirección IP de la máquina y el mismo puerto, por ejemplo http://192.168.1.42:1234/v1.
¿Tiene LM Studio autenticación para su API?+
Sí, desde la versión 0.4.0: los tokens de API se crean en Manage Tokens y se activan con Require Authentication en Server Settings. Por defecto, no se requiere autenticación. Una vez activada, todas las solicitudes REST y las de los SDK deben incluir un token válido en el encabezado Authorization.
¿LM Studio procesa varias solicitudes en paralelo?+
Sí, desde la versión 0.4.0, que introduce solicitudes paralelas al mismo modelo con batching continuo. El ajuste Max Concurrent Predictions fija el número de solicitudes simultáneas; una vez superado ese límite, las solicitudes quedan en espera. Para un uso intensivo con múltiples usuarios y decenas de solicitudes simultáneas, un servidor diseñado para ello, como vLLM, sigue siendo más adecuado.
¿Qué identificador poner en el campo model?+
El identificador del modelo tal como aparece en LM Studio, y no un nombre genérico. La solicitud /v1/models los enumera. Con la carga bajo demanda activada, devuelve todos los modelos descargados; sin ella, solo los que ya están cargados en memoria. Copia el identificador exacto en tu cliente, porque un error tipográfico hace que falle la solicitud.
¿Es LM Studio gratuito para uso empresarial?+
Sí: desde el 8 de julio de 2025, LM Studio es gratuito tanto en casa como en el trabajo, sin necesidad de solicitar una licencia comercial, según el anuncio del desarrollador. Existen ofertas comerciales para necesidades adicionales. Revisa las condiciones de uso vigentes antes de un despliegue, especialmente si prevés utilizar las ofertas comerciales del desarrollador.
¿Esta guía te ha ayudado?

¿Un comentario, un error, una precisión? Avísanos, eso mejora la guía para todos.