Estratégias de solicitação de arquivos

A família Gemini de modelos de inteligência artificial (IA) foi criada para processar vários tipos de dados de entrada, incluindo texto, imagens e áudio. Como esses modelos podem processar mais de um tipo ou modo de dados, os modelos do Gemini são chamados de modelos multimodais ou explicados como tendo recursos multimodais.

Nesta página, você encontra orientações e práticas recomendadas para usar arquivos de mídia com solicitações para a API Gemini. Para saber mais sobre como usar a API Gemini Files para fazer upload de arquivos de mídia e incluí-los nos comandos, consulte Prompt com arquivos de mídia.

Como usar arquivos de mídia com comandos

Ser capaz de usar vários tipos de dados em seus comandos oferece mais flexibilidade em termos de quais tarefas você pode realizar com a API Gemini. Por exemplo, é possível enviar ao modelo a foto de uma refeição deliciosa e pedir que ele escreva um breve blog sobre a refeição.

Comando Resposta

Escreva uma postagem curta e envolvente para o blog com base nessa foto. Ela precisa incluir uma descrição da refeição na foto e falar sobre a preparação das refeições.


Cookies

Preparar refeições é uma ótima maneira de economizar tempo e dinheiro, além de ajudar você a ter uma alimentação mais saudável. Essa refeição é um ótimo exemplo de uma refeição saudável e deliciosa que pode ser facilmente preparada com antecedência.

Essa refeição inclui arroz integral, legumes assados e teriyaki de frango. O arroz integral é um carboidrato saudável e complexo que fornece energia sustentada. Os vegetais assados são uma ótima maneira de receber sua dose diária de vitaminas e minerais, e o teriyaki de frango é uma opção deliciosa e rica em proteínas.

Essa refeição também é muito fácil de preparar. Basta cozinhar o arroz integral, assar os vegetais e cozinhar o teriyaki de frango. Depois que tudo estiver cozido, divida em embalagens para preparo de refeições e armazene na geladeira. Você pode, então, pegar um contêiner e passar pelas manhãs ocupadas!

Se você procura uma refeição saudável e deliciosa que pode ser preparada com facilidade com antecedência, essa é uma ótima opção. Ele é repleto de nutrientes e sabores, e garante sua saciedade e satisfação.

Prepare uma refeição saudável e deliciosa!

Estratégias para criar comandos com mídia

Se você estiver com problemas para receber a saída desejada de prompts que usam arquivos de mídia, há algumas estratégias que podem ajudá-lo a obter os resultados desejados. As seções a seguir fornecem abordagens de design e dicas de solução de problemas para melhorar os comandos que usam entrada multimodal.

É possível melhorar os prompts multimodais seguindo estas práticas recomendadas:

