Usar as instruções de sistema

As instruções do sistema são como um preâmbulo que você adiciona antes que o LLM seja exposto a outras instruções do usuário. Ele permite que os usuários orientem o comportamento do modelo com base nas necessidades e casos de uso específicos. Ao definir uma instrução de sistema, você proporciona ao modelo mais contexto para entender a tarefa, fornecer respostas mais personalizadas e aderir a diretrizes específicas sobre toda a interação do usuário com o modelo. Para desenvolvedores, o comportamento no nível do produto pode ser especificado nas instruções de sistema, separado dos comandos fornecidos pelos usuários finais. Por exemplo, você pode incluir itens como o perfil, informações contextuais e instruções de formatação.

É possível usar as instruções de sistema de várias maneiras como, por exemplo:

  • Definir um perfil ou uma função (para um chatbot, por exemplo)
  • Definir o formato de saída (Markdown, YAML etc.)
  • Definir o estilo e o tom da saída (por exemplo, nível de detalhes, de formalidade e de leitura desejado)
  • Definir metas ou regras para a tarefa (por exemplo, retornar um snippet de código sem mais explicações)
  • Fornecer mais contexto para o comando (por exemplo, um limite de conhecimento)

Quando uma instrução de sistema é definida, ela é aplicada a toda a solicitação. Quando incluída no comando, ela funciona com vários usuários e mutações do modelo. As instruções do sistema fazem parte dos comandos gerais e, portanto, estão sujeitas às políticas padrão de uso de dados.

Examples

Veja um exemplo básico de configuração da instrução do sistema usando o SDK do Python para a API Gemini:

model=genai.GenerativeModel(
    model_name="gemini-1.5-pro-preview-0409",
    system_instruction="You are a cat. Your name is Neko.")

Veja a seguir exemplos de comandos de sistema que definem o comportamento esperado do modelo.

Geração de códigos

  • Sistema: você é um especialista em programação especializado em código de renderização para interfaces front-end. Ao descrever um componente de um site que quero criar, retorne o HTML e o CSS necessários para isso. Não forneça uma explicação para esse código. Ofereça também algumas sugestões de design de interface.
  • Usuário: crie uma caixa no meio da página com uma seleção rotativa de imagens, cada uma com uma legenda. A imagem no centro da página deve ter um sombreamento atrás dela para destacá-la. Ela também deve estar vinculada a outra página do site. Deixe o URL em branco para que eu possa preenchê-lo.

Geração de dados formatados

  • Sistema:você é um assistente de cozinheiros domésticos. Você recebe uma lista de ingredientes e responde com uma lista de receitas que usam esses ingredientes. Receitas que não precisam de ingredientes extras devem sempre ser listadas antes daquelas que não precisam de mais ingredientes.

    Sua resposta precisa ser um objeto JSON contendo três roteiros. Um objeto de receita tem o seguinte esquema:

    • name: o nome do roteiro
    • usedIngredients: ingredientes da receita que foram fornecidos na lista
    • otherIngredients: ingredientes da receita que não estão na lista (omitir se não houver outros ingredientes)
    • description: Uma breve descrição da receita, escrita de modo positivo como se fosse vendê-la.
  • Usuário:

    • 1 lb de brócolis congelados
    • 1 litro de creme grosso
    • Embalagem de 1 libra de pontas e pedaços de queijo

Chatbot de música

  • Sistema: você responderá como um historiador de música, demonstrando um conhecimento abrangente em diversos gêneros musicais e fornecendo exemplos relevantes. Seu tom será animado e entusiasmado, espalhando a alegria da música. Se uma pergunta não estiver relacionada à música, a resposta deve ser: "Isso está além do meu conhecimento".
  • Usuário: se uma pessoa nasceu nos anos 60, qual foi o gênero musical mais famoso que estava sendo tocado? Liste cinco músicas por tópico.