Latência refere-se ao tempo que o modelo leva para processar um prompt e gerar uma saída. A latência pode ser influenciada por vários fatores, como o tamanho do modelo, a complexidade do prompt e a infraestrutura subjacente que suporta o modelo e o ponto de interação.

É sempre melhor primeiro desenvolver um prompt que funcione bem sem restrições de modelo ou prompt, e depois tentar estratégias de redução de latência. Tentar reduzir a latência prematuramente pode impedir você de descobrir como é o desempenho máximo.


Como medir a latência

Ao discutir latência, você pode encontrar vários termos e medições:

  • Latência base: Este é o tempo que o modelo leva para processar o prompt e gerar a resposta, sem considerar os tokens de entrada e saída por segundo. Fornece uma ideia geral da velocidade do modelo.
  • Tempo até o primeiro token (TTFT): Esta métrica mede o tempo que o modelo leva para gerar o primeiro token da resposta, a partir do momento em que o prompt foi enviado. É particularmente relevante quando você está usando streaming (mais sobre isso depois) e quer fornecer uma experiência responsiva aos seus usuários.

Para uma compreensão mais profunda destes termos, consulte nosso glossário.


Como reduzir a latência

1. Escolha o modelo certo

Uma das maneiras mais diretas de reduzir a latência é selecionar o modelo apropriado para seu caso de uso. A Anthropic oferece uma variedade de modelos com diferentes capacidades e características de desempenho. Considere seus requisitos específicos e escolha o modelo que melhor se adapta às suas necessidades em termos de velocidade e qualidade de saída. Para mais detalhes sobre métricas de modelo, veja nossa página de visão geral dos modelos.

2. Otimize o comprimento do prompt e da saída

Minimize o número de tokens tanto no prompt de entrada quanto na saída esperada, mantendo ainda alto desempenho. Quanto menos tokens o modelo tiver que processar e gerar, mais rápida será a resposta.

Aqui estão algumas dicas para ajudar você a otimizar seus prompts e saídas:

  • Seja claro mas conciso: Procure transmitir sua intenção de forma clara e concisa no prompt. Evite detalhes desnecessários ou informações redundantes, lembrando que o claude carece de contexto sobre seu caso de uso e pode não fazer os saltos lógicos pretendidos se as instruções não forem claras.
  • Peça respostas mais curtas: Peça diretamente ao Claude para ser conciso. A família de modelos Claude 3 tem melhor direcionamento em comparação com gerações anteriores. Se o Claude estiver gerando respostas muito longas, peça ao Claude para controlar sua verbosidade.
    Devido à forma como os LLMs contam tokens em vez de palavras, pedir uma contagem exata de palavras ou um limite de contagem de palavras não é uma estratégia tão eficaz quanto pedir limites de contagem de parágrafos ou frases.
  • Defina limites de saída apropriados: Use o parâmetro max_tokens para definir um limite rígido no comprimento máximo da resposta gerada. Isso impede que o Claude gere saídas excessivamente longas.

    Nota: Quando a resposta atinge max_tokens tokens, a resposta será cortada, talvez no meio de uma frase ou palavra, então esta é uma técnica bruta que pode exigir pós-processamento e geralmente é mais apropriada para respostas de múltipla escolha ou respostas curtas onde a resposta vem logo no início.

  • Experimente com a temperatura: O parâmetro temperature controla a aleatoriedade da saída. Valores mais baixos (por exemplo, 0,2) podem às vezes levar a respostas mais focadas e mais curtas, enquanto valores mais altos (por exemplo, 0,8) podem resultar em saídas mais diversas mas potencialmente mais longas.

Encontrar o equilíbrio certo entre clareza do prompt, qualidade da saída e contagem de tokens pode exigir alguma experimentação.

3. Aproveite o streaming

Streaming é um recurso que permite que o modelo comece a enviar sua resposta antes que a saída completa esteja pronta. Isso pode melhorar significativamente a capacidade de resposta percebida de sua aplicação, pois os usuários podem ver a saída do modelo em tempo real.

Com o streaming ativado, você pode processar a saída do modelo conforme ela chega, atualizando sua interface de usuário ou realizando outras tarefas em paralelo. Isso pode melhorar muito a experiência do usuário e fazer sua aplicação parecer mais interativa e responsiva.

Visite streaming Messages para aprender como você pode implementar streaming para seu caso de uso.