Conceitos básicos do design de comandos

  • Seja específico nas instruções: crie instruções claras e concisas que deixem pouco espaço para interpretações equivocadas.
  • Adicione alguns exemplos ao comando: use exemplos realistas de few-shot para ilustrar o que você quer alcançar.
  • Detalhamento por etapas: divida tarefas complexas em submetas gerenciáveis para guiar o modelo pelo processo.
  • Especifique o formato de saída: no comando, peça que a saída esteja no formato desejado, como markdown, JSON, HTML e muito mais.
  • Colocar a imagem em primeiro lugar para comandos de imagem única: o Gemini pode processar entradas de imagem e texto em qualquer ordem, mas para comandos com uma única imagem, o desempenho pode ser melhor se a imagem for colocada antes do comando de texto.

    Como solucionar problemas do comando multimodal

    • Se o modelo não estiver desenhando informações da parte relevante da imagem: solte dicas com os aspectos da imagem de que você quer que o comando extraia informações.
    • Se a saída do modelo for muito genérica (não adaptada o suficiente para a imagem) : no início do comando, peça para o modelo descrever as imagens antes de dar a instrução da tarefa ou peça para o modelo consultar o que está na imagem.
    • Conceitos básicos do design de comandos

      Esta seção expande as práticas recomendadas listadas na seção anterior.

      Observação: os resultados do modelo dos exemplos do Gemini a seguir podem variar de acordo com a execução.

      Especificar as instruções

      As instruções têm mais sucesso quando são claras e detalhadas. Se você tiver uma saída específica em mente, é melhor incluir esse requisito no prompt para garantir a saída desejada.

      Às vezes, a intenção de um comando pode parecer clara para a pessoa que a escreveu, mas, na verdade, falta especificidades. Para personalizar o comportamento do modelo, analise como o comando pode ser interpretado (incorretamente) e verifique se as instruções fornecidas são claras e específicas. Deixe espaço mínimo para interpretações erradas

      Para essa imagem de uma placa de aeroporto, pedir ao modelo apenas "descrever esta imagem" poderia gerar uma descrição geral. Se você precisa que o modelo analise a hora e a cidade a partir da imagem, inclua essa solicitação diretamente no comando.

      Comando Resposta do modelo

      Descreva esta imagem.

      A imagem mostra um painel de chegadas e partidas do aeroporto.

      Comando atualizado Resposta aprimorada
      Horários de viagem

      Analise a hora e a cidade no quadro do aeroporto mostrado nesta imagem em uma lista.

    • 10:50 Moscow
    • 11:05 Edimburgo
    • 11:05 Londres
    • 11:10 Bucareste
    • 11:30 Kiev
    • 11:35 Dublin
    • 11:45 Midlands Orientais
    • 12:15 Sófia
    • 12:30 Londres
    • 12:30 Newcastle
    • 12:40 São Petersburgo
    • 12:40 Londres
    • 12:45 Manchester
    • Adicionar alguns exemplos

      O modelo Gemini pode aceitar várias entradas que podem ser usadas como exemplos para entender a saída que você quer. Adicionar esses exemplos pode ajudar o modelo a identificar os padrões e aplicar a relação entre as imagens fornecidas e as respostas ao novo exemplo. Isso também é chamado de aprendizado "few-shot".

      No exemplo abaixo, a saída inicial é escrita na forma de frase e também contém o país (Brasil). Suponha que você queira a saída em um formato ou estilo diferente e queira apenas a cidade, não o país. Adicionar alguns exemplos ao comando pode fazer com que o modelo responda da maneira desejada.

      Comando Resposta do modelo
      Horários de viagem

      Determine a cidade junto com o ponto de referência.

      O ponto turístico é a estátua do Cristo Redentor no Rio de Janeiro, Brasil.

      Comando atualizado Resposta aprimorada

      Determine a cidade junto com o ponto de referência.

      coliseu

      cidade: Roma, ponto de referência: o Coliseu.

      Cidade Proibida

      cidade: Pequim, ponto de referência: Cidade Proibida

      Cidade Proibida

      cidade: Rio de Janeiro, ponto de referência: estátua do Cristo Redentor

      Detalhar por passo

      Para tarefas complexas, como as que exigem compreensão e raciocínio visual, pode ser útil dividir a tarefa em etapas menores e mais diretas. Também poderia ser eficaz se você pedisse diretamente ao modelo para “pensar passo a passo” no comando.

      Comando Resposta do modelo

      Quando vou ficar sem papel higiênico?

      Em breve, você só tem mais três rolos.

      Comando atualizado Resposta aprimorada

        1. Primeiro, conte quantos rolos de papel higiênico há nessa imagem.
        2. Em seguida, determine a quantidade de papel higiênico que uma pessoa usa por dia.
        3. Calcule quanto tempo esses rolos de papel higiênico vão durar.

        1. Há três rolos de papel higiênico nesta imagem.
        2. Uma pessoa usa cerca de 20 folhas de papel higiênico por dia.
        3. Se cada rolo tiver 200 páginas, cada um deles durará cerca de 10 dias. Portanto, os três rolos durarão cerca de um mês.

      Problemas matemáticos ou outros tipos de problemas são ótimos candidatos para pedir que o modelo pense em etapas.

      Comando Resposta

      Qual é o quarto termo na sequência?

      -135

      A resposta do modelo está incorreta. Algumas maneiras de melhorar isso é pedir ao modelo que analise o problema antes de responder ao comando.

      Comando Resposta

      Analise a fórmula na imagem primeiro.

      Depois, com base na fórmula, responda "qual é o quarto termo na sequência?".

      Clique para abrir o resultado

      $$ b(n) = b(n-1) * (-3) $$

      $$ b(1) = 15 $$

      1. Substitua n = 4 na fórmula:
      2. $$ b(4) = b(4-1) * (-3) $$

        $$ b(4) = b(3) * (-3) $$

      3. Não sabemos o valor de b(3), portanto, substitua n = 3 na fórmula:
      4. $$ b(3) = b(3-1) * (-3) $$

        $$ b(3) = b(2) * (-3) $$

      5. Não sabemos o valor de b(2), portanto, substitua n = 2 na fórmula:
      6. $$ b(2) = b(2-1) * (-3) $$

        $$ b(2) = b(1) * (-3) $$

      7. Sabemos que o valor de b(1) é 15, portanto, substitua-o na fórmula:
      8. $$ b(2) = 15 * (-3) $$

        $$ b(2) = -45 $$

      9. Agora que sabemos o valor de b(2), substitua-o na fórmula por b(3):
      10. $$ b(3) = b(2) * (-3) $$

        $$ b(3) = -45 * (-3) $$

        $$ b(3) = 135 $$

      11. Agora que sabemos o valor de b(3), substitua-o na fórmula por b(4):
      12. $$ b(4) = b(3) * (-3) $$

        $$ b(4) = 135 * (-3) $$

        $$ b(4) = -405 $$

      Portanto, o quarto termo na sequência é -405.

      A resposta do modelo está correta. Agora, para simplificar ainda mais, peça ao modelo que pense em etapas detalhadas.

      Comando atualizado Resposta aprimorada

      Qual é o quarto termo na sequência? Pense passo a passo.

      O primeiro termo é 15.

      O segundo termo é b(1) * (-3) = 15 * (-3) = -45.

      O terceiro termo é b(2) * (-3) = -45 * (-3) = 135.

      O quarto termo é b(3) * (-3) = 135 * (-3) = -405.

      Tente especificar o formato de saída

      Um problema comum é a necessidade de a saída do modelo estar em um determinado formato (por exemplo, markdown, JSON, HTML), especialmente se ela precisar ser ingerida por uma tarefa downstream. Você pode tentar produzir saídas nesse formato instruindo o modelo a fazer isso no comando. Veja dois exemplos:

      Comando Resposta do modelo

      Analise a tabela nesta imagem no formato markdown

      | Assunto | Status | Hora | Data de início | Prazo |

      | ------- | ------ | ---- | --------- | ------ |

      | Matemática | Concluído | 1h30 | 29/11/2023 | 01/12/2023 |

      | Geografia | Concluído | 30 min | 02/12/2023 | 04/12/2023 |

      | Física | Em andamento | 2 horas | 03/12/2023 | 05/12/2023 |

      | Biologia | Não começou | 6 horas | 02/11/2016 | 06/12/2023 |

      Comando Resposta do modelo

      Forneça uma lista com todos os atributos a seguir:

      Ingredientes, tipo de culinária, vegetariano ou não, no formato JSON

      ```json```

      {

      "ingredients": [

      "rice",

      "shrimp",

      "clams",

      "mussels",

      "peas",

      "tomatoes",

      "onions",

      "garlic",

      "olive oil",

      "paprika",

      "salt",

      "pepper"

      ],

      "type of cuisine": "Spanish",

      "vegetarian": false

      Colocar a imagem em primeiro lugar nos comandos com uma imagem

      O Gemini pode interpretar imagem e texto em qualquer ordem dentro de um comando, mas colocar uma única imagem antes do comando de texto pode levar a melhores resultados. Nos exemplos a seguir, você notará que a imagem vem antes do texto em cada comando.

      Como solucionar problemas do comando multimodal

      Se você não receber uma resposta útil, talvez seja necessário solucionar o problema da solicitação. Aqui estão algumas estratégias que você pode tentar.

      Se o modelo não estiver desenhando informações da parte relevante da imagem

      Para receber uma resposta mais específica, indique de quais aspectos da imagem você quer que a solicitação extraia informações para informar a resposta.

      Comando Resposta do modelo

      Quantos dias essas fraldas vão durar para um bebê?

      As fraldas durarão 198 dias antes de acabarem.

      Comando atualizado Resposta aprimorada

      Quanto tempo essas fraldas vão durar?

      Use o peso mostrado na caixa para determinar a idade da criança e o número total de fraldas contidas na caixa.

      Divida o número total por quantas fraldas a criança usa por dia.

      A caixa contém 198 fraldas. A caixa informa que as fraldas são para uma criança que pesa de 22 a 37 libras.

      A criança média nesta faixa de peso tem provavelmente entre 1 e 2 anos de idade.

      Uma criança de dois anos normalmente usa seis fraldas por dia, portanto, as fraldas vão durar cerca de 33 dias (198/6).

      Se a saída do modelo for muito genérica e não for adaptada o suficiente para a entrada da imagem

      Para ajudar o modelo a adaptar a resposta às imagens, peça para ele descrever as imagens antes de realizar a tarefa de raciocínio.

      Comando Resposta do modelo

      O que há em comum entre essas imagens?

      As quatro imagens são exemplos de fotografia de paisagem.

      Comando atualizado Resposta aprimorada

      Primeiro, descreva o que está em cada imagem em detalhes. O que há em comum entre essas imagens?

      A primeira imagem mostra uma pessoa fazendo as malas. A segunda imagem mostra um corredor vazio de um shopping. A terceira imagem mostra um rolo de papel higiênico. A quarta imagem mostra um mar escuro e tempestuoso.

      O ponto em comum entre essas imagens é que todas são exemplos de espaços liminais. Espaços liminais são lugares ou situações que estão entre dois outros lugares ou situações. Elas costumam ser caracterizadas por um senso de incerteza ou ambiguidade.

      A primeira imagem mostra a pessoa entre o momento em que está em casa e viajando. A segunda imagem mostra o corredor entre duas lojas. A terceira imagem é de papel higiênico, que pode representar um banheiro. Um banheiro é um espaço de transição entre domínios privados e públicos. É um lugar onde nos preparamos para entrar ou sair do mundo exterior.

      A quarta imagem mostra o mar entre calmo e tempestuoso.

      Espaços liminais podem ser empolgantes e perturbadores. Eles podem ser um lugar de recomeço ou de fim. Eles podem ser um local de reflexão ou ação.

      Você também pode tentar pedir explicitamente ao modelo para se referir ao que está na imagem.

      Comando atualizado Resposta aprimorada

      O que há em comum entre essas imagens? Consulte o que está nas imagens na sua resposta.

      Todas as imagens são relacionadas a viagens. A primeira imagem mostra uma pessoa fazendo as malas, a segunda mostra um corredor vazio de um shopping, a terceira imagem mostra uma pilha de papel higiênico e a quarta mostra um mar escuro e violento.

      Todas essas imagens são relacionadas a viagens, porque são tudo o que as pessoas precisam ou usam quando viajam. A primeira imagem mostra uma pessoa fazendo as malas, que é algo que as pessoas fazem quando viajam. A segunda imagem mostra um corredor vazio de um shopping, que é um lugar onde as pessoas costumam comprar itens para viagens. A terceira imagem mostra uma pilha de papel higiênico, algo que as pessoas costumam usar quando estão viajando. A quarta imagem mostra um mar escuro e tempestuoso, algo que as pessoas encontram com frequência quando estão viajando.

      As mesmas dicas funcionam para a saída criativa a partir de imagens. No exemplo a seguir com o coelho, pedir explicitamente ao modelo para incluir aspectos da imagem pode melhorar a saída.

      Comando Resposta do modelo

      Você pode me escrever um poema sobre esta imagem?

      Coelhinho peludo e marrom
      Pulando pelo campo, para cima e para baixo.
      Suas orelhas são tão longas e sua cauda tão pequena!
      Você é a criatura mais fofa de todas.

      Você morde a grama, tão verde e doce,
      E pula quando me vê.
      Mas sempre serei seu amigo,
      Coelhinho, até o fim.

      Comando atualizado Resposta aprimorada

      Você pode escrever um poema descritivo e dramático sobre esta imagem e incluir o local?

      Coelhinho no verde
      Orelhas tão compridas e pontudas.
      O que você vê lá fora,
      À distância, onde você olha?

      É o oceano azul,
      Brilhando na tonalidade do sol?
      Ou as ondas que quebram e rugem,
      Um ritmo que você adora?

      Coelhinho, fale a verdade:
      O que chama sua atenção de verdade?
      É a brisa salgada,
      Ou o choro das gaivotas te agrada?

      Talvez seja a vastidão de tudo isso,
      Um mundo tão grande e pequeno.
      Um lugar onde os sonhos podem andar,
      e aventuras podem ser livres.

      Coelhinho me pergunto o que você sonha,
      Sentado na grama, tão sereno.
      Você quer explorar as profundezas
      Ou ficar na terra para dar um salto?

      Seja o que for, coelhinho!
      Deixe a faísca da maravilha brilhar.
      Nos seus sonhos e aspirações,
      há um mundo esperando sua criação.

      Solução de problemas em qual parte do prompt falhou

      Pode ser difícil saber se uma solicitação falhou porque o modelo não entendeu a imagem ou se ele entendeu a imagem, mas não executou as etapas de raciocínio corretas.

      Para diferenciar esses motivos, peça ao modelo que descreva o que está na imagem.

      No exemplo abaixo, se o modelo responder com um lanche que parece diferente quando combinado com chá (como pipoca), primeiro é possível resolver problemas para determinar se o modelo reconheceu corretamente que a imagem contém chá.

      Comando Prompt de solução de problemas

      Que lanchinho eu posso fazer em 1 minuto e que combina com este?

      Descreva o que há na imagem.

      Outra estratégia é pedir para o modelo explicar o raciocínio dele. Isso pode ajudar você a filtrar qual parte do raciocínio está incorreta, se houver.

      Comando Prompt de solução de problemas

      Que lanchinho eu posso fazer em 1 minuto e que combina com este?

      Que lanchinho eu posso fazer em 1 minuto e que combina com este? Explique o motivo.

      Ajustar os parâmetros de amostragem

      Em cada prompt, você envia ao modelo não apenas o comando multimodal, mas um conjunto de parâmetros de amostragem. O modelo pode gerar diferentes resultados para diferentes valores de parâmetros. Teste os diferentes parâmetros para conseguir os melhores valores para a tarefa. Os parâmetros mais comumente ajustados são os seguintes:

      • Temperatura
      • top-P
      • top-K

      Temperatura

      A temperatura é usada para amostragem durante a geração de resposta, que ocorre quando top-P e top-K são aplicados. A temperatura controla o grau de aleatoriedade na seleção do token. Temperaturas mais baixas são boas para comandos que exigem uma resposta mais determinista e menos aberta ou criativa, enquanto temperaturas maiores podem levar a resultados mais diversos ou criativos. Uma temperatura 0 é determinista, o que significa que a resposta de maior probabilidade é sempre selecionada.

      Na maioria dos casos de uso, é melhor começar com a temperatura 0,4. Se você precisar de resultados mais criativos, tente aumentar a temperatura. Se você observar alucinações claras, tente reduzir a temperatura.

      Top-K

      O Top-K muda a forma como o modelo seleciona tokens para saída. O valor "1" de Top-K indica que o token selecionado é o mais provável entre todos no vocabulário do modelo (também chamado de decodificação gananciosa), enquanto o valor "3" de Top-K significa que o próximo token é selecionado entre os três mais prováveis usando a temperatura.

      Para cada etapa da seleção de tokens, são amostrados os tokens Top-K com as maiores probabilidades. Em seguida, os tokens são filtrados com base no valor de Top-P com o token final selecionado por meio da amostragem de temperatura.

      Especifique um valor mais baixo para respostas menos aleatórias e um valor mais alto para respostas mais aleatórias. O valor padrão do top-K é 32.

      Top-P

      O Top-P muda a forma como o modelo seleciona tokens para saída. Os tokens são selecionados do mais provável (confira o Top-K) para o menos provável até que a soma das probabilidades seja igual ao valor do Top-P. Por exemplo, se os tokens A, B e C tiverem uma probabilidade de 0,6, 0,3 e 0,1 e o valor de Top-P for 0,9, o modelo selecionará A ou B como token seguinte usando temperatura e excluirá C como candidato.

      Especifique um valor mais baixo para respostas menos aleatórias e um valor mais alto para respostas mais aleatórias. O valor padrão do top-P é 1,0.

      Próximas etapas