Um compilador de machine learning e mecanismo de implantação que executa modelos de linguagem grandes em GPUs, navegadores e dispositivos móveis, com APIs compatíveis com a OpenAI.
mlc-ai/web-llm
Um mecanismo TypeScript que executa inferência de LLM inteiramente no navegador com WebGPU e oferece uma API compatível com a OpenAI.
- Estrelas
- 19,291
- Forks
- 1,401
- Issues abertas
- 154
- Último commit
- há 10 dias
O que é?
O WebLLM é um mecanismo de inferência no navegador para modelos de linguagem grandes. A inferência é executada inteiramente no cliente, sem envolver um servidor, e usa WebGPU para aceleração de hardware. Ele é distribuído como um pacote npm (@mlc-ai/web-llm) e também pode ser carregado diretamente de uma CDN.
O mecanismo expõe a mesma interface de conclusão de chat da API da OpenAI, permitindo que código existente no estilo OpenAI use modelos abertos executados localmente no navegador. Ele oferece suporte a respostas em streaming, saída em modo JSON, geração com seed e controle no nível de logits. O suporte a chamadas de função está listado como em desenvolvimento.
Os modelos são usados no formato MLC, e o projeto oferece suporte a famílias como Llama 3, Phi 3, Gemma, Mistral e Qwen. Desenvolvedores podem executar o mecanismo em um Web Worker ou Service Worker dedicado, ou dentro de uma extensão do Chrome, além de configurar backends de cache do navegador, como Cache API, IndexedDB e OPFS.
Recursos principais
- 01Executa inferência de LLM no navegador com aceleração por WebGPU, sem precisar de servidor.
- 02Oferece uma API de conclusão de chat compatível com a OpenAI, com streaming e modo JSON.
- 03Oferece suporte a modelos como Llama 3, Phi 3, Gemma, Mistral e Qwen no formato MLC.
- 04Pode ser executado em Web Workers, Service Workers ou extensões do Chrome.
- 05Oferece verificação de integridade baseada em SRI para artefatos de modelos baixados.
Casos de uso
- Criar um chatbot que preserve a privacidade, no qual os prompts nunca saem do dispositivo do usuário.
- Adicionar um assistente de IA local a um app web usando um cliente no estilo OpenAI.
- Desenvolver extensões do Chrome que chamam um modelo de linguagem localmente.
- Prototipar recursos de LLM no navegador sem executar servidores de inferência no backend.
Início rápido
- 1
Instale o pacote com npm
npm install @mlc-ai/web-llm - 2
Importe o engine no seu código
import { CreateMLCEngine } from "@mlc-ai/web-llm"; - 3
Crie o engine com um model ID (o modelo é baixado no primeiro carregamento)
const engine = await CreateMLCEngine("Llama-3.1-8B-Instruct-q4f32_1-MLC", { initProgressCallback });
Antes de usar
- Requer um navegador compatível com WebGPU.
- O primeiro carregamento do modelo baixa arquivos grandes, o que pode levar bastante tempo.
Tópicos
Perguntas frequentes
- O que é web-llm?
- Um mecanismo TypeScript que executa inferência de LLM inteiramente no navegador com WebGPU e oferece uma API compatível com a OpenAI. O WebLLM é um mecanismo de inferência no navegador para modelos de linguagem grandes. A inferência é executada inteiramente no cliente, sem envolver um servidor, e usa WebGPU para aceleração de hardware. Ele é distribuído como um pacote npm (@mlc-ai/web-llm) e também pode ser carregado diretamente de uma CDN.
- web-llm é gratuito? Qual é a licença?
- web-llm é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- web-llm ainda é mantido?
- Manutenção ativa. O último commit de web-llm foi em 11 de out. de 2026.
- Para que posso usar web-llm?
- Criar um chatbot que preserve a privacidade, no qual os prompts nunca saem do dispositivo do usuário. Adicionar um assistente de IA local a um app web usando um cliente no estilo OpenAI. Desenvolver extensões do Chrome que chamam um modelo de linguagem localmente. Prototipar recursos de LLM no navegador sem executar servidores de inferência no backend.
- Como instalar web-llm?
- Instale o pacote com npm: npm install @mlc-ai/web-llm Importe o engine no seu código: import { CreateMLCEngine } from "@mlc-ai/web-llm"; Crie o engine com um model ID (o modelo é baixado no primeiro carregamento): const engine = await CreateMLCEngine("Llama-3.1-8B-Instruct-q4f32_1-MLC", { initProgressCallback });
- Onde consigo web-llm?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/mlc-ai/web-llm
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Código oficial de treinamento e referência do RWKV, uma arquitetura de modelo de linguagem no estilo RNN que também pode ser treinada em paralelo como um transformer GPT.
Uma interface de chat em SvelteKit para LLMs, compatível com qualquer API compatível com OpenAI e baseada no código do HuggingChat.
Biblioteca open source de prompts para modelos de chat com IA, mantida pela comunidade e disponível em site, datasets CSV e Hugging Face, CLI e integração com servidor MCP.
Jan é um app de desktop open source para baixar e executar LLMs localmente, com uma interface semelhante à do ChatGPT e opção de conexão a modelos na nuvem.
Biblioteca de otimização de deep learning que facilita e torna mais eficiente o treinamento distribuído e a inferência de modelos grandes.