Text Generation WebUI (oobabooga)
oobabooga é o pseudônimo do desenvolvedor do Text Generation WebUI, hoje renomeado TextGen: uma interface open source (AGPL-3.0, cerca de 47 mil estrelas no GitHub) para executar modelos de linguagem localmente, sem telemetria. Ela pode ser baixada em versão portátil, como um aplicativo de desktop, para modelos GGUF; a instalação completa adiciona outros motores, o treinamento de LoRA e as extensões. Fonte oficial: o repositório GitHub oobabooga/textgen.
Muitos tutoriais sobre Text Generation WebUI descrevem uma versão de há dois anos: motores desaparecidos, extensões substituídas, comandos alterados. Este guia aborda o assunto com base no repositório atual: o novo nome, as três formas de instalá-lo, os motores realmente suportados, as extensões, a API e as configurações de segurança a serem conhecidas antes de abrir a interface para outros.
#oobabooga, Text Generation WebUI, TextGen: de que se trata?
oobabooga é o pseudônimo no GitHub do desenvolvedor do projeto. A ferramenta, chamada Text Generation WebUI por muito tempo, agora é apresentada como TextGen: a antiga URL do repositório redireciona para github.com/oobabooga/textgen. Trata-se de uma aplicação open source, sob licença AGPL-3.0, que reúne chat, geração livre, visão, chamada de ferramentas, API compatível com OpenAI e treinamento de LoRA. O repositório a descreve como totalmente offline e privada, sem telemetria, recursos externos nem requisições de atualização remota.
O projeto está ativo: a última versão que identificamos, a 4.9, data de maio de 2026. Até onde sabemos, não existe outro site oficial além desse repositório do GitHub: desconfie de sites de download de terceiros e de forks que afirmam substituí-lo, pois um executável adulterado é executado com suas permissões.
#1. Instalação: portátil, com um clique ou manual
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
O repositório oferece três opções. A versão portátil é a mais simples: inclui todas as dependências, é iniciada com um clique duplo e carrega apenas modelos GGUF (motor llama.cpp). Está disponível para Linux, Windows e macOS, com variantes CUDA, Vulkan, ROCm e somente CPU. A instalação completa, necessária para os outros motores, treinamento, geração de imagens e extensões, baixa o PyTorch e exige aproximadamente 10 GB de espaço em disco.
| Modo | O que você obtém | O que você precisa saber |
|---|---|---|
| Versão portátil (aplicativo de desktop) | GGUF via llama.cpp, tudo incluído | O mais simples; sem extensões nem outros motores |
| Instalador de um clique (scripts start_) | Instalação completa: ExLlamaV3, Transformers, treinamento, extensões | Aproximadamente 10 GB; escolha do fabricante da placa gráfica na instalação |
| Manual com venv ou Conda | Controle total do ambiente Python | Para desenvolvedores; reservado a casos particulares |
- 01Baixar a versão portátilNa página de versões do repositório, escolha o arquivo para seu sistema e sua GPU. Para NVIDIA, use o build cuda13.1 se nvidia-smi indicar uma versão de CUDA igual ou superior a 13.1; caso contrário, use cuda12.4. AMD e Intel usam Vulkan, AMD também pode usar ROCm, e existe uma versão que usa apenas a CPU.
- 02Extrair e iniciarDescompacte o arquivo e depois dê um clique duplo em textgen: uma janela se abre.
- 03No macOS, remover a quarentenaExecute xattr -cr seguido do caminho da pasta extraída antes da primeira execução, conforme indicado na nota da versão.
- 04Adicionar um modeloColoque um arquivo GGUF na pasta user_data/models; a interface o detecta automaticamente.
- 05Carregar e conversarSelecione o modelo na aba de modelos, depois abra o chat.
É possível atualizar uma versão portátil sem perder seus modelos nem suas configurações: baixe o novo arquivo compactado, extraia-o e substitua a pasta user_data dessa nova versão pela pasta user_data da instalação antiga. Desde a versão 4.0, você também pode colocar user_data um nível acima das pastas de instalação; nesse caso, ele é detectado automaticamente.
Para a instalação completa, clone o repositório e execute o script do seu sistema. O script pede o fabricante da sua GPU, instala as dependências em um diretório local e, em seguida, você abre http://127.0.0.1:7860 no navegador.
Tudo fica dentro de um diretório installer_files local. Para reinstalar de zero, remova esse diretório e execute novamente o script. Para aplicar opções de forma permanente, escreva-as no arquivo user_data/CMD_FLAGS.txt, por exemplo --api para ativar a API. Nenhum desses scripts precisa de permissões de administrador.
#2. Baixar e escolher um modelo
As instruções de uso do repositório cabem em três frases: baixe um arquivo GGUF do Hugging Face, coloque-o em user_data/models e a interface o detecta. Modelos em vários arquivos (Transformers em 16 bits, EXL3) ficam em uma subpasta do mesmo diretório e exigem a instalação completa, não a versão portátil.
O único critério prático é a memória. Referências do site em quantização Q4, considerando apenas os pesos: 3B em torno de 2 GB, 7 a 8B em torno de 5 GB, 14B em torno de 9 GB, 32B em torno de 19 a 20 GB, 70B em torno de 40 GB. Adicione o cache de contexto e uma margem para o sistema. A calculadora de VRAM do site dá o total exato para o seu contexto.
#Contexto e cache: as duas opções que economizam memória
Duas opções de inicialização afetam diretamente o uso de memória. --ctx-size define o tamanho do contexto em tokens: o valor 0 significa automático com llama.cpp, desde que todas as camadas sejam colocadas na GPU (--gpu-layers=-1), e o valor padrão é 8.192 para os outros motores. --cache-type escolhe o formato do cache de contexto; com llama.cpp, os valores válidos são fp16, q8_0 e q4_0. Um cache quantizado ocupa menos memória que um cache fp16, ao custo de uma precisão ligeiramente menor: experimente q8_0 primeiro se faltar memória, antes de reduzir o tamanho do modelo.
O repositório também indica duas ferramentas da comunidade para orientar essa escolha: uma calculadora de memória para modelos GGUF e uma lista de quantizações recomendadas. Verifique os resultados dessas ferramentas com a calculadora do site e depois monitore o uso real da placa durante uma conversa longa.
#3. Escolher um motor (loader)
TextGen carrega um modelo com um motor, chamado loader. Por padrão, ele o detecta; você pode forçar com a opção --loader. Os valores aceitos hoje são Transformers, llama.cpp, ExLlamav3_HF, ExLlamav3 e TensorRT-LLM, e é possível mudar o motor e o modelo sem reiniciar.
| Motor | Formato do modelo | Uso |
|---|---|---|
| llama.cpp | GGUF | A escolha padrão: processador e GPU, único motor da versão portátil |
| ik_llama.cpp | GGUF | Variante do llama.cpp, listada como backend adicional |
| ExLlamaV3 | EXL3 | Quantização para GPU, na instalação completa |
| Transformers | Modelos de 16 bits, safetensors | Versátil e com alto consumo de memória; também serve para treinamento |
| TensorRT-LLM | Modelos compilados para NVIDIA | Para os GPUs NVIDIA, instalação completa |
Se você está começando, fique com o llama.cpp e o formato GGUF: é o caminho mais curto, usado na versão portátil e também por outras ferramentas (Ollama, LM Studio). Os outros motores se justificam por uma necessidade específica: um formato particular, o fine-tuning ou o aproveitamento máximo de uma placa NVIDIA.
#4. Chat, instruct, notebook, vision
- Instruct
- O modo que segue instruções, como o ChatGPT. Os prompts são formatados automaticamente com templates Jinja2.
- Chat-instruct e chat
- Para conversar com personagens personalizados.
- Notebook
- Uma aba de geração livre, fora dos turnos de chat: você escreve, o modelo continua.
- Visão e arquivos
- Você pode anexar imagens às mensagens, bem como arquivos de texto, PDF e .docx para discutir seu conteúdo.
- Edição e ramificações
- Modificar uma mensagem, navegar entre suas versões e abrir uma ramificação em qualquer ponto da conversa.
Os modelos também podem chamar ferramentas durante a conversa: pesquisa na web, recuperação de páginas, cálculos. Cada ferramenta é um simples arquivo Python, e os servidores MCP são suportados. Essa funcionalidade se combina com o contexto: um agente que chama ferramentas preenche rapidamente uma janela curta, pense em aumentar o tamanho do contexto com a opção --ctx-size.
#5. Extensões: o que realmente existe
As extensões funcionam apenas com a instalação completa. O diretório das extensões do repositório inclui coqui_tts, silero_tts (síntese vocal), whisper_stt (entrada vocal), sd_api_pictures e send_pictures (imagens), google_translate, superbooga e superboogav2, ngrok, gallery e perplexity_colors. O README acrescenta que existem extensões comunitárias adicionais.
#6. Modo API
Adicione --api às suas opções para iniciar a API. De acordo com a wiki do repositório, a porta padrão é 5000, podendo ser alterada com --api-port, e a API permanece local enquanto você não solicitar explicitamente sua abertura. A wiki especifica que ela funciona offline, não se conecta à OpenAI e não cria nenhum log. Os endpoints abrangem chats, completions e mensagens no formato Anthropic, com chamada de ferramentas.
Você pode conectar qualquer cliente OpenAI (um frontend de chat, um agente de código, LangChain) apontando para este endereço. A documentação interativa de todos os pontos de acesso está disponível no mesmo endereço, no caminho /docs.
#Abrir a interface para outras pessoas: as opções que você precisa conhecer
Por padrão, a interface só pode ser acessada a partir da sua máquina. Três opções mudam isso. --listen torna a interface acessível a partir da sua rede local. --share cria um endereço público, que deve ser evitado, salvo em um teste pontual. E --multi-user não salva os históricos de conversa: o repositório descreve essa opção como adequada para pequenas equipes de confiança, não como uma solução empresarial.
Para a API, adicione --api-key com uma chave de sua escolha assim que o serviço passar a escutar na rede: sem chave, qualquer dispositivo que consiga acessar a porta pode consultar seu modelo. Para um uso efetivo em equipe (contas, funções, registro de logs), prefira colocar um frontend dedicado à frente do motor.
#TextGen frente a Ollama e LM Studio
| Necessidade | TextGen | Ollama ou LM Studio |
|---|---|---|
| Iniciar rápido com um GGUF | Versão portátil, também simples | Ollama: um comando; LM Studio: interface guiada |
| Testar vários motores e formatos | Sim: é seu ponto forte | Centrados em GGUF |
| Fazer fine-tuning de um LoRA na interface | Sim, com a instalação completa | Não |
| Atender uma equipe | Pouco adequado (limitação de múltiplos usuários) | Ollama como backend do Open WebUI ou do LibreChat |
| Uso diário fluido | Mais ajustes, mais operações manuais | Mais fácil de manter |
Resumindo: TextGen é a ferramenta de exploração e ajuste fino, não para uso diário de iniciantes. Se você quer conversar primeiro com um modelo, comece com Ollama ou LM Studio; volte para TextGen quando precisar de um motor, formato ou treinamento que os outros não oferecem.
- Ollama vs LM Studio vs Jan vs GPT4All
- Fonte: repositório TextGen (oobabooga)
- Fonte: notas da versão 4.9
- Fonte: wiki, API compatível com OpenAI
oobabooga e Text Generation WebUI, é a mesma coisa?+
Como instalar o Text Generation WebUI em 2026?+
Quais motores e formatos são suportados?+
Funciona realmente offline e sem telemetria?+
Como ativar a API para conectar outra ferramenta?+
É melhor escolher TextGen do que Ollama?+
Um comentário, um erro ou uma observação? Avise-nos; isso ajuda a melhorar o guia para todos.