Capítulo 2: Otimização para Inferência
Maximizando a Performance de Inferência
Técnicas para inferência rápida e eficiente em produção.
Servidores de Inferência
| Servidor | Ponto forte | Caso de uso |
|---|---|---|
| vLLM | Alto throughput | APIs em produção |
| TGI | Integração com HF | Deploy simples |
| llama.cpp | Eficiência em CPU | Edge/local |
| Ollama | Facilidade de uso | Desenvolvimento local |
Deploy com vLLM
from vllm import LLM, SamplingParams
llm = LLM(model="./merged_model")
sampling_params = SamplingParams(temperature=0.7, max_tokens=256)
outputs = llm.generate(["Hello, how are you?"], sampling_params)
print(outputs[0].outputs[0].text)
Quantização para Inferência
| Nível | Memória | Velocidade | Qualidade |
|---|---|---|---|
| FP16 | 100% | 1x | 100% |
| INT8 | 50% | 1.5x | 99% |
| INT4 | 25% | 2x | 95-98% |
Checklist de Otimização
□ Mesclar adaptador LoRA
□ Aplicar quantização para inferência (INT8/INT4)
□ Habilitar cache KV
□ Usar batch size apropriado
□ Habilitar Flash Attention
□ Considerar speculative decoding
□ Configurar monitoramento adequado