Estime a pegada total
Os pesos, a quantização, o comprimento de contexto, a cache e os pedidos simultâneos afetam todos a memória. Deixe margem para o sistema operativo e o runtime. A inferência CPU e a inferência por GPU têm perfis de custo e débito diferentes; um VPS padrão não implica acesso a GPU.
Mantenha o modelo API privado
Um runtime como o Ollama não deve ser exposto à internet sem uma camada de segurança adequada. Vincule ao loopback ou a uma interface privada quando possível, e coloque acesso TLS autenticado à frente de qualquer rota remota.
Baixe com proveniência
Revise a licença do modelo, o código-fonte, o checksum quando fornecido e o uso pretendido. Formatos de modelo não confiáveis ou código de carregamento adjacente podem ampliar a superfície de ataque. Mantenha o runtime e as dependências atualizados.
Faça benchmark de uma solicitação real
Meça a latência do primeiro token, tokens por segundo, pressão de memória e comportamento concorrente com o tamanho de contexto que sua aplicação usa. Adicione limites de tamanho de solicitação, enfileiramento e timeouts para que um prompt grande não esgote a máquina.
Prove que o API não é público
O acesso local ao Ollama API não requer autenticação. Se apenas a sua própria aplicação o chamar, mantenha o listener em loopback. Para utilização remota, adicione um gateway TLS autenticado ou um túnel privado com limites de pedidos e de concorrência. Uma credencial API na nuvem não protege automaticamente o listener local. Teste a partir de um dispositivo sem acesso e exija a rejeição.
- Inspecione o endereço de escuta
- Tente uma solicitação não autenticada de fora da rede permitida
- Aplique limites ao tamanho do contexto e às gerações simultâneas
ss -lntp
curl --fail http://127.0.0.1:11434/api/tagsDocumentação oficial: Modelo de autenticação do Ollama
Mantenha um pequeno caderno de benchmarks
Registe a variante exata do modelo, a quantização, o comprimento de contexto, o prompt e o número de pedidos paralelos. Meça a memória em tempo de execução em vez de assumir que é igual ao tamanho de transferência do modelo. Repita o mesmo pedido após alterações de configuração e mantenha as verificações de qualidade, bem como as medições de velocidade. Se uma tarefa recorrer intensamente à swap ou prejudicar a aplicação principal, reduza a concorrência ou utilize uma máquina mais adequada.
Orçamente a memória do modelo antes de aumentar o contexto
Use a contagem de parâmetros multiplicada pelos bits de quantização dividida por oito como uma estimativa aproximada de bytes apenas de pesos, depois acrescente runtime, cache de contexto/KV, concorrência e margem para o sistema operativo. Não é uma garantia de capacidade. No Ollama, pedidos paralelos e contexto maior aumentam o uso de memória, enquanto o trabalho em fila pode tornar lento um serviço aparentemente saudável. Comece com um modelo e um pedido, registe a memória de pico e aumente a concorrência apenas depois de a carga de trabalho cumprir o seu objetivo de latência.
- Registe a etiqueta do modelo, a versão do runtime, a quantização, o comprimento do prompt e o limite de saída em cada benchmark.
- Separe o carregamento a frio do desempenho de pedidos a quente; respondem a diferentes questões de dimensionamento.
- Se o host fizer swap ou um processo for encerrado, reduza a concorrência/contexto e inspecione os eventos de memória antes de comprar núcleos CPU.
- Reveja os modelos carregados e o crescimento da cache quando o primeiro pedido é rápido mas os seguintes ficam bloqueados.
# Inspect the model runner and host without changing its configuration.
ollama ps
free -h
df -hDocumentação oficial: Ollama: memória, concorrência e configuração de rede
Testar embeddings como carga de trabalho própria
Um modelo de incorporação transforma o texto de entrada em vetores para recuperação; não é o mesmo perfil de recursos que uma resposta gerada longa. Utilize um modelo e uma estratégia de pré-processamento de forma consistente ao indexar e consultar. O endpoint de incorporação do Ollama aceita texto ou lotes e pode rejeitar entradas demasiado longas quando truncate é falso. Escolha uma política de fragmentação intencional para que os documentos não sejam silenciosamente cortados num limite inconveniente.
- Avalie separadamente um lote de indexação e uma consulta interativa, incluindo o custo de armazenamento e de banco de dados vetorial.
- Mantenha o nome do modelo e as dimensões de embedding junto ao índice. Alterá-los geralmente exige um plano deliberado de reindexação.
- Use um pequeno conjunto de avaliação de recuperação: perguntas conhecidas, documentos esperados e casos que devem retornar nenhum resultado relevante.
- Trate prompts, documentos indexados e logs de acesso como armazenamentos de dados separados, com suas próprias regras de acesso e exclusão.
Documentação oficial: Ollama: embeddings API