O LLM Playground é um ambiente interativo para experimentar modelos de linguagem (LLMs) localmente, ajustando parâmetros como temperature, top-k, top-p e max length para entender como eles influenciam o comportamento e a criatividade das respostas.
Este projeto utiliza Python, Hugging Face Transformers e Gradio para criar uma interface simples.
Abaixo está uma prévia da interface da aplicação em execução localmente:
O LLM Playground foi configurado para usar um modelo open source hospedado no Hugging Face, podendo ser facilmente trocado por outro compatível com a biblioteca transformers.
Nome: mistralai/Mistral-7B-Instruct-v0.2
Tipo: Modelo de linguagem autoregressivo (causal)
Tamanho: 7 bilhões de parâmetros
Arquitetura: Transformer Decoder (base GPT)
Licença: Open Source (Apache 2.0)
Treinamento: Supervised Fine-Tuning em dados de instrução multilíngues
Domínio: Instruções gerais, raciocínio e conversação
O Mistral-7B-Instruct foi escolhido por equilibrar:
- Desempenho: excelente qualidade de resposta com baixo tempo de inferência;
- Eficiência: roda localmente em Apple Silicon (M1–M4) via MPS;
- Capacidade: suporte a raciocínio, explicações e tarefas de texto complexas;
- Aderência a instruções: responde bem a prompts no estilo “instruct” (similar ao GPT-3.5).
Você pode modificar o modelo no arquivo app.py trocando a linha:
MODEL_NAME = "mistralai/Mistral-7B-Instruct-v0.2"Primeiro, instale o Miniconda (versão leve do Conda).
No terminal, execute:
brew install --cask minicondaApós a instalação, feche e reabra o terminal e valide:
conda --versionCrie um novo ambiente Conda chamado llm-playground com Python 3.10:
conda create -n llm-playground python=3.12Para ativar o ambiente criado:
conda activate llm-playgroundPara desativar, use:
conda deactivateDentro do ambiente ativo, garanta que o pip está instalado:
conda install pipVerifique a instalação:
pip --versionCom o ambiente ativo, instale as dependências do projeto:
pip install -r requirements.txtExemplo do arquivo requirements.txt
transformers==4.44.0
torch==2.3.1
gradio==4.39.0
accelerate==0.33.0No macOS, o PyTorch utiliza o Metal Performance Shaders (MPS) para acelerar os cálculos em GPU. Antes de rodar a aplicação, exporte esta variável no terminal:
export PYTORCH_ENABLE_MPS_FALLBACK=1Com tudo instalado, rode a aplicação:
python app.pyVocê verá algo como:
Running on local URL: http://0.0.0.0:7860Abra o navegador e acesse:
Você verá a interface do LLM Playground, onde poderá:
-
Inserir prompts de texto
-
Ajustar os parâmetros (temperature, top-k, top-p, max length)
-
Visualizar as respostas geradas em tempo real
| Parâmetro | Função | Efeito Prático |
|---|---|---|
| Temperature | Controla aleatoriedade | 0.3 → objetiva / 1.2 → criativa |
| Top-K | Limita número de palavras candidatas | 20 → previsível / 100 → variado |
| Top-P | Define probabilidade acumulada | 0.8 → respostas seguras / 1.0 → livres |
| Max Length | Tamanho máximo da resposta | 64 → conciso / 256 → detalhado |
llm-playground/
├── app.py # Código principal da aplicação
├── requirements.txt # Dependências Python
└── README.md # Este arquivo de documentação| Erro | Causa provável | Solução |
|---|---|---|
torch not found |
PyTorch não instalado | Reinstale com pip install torch |
MPS not available |
Versão do macOS/PyTorch antiga | Atualize o PyTorch e macOS |
RuntimeError: CUDA not available |
Macs não possuem CUDA | Use device_map="mps" no código |
| Interface não abre | Porta 7860 em uso | Rode python app.py --server_port 7870 |
Este projeto é distribuído sob a licença MIT. Sinta-se livre para modificar e aprimorar conforme suas necessidades.
