Prepare dados de ajuste fino supervisionado para modelos Gemini

Este documento descreve como definir um conjunto de dados de ajuste preciso supervisionado para um modelo Gemini. Pode ajustar os tipos de dados de texto, imagem, áudio e documento.

Acerca dos conjuntos de dados de otimização supervisionada

Um conjunto de dados de ajuste fino supervisionado é usado para ajustar um modelo pré-preparado a uma tarefa ou um domínio específico. Os dados de entrada devem ser semelhantes ao que espera que o modelo encontre na utilização no mundo real. As etiquetas de saída devem representar as respostas ou os resultados corretos para cada entrada.

Conjunto de dados de preparação

Para otimizar um modelo, fornece um conjunto de dados de preparação. Para obter os melhores resultados, recomendamos que comece com 100 exemplos. Pode aumentar a escala até milhares de exemplos, se necessário. A qualidade do conjunto de dados é muito mais importante do que a quantidade.

Conjunto de dados de validação

Recomendamos vivamente que faculte um conjunto de dados de validação. Um conjunto de dados de validação ajuda a medir a eficácia de uma tarefa de ajuste.

Limitações

Para ver as limitações dos conjuntos de dados, como o número máximo de tokens de entrada e saída, o tamanho máximo do conjunto de dados de validação e o tamanho máximo do ficheiro do conjunto de dados de preparação, consulte o artigo Acerca do ajuste fino supervisionado para modelos Gemini.

Formato do conjunto de dados

Suportamos os seguintes formatos de dados:

Exemplo de conjunto de dados para o Gemini

{
  "systemInstruction": {
    "role": string,
    "parts": [
      {
        "text": string
      }
    ]
  },
  "contents": [
    {
      "role": string,
      "parts": [
        {
          // Union field data can be only one of the following:
          "text": string,
          "fileData": {
            "mimeType": string,
            "fileUri": string
          }
        }
      ]
    }
  ]
}

Parâmetros

O exemplo contém dados com os seguintes parâmetros:

Parâmetros

contents

Obrigatório: Content

O conteúdo da conversa atual com o modelo.

Para consultas de interação única, trata-se de uma única instância. Para consultas com várias interações, este é um campo repetido que contém o histórico de conversas e o pedido mais recente.

systemInstruction

Opcional: Content

Consulte os modelos suportados.

Instruções para o modelo que o orientam para um melhor desempenho. Por exemplo, "Responde da forma mais concisa possível" ou "Não uses termos técnicos na tua resposta".

As strings text são contabilizadas para o limite de tokens.

O campo role de systemInstruction é ignorado e não afeta o desempenho do modelo.

tools

Opcional. Um fragmento de código que permite ao sistema interagir com sistemas externos para realizar uma ação ou um conjunto de ações fora do conhecimento e do âmbito do modelo. Consulte o artigo Chamada de funções.

Índice

O tipo de dados estruturados base que contém conteúdo multipartes de uma mensagem.

Esta classe é constituída por duas propriedades principais: role e parts. A propriedade role indica o indivíduo que produz o conteúdo, enquanto a propriedade parts contém vários elementos, cada um representando um segmento de dados numa mensagem.

Parâmetros

role

Opcional: string

A identidade da entidade que cria a mensagem. Os seguintes valores são suportados:

  • user: isto indica que a mensagem é enviada por uma pessoa real, normalmente uma mensagem gerada pelo utilizador.
  • model: isto indica que a mensagem é gerada pelo modelo.

O valor model é usado para inserir mensagens do modelo na conversa durante conversas com várias interações.

Para conversas que não envolvem várias interações, este campo pode ser deixado em branco ou não definido.

parts

part

Uma lista de partes ordenadas que compõem uma única mensagem. As diferentes partes podem ter diferentes tipos MIME da IANA.

Para ver os limites das entradas, como o número máximo de tokens ou o número de imagens, consulte as especificações do modelo na página Modelos Google.

Para calcular o número de tokens no seu pedido, consulte o artigo Obtenha a contagem de tokens.

Peças

Um tipo de dados que contém conteúdo multimédia que faz parte de uma mensagem Content multipartes.

Parâmetros

text

Opcional: string

Um comando de texto ou um fragmento do código.

fileData

Opcional: fileData

Dados armazenados num ficheiro.

functionCall

Opcional: FunctionCall.

Contém uma string que representa o campo FunctionDeclaration.name e um objeto JSON estruturado que contém quaisquer parâmetros para a chamada de função prevista pelo modelo.

Consulte o artigo Chamada de funções.

functionResponse

Opcional: FunctionResponse.

O resultado de uma FunctionCall que contém uma string que representa o campo FunctionDeclaration.name e um objeto JSON estruturado que contém qualquer resultado da chamada de função. É usado como contexto para o modelo.

Consulte o artigo Chamada de funções.

Práticas recomendadas

Mantenha a consistência com os dados de produção

Os exemplos nos conjuntos de dados devem corresponder ao tráfego de produção esperado. Se o conjunto de dados contiver formatação, palavras-chave, instruções ou informações específicas, os dados de produção devem ser formatados da mesma forma e conter as mesmas instruções.

Por exemplo, se os exemplos no seu conjunto de dados incluírem um "question:" e um "context:", o tráfego de produção também deve ser formatado para incluir um "question:" e um "context:" pela mesma ordem em que aparecem nos exemplos do conjunto de dados. Se excluir o contexto, o modelo não reconhece o padrão, mesmo que a pergunta exata esteja num exemplo no conjunto de dados.

Carregue conjuntos de dados de ajuste para o Cloud Storage

Para executar uma tarefa de otimização, tem de carregar um ou mais conjuntos de dados para um contentor do Cloud Storage. Pode criar um novo contentor do Cloud Storage ou usar um existente para armazenar ficheiros de conjuntos de dados. A região do contentor não é importante, mas recomendamos que use um contentor que esteja no mesmo Google Cloud projeto onde planeia otimizar o modelo.

Depois de o contentor estar pronto, carregue o ficheiro do conjunto de dados para o contentor.

Siga a prática recomendada de design de comandos

Depois de ter o conjunto de dados de preparação e de ter preparado o modelo, é altura de criar comandos. É importante seguir a prática recomendada de conceção de comandos no seu conjunto de dados de preparação para dar uma descrição detalhada da tarefa a realizar e do aspeto do resultado.

O que se segue?