Sobre o projeto

WebLLM é um mecanismo de inferência de LLM de alto desempenho no navegador que traz a inferência de modelos de linguagem diretamente para navegadores web com aceleração de hardware. Tudo roda dentro do navegador, sem suporte de servidor, e é acelerado com WebGPU. É totalmente compatível com a API OpenAI, suportando streaming, modo JSON, chamada de funções (em desenvolvimento) e mais. Os principais recursos incluem inferência no navegador via WebGPU, compatibilidade total com a API OpenAI, geração estruturada de JSON, suporte extensivo a modelos (Llama 3, Phi 3, Gemma, Mistral, Qwen e outros), integração de modelos personalizados no formato MLC, integração plug-and-play via npm ou CDN, streaming e interações em tempo real, suporte a Web Worker e Service Worker, e suporte a extensões do Chrome. O WebLLM suporta vários backends de cache, incluindo a API de Cache do navegador, IndexedDB, Sistema de Arquivos Privado de Origem (OPFS) e um backend experimental de armazenamento entre origens. Ele também fornece verificação opcional de integridade para artefatos de modelo usando hashes SRI. O projeto funciona como um complemento ao MLC LLM, permitindo a implantação universal de LLMs em diversos ambientes de hardware. Os desenvolvedores podem usá-lo como um pacote npm para construir aplicações web, com exemplos disponíveis para chatbots, streaming, modo JSON, chamada de funções, service workers e extensões do Chrome.