Intermediário 11 minLM Studio

Transformar LM Studio em um servidor de API OpenAI (2026)

Resposta direta

No LM Studio, abra a aba Developer e ative o interruptor Start server: o servidor escuta na porta 1234 e expõe endpoints compatíveis com a OpenAI (/v1/chat/completions, /v1/responses, /v1/embeddings, /v1/models). Qualquer cliente OpenAI funciona apenas alterando o endereço base. Por padrão, o servidor não exige autenticação e escuta apenas em localhost: os tokens de API e o acesso à rede são configurados em Server Settings.

LM Studio não é apenas uma interface de chat: seu servidor local substitui a API da OpenAI para seus scripts, editores de código e agentes, sem enviar uma linha de texto para fora. Este guia abrange a ativação, cada configuração do servidor, o acesso pela rede com autenticação, o carregamento dos modelos sob demanda e as limitações reais de um único computador, considerando as mudanças da versão 0.4.

Por Mohamed Meguedmi·Atualização 2026-09-30·Testado no Windows, macOS e Linux

#O que você obtém

Ao final deste guia, você terá um endereço http://localhost:1234/v1 que qualquer SDK da OpenAI (Python, JavaScript, C#), LangChain ou ferramenta de código como Cline ou Continue pode usar no lugar da API da OpenAI. O servidor também oferece uma API nativa em /api/v1 (chat com estado, carregamento e download de modelos) e endpoints compatíveis com a Anthropic. Tudo permanece na sua máquina: o modelo, as requisições e as respostas não saem do seu computador, desde que você mesmo não exponha o servidor na rede.

#1. Iniciar o servidor

O kit IA Local

Seu ChatGPT privado e gratuito na sua máquina em 1 hora — LM Studio, Ollama, Open WebUI, seus documentos, sem nuvem.

  • Espaço online vitalício
  • PDF + arquivos
  • Atualizações vitalícias
  1. 01
    Abra a aba Developer
    No LM Studio, a aba Developer agrupa o servidor, seus logs e suas configurações. O modelo a ser servido deve ser baixado previamente.
  2. 02
    Ative Start server
    Ative o interruptor Start server: o servidor inicia na porta indicada em Server Settings, 1234 nos exemplos da documentação.
  3. 03
    Ou inicie pela linha de comando
    Através de um terminal, o comando lms server start inicia o mesmo servidor, sem abrir a interface.
  4. 04
    Verifique a lista de modelos
    Consulte /v1/models para confirmar que o servidor está respondendo e ver os identificadores dos modelos a serem usados nas suas requisições.
Iniciar o servidor pelo terminal
lms server start

#2. As configurações do servidor, uma por uma

As configurações ficam em Developer, Server Settings. Elas determinam quem pode chamar o servidor e o que os clientes podem fazê-lo executar. A maioria dos problemas de integração vem de uma dessas opções, geralmente a de rede ou a de CORS.

Server Settings do LM Studio (documentação oficial)
AjusteFunçãoRecomendação
Server PortPorta de escuta do servidor (1234 na documentação)Altere-o se a porta já estiver em uso
Require AuthenticationExige um token de API válido no cabeçalho AuthorizationHabilite-o assim que o servidor sair do localhost
Serve on Local NetworkTorna o servidor acessível aos outros dispositivos da rede localDesativado por padrão; combinar com autenticação
Allow per-request MCPsPermite que os clientes usem servidores MCP remotos temporáriosDeixe desativado a menos que haja necessidade específica
Allow calling servers from mcp.jsonPermite que os clientes usem os servidores MCP definidos em LM StudioExige autenticação; é arriscado se um MCP acessar seus arquivos
Enable CORSPermite aplicações web de origens diferentesApenas para um aplicativo web ou algumas extensões
Just in Time Model LoadingCarrega os modelos sob demanda, no momento da requisiçãoPrático com ferramentas de terceiros; veja a seção dedicada
Auto Unload Unused JIT ModelsDescarrega os modelos JIT que deixaram de ser usadosLibera a memória
Only Keep Last JIT Loaded ModelMantém apenas o último modelo carregado sob demandaÚtil em uma placa com VRAM limitada
!
Uma configuração que expõe seus arquivos
A opção que permite chamar os servidores de mcp.json dá aos clientes da API acesso às ferramentas que você definiu nesse arquivo. A documentação desaconselha seu uso sem autenticação e, inclusive, exige que a opção Require Authentication esteja ativada. Só a ative se você conhecer o alcance de cada servidor MCP declarado.

#3. Testar com curl

Uma primeira chamada de teste é suficiente para validar o servidor. Nas requisições, o campo model deve conter o identificador do modelo tal como aparece no LM Studio, e não um nome genérico como local-model: a documentação lembra isso no exemplo curl.

Lista de modelos
curl http://localhost:1234/v1/models
Completação 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
  }'

