Exemplo de visão geral da loja

O Example Store permite armazenar e recuperar dinamicamente exemplos few-shot. Com os exemplos few-shot, é possível demonstrar os padrões de resposta esperados para um LLM e melhorar a qualidade, a acurácia e a consistência das respostas a consultas semelhantes.

O que são exemplos de few-shot?

Um exemplo de poucas imagens são dados rotulados específicos para seu caso de uso de LLM. Ele inclui um par de entrada e saída que demonstra a resposta esperada do modelo para uma solicitação de modelo. Você pode usar exemplos para demonstrar o comportamento esperado ou o padrão de resposta de um LLM.

Ao usar apenas alguns exemplos relevantes, é possível abranger um conjunto maior de resultados, comportamentos pretendidos e entradas do usuário sem aumentar o tamanho ou a complexidade das instruções. Isso é feito incluindo apenas exemplos relevantes (diminuindo a quantidade de exemplos incluídos) e "mostrando, não dizendo" o comportamento esperado.

O uso de exemplos few-shot é uma forma de aprendizado em contexto. Um exemplo demonstra um padrão claro de entradas e saídas, sem explicar como o modelo gera o conteúdo. É possível cobrir mais resultados possíveis ou consultas do usuário usando apenas alguns exemplos, sem aumentar o tamanho do comando ou a complexidade do código. O uso de exemplos não envolve atualizar os parâmetros do modelo pré-treinado, sem afetar a amplitude do conhecimento do LLM. Isso torna o aprendizado no contexto com exemplos uma abordagem relativamente leve e concisa para personalizar, corrigir ou melhorar o raciocínio e a resposta de um LLM para comandos não vistos.

Ao coletar exemplos relevantes que representem as consultas do usuário, você ajuda o modelo a manter a atenção, demonstrar o padrão esperado e corrigir comportamentos incorretos ou inesperados. Isso não afeta outras solicitações que resultam nas respostas esperadas.

Como todas as estratégias de engenharia de comando, o uso de exemplos de few-shot é aditivo para outras técnicas de otimização de LLM, como ajuste fino ou RAG.

Como usar a Example Store

As etapas a seguir descrevem como usar a loja de exemplo:

  1. Crie ou reutilize um recurso ExampleStore, também chamado de "instância da loja de exemplo".

    • Para cada região e projeto, é possível ter no máximo 50 instâncias da Example Store.
  2. Escreva e faça upload de exemplos com base nas respostas do LLM. Há dois cenários possíveis:

    • Se o comportamento e o padrão de resposta do LLM estiverem como esperado, escreva exemplos com base nessas respostas e faça o upload deles para a instância da Example Store.

    • Se o LLM mostrar um comportamento ou padrões de resposta inesperados, escreva um exemplo para demonstrar como corrigir a resposta e faça o upload dele na instância da loja de exemplo.

  3. Os exemplos enviados ficam disponíveis imediatamente para o agente ou o aplicativo LLM associado à instância da loja de exemplo.

    • Se um agente baseado no kit de desenvolvimento do agente da Vertex AI estiver vinculado à instância da loja de exemplos, ele vai recuperar os exemplos automaticamente e os incluir na solicitação de LLM.

    • Para todos os outros aplicativos de LLM, é necessário pesquisar e recuperar os exemplos e, em seguida, incluí-los nas instruções.

É possível continuar adicionando exemplos iterativamente a uma instância da loja de exemplo sempre que observar um desempenho inesperado do LLM ou encontrar consultas de usuários adversárias ou inesperadas. Não é necessário atualizar o código nem implantar uma nova versão do aplicativo LLM. Os exemplos ficam disponíveis para o agente ou aplicativo assim que você os envia para a instância da Example Store.

Além disso, há outras possibilidades:

  • Extraia exemplos realizando uma pesquisa de similaridade de cosseno entre as chaves de pesquisa dos exemplos armazenados e as da consulta.

  • Filtre os exemplos por nome de função e refine a lista de exemplos candidatos para aqueles que representam as possíveis respostas do LLM.

  • Melhore de modo iterativo o agente ou o aplicativo LLM.

  • Compartilhe exemplos com vários agentes ou aplicativos de LLM.

Diretrizes para criar exemplos few-shot

O impacto dos exemplos na performance do modelo depende de quais tipos de exemplos são incluídos nos comandos e como eles são incluídos.

Confira a seguir as práticas geralmente recomendadas para criar exemplos:

  • Relevância e semelhança: os exemplos precisam estar intimamente relacionados à tarefa ou ao domínio específico. Isso ajuda o modelo a se concentrar nos aspectos mais relevantes do conhecimento, diminui o uso de tokens e mantém ou até melhora o desempenho. Você precisa de menos exemplos se eles forem relevantes para a conversa. O corpus dos exemplos disponíveis precisa ser representativo das possíveis consultas do usuário. Além disso, um exemplo precisa ser relevante para uma determinada consulta do usuário.

  • Complexidade: para ajudar o LLM a ter um melhor desempenho, use exemplos de baixa complexidade para demonstrar o raciocínio esperado.

  • Representativo dos possíveis resultados do modelo: as respostas esperadas em um exemplo precisam ser consistentes com o possível resultado. Isso permite que o exemplo demonstre claramente o raciocínio que é consistente com o raciocínio esperado do LLM para o comando.

  • Formato: para ter a melhor performance, formate exemplos de poucos cliques no comando de maneira consistente com os dados de treinamento do LLM e diferenciada do histórico de conversas. A formatação de exemplos em um comando pode afetar consideravelmente o desempenho do LLM.

Exemplo de caso de uso: chamada de função

Você pode usar exemplos de poucos disparos para melhorar o desempenho da chamada de função. É possível indicar a chamada de função esperada para uma consulta do usuário em um padrão consistente. O exemplo pode modelar a resposta esperada à solicitação incluindo qual função precisa ser invocada e os argumentos a serem incluídos na chamada de função. Considere um caso de uso em que a função get_store_location retorna o local de uma loja e a descrição dela. Se uma consulta não invocar essa função como esperado ou mostrar uma saída inesperada, use exemplos de poucas fotos para corrigir esse comportamento em consultas subsequentes.

Para mais informações sobre a chamada de função, consulte Chamada de função.

Para saber mais, consulte Exemplo de seminário intensivo da loja.

A seguir