A resposta é um JSON no formato OpenAI: choices[0].message.content contém o texto. Se o campo model estiver incorreto, ou se o carregamento sob demanda estiver desativado e o modelo não estiver carregado, a requisição falha: verifique primeiro o identificador retornado por /v1/models.

#4. Chamar do Python

O SDK openai pode ser usado alterando apenas o endereço base: é essa a alteração mostrada na documentação do LM Studio. O SDK exige uma chave; enquanto a autenticação estiver desativada, o LM Studio não a verifica, e, se você ativar a autenticação, a chave passa a ser seu token de API.

Através do 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)

O streaming funciona como na OpenAI: nenhuma alteração é necessária no lado do cliente para exibir os tokens em tempo real. Para agentes e editores, o LM Studio também implementa o endpoint /v1/responses, apresentado abaixo.

#Qual API escolher: OpenAI, Anthropic ou nativa

O LM Studio oferece três famílias de endpoints. Os endpoints compatíveis com a OpenAI cobrem modelos, respostas, chat, embeddings e completions. Os endpoints compatíveis com a Anthropic aceitam o formato de mensagens da Anthropic. Desde a versão 0.4.0, a API nativa /api/v1 adiciona funções próprias do LM Studio: chat com estado, carregamento, descarregamento e download de modelos, além de configuração do contexto por requisição.

Endpoints conforme a necessidade
NecessidadeEndpointObservação
Substituir a API OpenAI em uma ferramenta existente/v1/chat/completionsSuporte a streaming e ferramentas personalizadas
Agente ou cliente do tipo Codex/v1/responsesChat com estado e MCP disponíveis
Embeddings para um RAG/v1/embeddingsModelo de embeddings carregado antecipadamente
Clientes que usam o formato AnthropicEndpoints compatíveis com AnthropicMesmo servidor, outro formato de mensagens
Carregar, descarregar ou baixar um modelo/api/v1/models/*API nativa, recomendada por LM Studio desde 0.4.0
Fixar o contexto na requisição/api/v1/chatÚnico endpoint que aceita o contexto por requisição

#6. Vários modelos: carregamento on-demand e TTL

Com o carregamento on-demand (JIT, para Just in Time), a primeira chamada a um modelo o carrega na memória, e /v1/models lista todos os modelos baixados, não apenas os carregados. Sem JIT, /v1/models retorna apenas os modelos já carregados e você precisa carregar o modelo antes de chamá-lo. Esse modo é ideal quando uma ferramenta como Zed, Cline ou Continue escolhe sozinha o modelo.

TTL padrão
Um modelo carregado on-demand é descarregado após 60 minutos sem requisição.
TTL por requisição
Adicione um campo ttl (em segundos) na solicitação; 300 corresponde a 5 minutos.
TTL para lms load
Os modelos carregados com lms load não possuem TTL padrão: use a opção --ttl.
Auto-Evict
Ativado por padrão: apenas um modelo carregado sob demanda permanece na memória por vez. Desative-o para manter vários.
!
Dois modelos, o dobro dos pesos
Auto-Evict descarrega o modelo anterior antes de carregar um novo. Se você desativar, os pesos se acumulam: um modelo de 8 bilhões de parâmetros em Q4 (aproximadamente 5 GB) e outro de 9 bilhões (aproximadamente 6 GB) ocupam juntos mais de 10 GB antes mesmo do contexto. Monitore a VRAM.

#7. Expor o servidor na rede, com autenticação

Para que outro computador da rede acesse seu servidor, ative Serve on Local Network em Server Settings ou inicie com o endereço de escuta 0.0.0.0. O servidor deixa então de escutar apenas em localhost: a documentação alerta que qualquer bind diferente de 127.0.0.1 o expõe para além da própria máquina e recomenda ativar a autenticação.

Escutar em todas as interfaces IPv4
lms server start --bind 0.0.0.0
Cliente remoto
curl http://192.168.1.42:1234/v1/models

Diferentemente de uma ideia comum, LM Studio sabe autenticar as requisições. Por padrão, não exige autenticação; ao ativar a opção no Server Settings, aceita apenas requisições com token de API válido, criado no Manage Tokens com permissões escolhidas. O token é exibido apenas na criação: copie-o imediatamente. Essa função exige LM Studio 0.4.0 ou uma versão mais recente.

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

Para acesso pela Internet, não exponha a porta: use uma VPN ou um proxy reverso com TLS. O princípio é o mesmo de um servidor Ollama, detalhado no guia de segurança. Uma alternativa mais simples para usar um modelo de outra máquina é o LM Link, que disponibiliza um modelo de um dispositivo remoto como se estivesse carregado localmente.

#Sem interface gráfica: llmster e início automático

Desde a versão 0.4.0, o núcleo do LM Studio existe na forma de um daemon autônomo, llmster, projetado para rodar sem interface em um servidor Linux, em uma máquina com GPU ou em um computador local. Ele é instalado com uma linha de comando, iniciado com lms daemon up e, em seguida, o servidor é iniciado com lms server start. Em um computador com interface, você também pode marcar, nas configurações do aplicativo, a opção que inicia o servidor ao entrar na sessão: ao fechar o aplicativo, ele é minimizado para a bandeja do sistema e o servidor continua funcionando.

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

#9. Desempenho: o que realmente importa

Offload para a GPU
Carregue o maior número de camadas possível na VRAM. Um modelo que precisa usar também a RAM do sistema perde a maior parte de sua taxa de geração.
Context Length
Escolha o tamanho de contexto de que você precisa, não o máximo: o cache de contexto ocupa VRAM e cresce com o tamanho do contexto.
Max Concurrent Predictions
Número de requisições processadas simultaneamente por um modelo; acima disso, elas aguardam na fila.
Unified KV Cache
Ativado por padrão: os recursos não são compartilhados em partes fixas entre requisições, o que permite tamanhos de requisição variáveis.

O guia sobre Flash Attention e o guia sobre a janela de contexto detalham os efeitos na memória. Para uma alta taxa de processamento com vários usuários, um servidor dedicado continua sendo mais adequado: o guia sobre vLLM mostra como fazer a implantação.

#Limitações e alternativas: o que mudou

Várias limitações frequentemente citadas já não se aplicam, e corrigir essas informações muda a escolha da ferramenta. A tabela compara o que ainda se lê com o que a documentação atual indica.

Ideias preconcebidas e realidade (documentação do LM Studio, 2026)
MitoRealidade
Sem autenticaçãoTokens de API disponíveis a partir da 0.4.0, desativados por padrão
As requisições são executadas sequencialmenteA 0.4.0 trata de requisições paralelas ao mesmo modelo (batching contínuo), até Max Concurrent Predictions; as seguintes esperam
Licença comercial obrigatória no trabalhoGratuito em casa e no trabalho desde julho de 2025, segundo a divulgação do LM Studio
Impossível sem interface gráficallmster funciona como daemon, sem interface gráfica
Um único computador, sem compartilhamentoServe on Local Network e LM Link permitem atender outros dispositivos

Ainda existem limitações reais: o LM Studio foi feito para uma estação de trabalho, não para um cluster; o batching contínuo não substitui um servidor projetado para dezenas de usuários, como o vLLM; e as atualizações do aplicativo podem alterar um comportamento, o que exige manter uma versão fixa em uma máquina que disponibiliza um serviço. Para escolher entre o LM Studio e seus concorrentes, compare-os antes de se comprometer.

FAQ
Como ativar o servidor API no LM Studio?+
Abra a aba Developer e ative o interruptor Start server, ou execute o comando lms server start em um terminal. O servidor escuta na porta definida em Server Settings, 1234 na documentação. Teste-o com curl http://localhost:1234/v1/models, que retorna os modelos disponíveis; se a lista estiver vazia, carregue primeiro um modelo ou ative o carregamento sob demanda em Server Settings.
Como tornar o servidor LM Studio acessível de outro PC?+
Ative Serve on Local Network em Server Settings, ou inicie com lms server start --bind 0.0.0.0. O servidor passa então a escutar além de localhost: ative também a autenticação por token de API, pois a documentação recomenda essa precaução para qualquer bind diferente de 127.0.0.1. De outro computador, use o endereço IP da máquina e a mesma porta, por exemplo http://192.168.1.42:1234/v1.
O LM Studio tem autenticação para sua API?+
Sim, a partir da versão 0.4.0: os tokens de API são criados em Manage Tokens e ativados com Require Authentication em Server Settings. Por padrão, nenhuma autenticação é exigida. Uma vez ativada, todas as requisições REST e as dos SDKs devem conter um token válido no cabeçalho Authorization.
O LM Studio trata múltiplas requisições em paralelo?+
Sim, desde a versão 0.4.0, que introduz requisições paralelas ao mesmo modelo com batching contínuo. A configuração Max Concurrent Predictions define o número de requisições simultâneas; acima desse limite, as requisições aguardam. Para uso intenso com múltiplos usuários e dezenas de requisições simultâneas, um servidor projetado para isso, como o vLLM, continua mais adequado.
Qual identificador colocar no campo model?+
O identificador do modelo como aparece no LM Studio, e não um nome genérico. A requisição /v1/models lista esses identificadores. Com o carregamento sob demanda ativado, ela retorna todos os modelos baixados; sem ele, apenas os já carregados na memória. Copie o identificador exato no seu cliente, pois um erro de digitação faz a requisição falhar.
O LM Studio é gratuito para uso em empresa?+
Sim: desde 8 de julho de 2025, o LM Studio é gratuito tanto em casa quanto no trabalho, sem precisar solicitar uma licença comercial, segundo o anúncio da empresa responsável pelo software. Existem ofertas comerciais para necessidades adicionais. Verifique os termos de uso vigentes antes de uma implantação, especialmente se você planeja usar as ofertas comerciais dessa empresa.
Este guia ajudou você?

Um comentário, um erro ou uma observação? Avise-nos; isso ajuda a melhorar o guia para todos.