Com novos modelos de IA sendo lançados regularmente, escolher o ideal para seu aplicativo pode ser desafiador. O GitHub Models ajuda a otimizar seu aplicativo alimentado por IA, permitindo que você compare diferentes modelos e variações de prompt com amostra de entradas, ao mesmo tempo em que usa avaliadores integrados para validar a saída do modelo.
Com de um cenário de exemplo, criaremos um assistente habilitado para IA que ajuda os usuários a aprender a usar o Git por meio da linha de comando. Vamos comparar diferentes modelos, e você aprenderá a refinar variações de prompt para melhorar a qualidade da saída.
Observação
- O GitHub Models está em versão prévia pública e sujeito a alterações.
- O uso é limitado por taxa. Confira Prototipagem com modelos de IA.
Como testar um prompt
A exibição GitHub Models Comparisons permite ajustar parâmetros de modelo e prompts para testar a saída do modelo.
1. Como criar uma amostra de repositório
Você pode acessar a exibição Comparisons diretamente na guia Models em qualquer repositório, porém, neste guia, criaremos um repositório para usar como um ambiente de teste.
- Navegue até new repository page.
- Em "Owner", verifique se sua conta de usuário está selecionada.
- No campo "Repository name", digite
models-playground
. - Abaixo do campo de descrição, selecione Private para definir a visibilidade do repositório.
- Clique em Criar repositório.
2. Como criar um prompt
- Na página principal do novo repositório, clique na guia Models.
- Na seção "Prompts", clique em New Prompt.
- No canto superior esquerdo, escolha um modelo no menu suspenso.
3. Como escrever um prompt do sistema
Um prompt do sistema é um conjunto de instruções que define a função, o comportamento e as limitações de um modelo de IA antes de interagir com os usuários. Neste exemplo, trabalharemos em um aplicativo alimentado por IA que explica como usar o Git na linha de comando.
No campo System prompt, copie e cole o seguinte texto:
You are an expert at using the Git version control system. I will ask questions looking for guidance on the best way to perform tasks using Git, and you will give clear, step-by-step answers that explain each step you are recommending.
You are an expert at using the Git version control system. I will ask questions looking for guidance on the best way to perform tasks using Git, and you will give clear, step-by-step answers that explain each step you are recommending.
Observação
Se o campo de texto System não for editável, tente escolher um modelo diferente na lista suspensa do modelo acima. Nem todos os modelos permitem a modificação do prompt do sistema.
4. Como escrever um prompt de usuário
O prompt do usuário é a pergunta direta ou instrução para um sistema de IA durante a conversa, à qual o sistema de IA responde.
No campo User prompt, copie e cole o seguinte texto:
I want to learn how to use Git from the command line.
I want to learn how to use Git from the command line.
5. Como inserir uma amostra de entrada
A variável {{input}}
no User prompt funciona como um espaço reservado para entrada de exemplo. Para gerenciar esse espaço reservado, clique no botão Variables e insira o seguinte texto:
When should I use rebase or merge?
When should I use rebase or merge?
6. Como executar a amostra de prompt
- No canto superior direito, clique em Play.
- Faça uma alteração ao modelo ou ao prompt e execute o prompt outra vez para ver quais resultados você obtém.
Como testar diferentes modelos em um prompt
Agora, vamos determinar qual modelo funcionará melhor para nosso aplicativo usando a exibição Comparisons. Essa exibição permite testar modelos diferentes na mesma entrada, revelando diferenças de precisão, criatividade, tom, raciocínio e confiabilidade. Isso ajudará a escolher o modelo que melhor atende às nossas necessidades em termos de qualidade, velocidade, custo e consistência.
-
No canto superior esquerdo, clique em Comparisons.
-
Para comparar modelos diferentes, clique em Add prompt e selecione Copy original prompt para duplicar seus prompts de usuário e sistema existentes. Crie pelo menos duas cópias do prompt original para avaliar três modelos diferentes.
-
Ao lado de cada prompt, clique em . Na lista suspensa Model, escolha um modelo diferente para cada prompt criado.
-
Clique em Add inputs para criar novas linhas para entradas de exemplo.
-
Clique em Add inputs. Em seguida, no campo "Input", copie e cole o seguinte texto:
Text How do I modify the most recent commit message in my current branch?
How do I modify the most recent commit message in my current branch?
-
Clique em Add inputs novamente e cole a seguinte entrada:
Text How do I move a specific commit from one branch to a different branch?
How do I move a specific commit from one branch to a different branch?
-
Clique em Add inputs mais uma vez e cole esta entrada:
Text How do I find the author of a specific commit in a repository's history?
How do I find the author of a specific commit in a repository's history?
-
-
Para executar os prompts, no canto superior direito, clique em Run.
-
Experimente modelos diferentes em relação ao prompt, anotando a Latência e o uso de token de Entrada e Saída dos diferentes modelos.
Testar variações de prompt com um modelo específico
Se você estiver criando um aplicativo com um modelo de IA específico, precisará de respostas previsíveis e confiáveis. Testar variações de prompt ajuda a:
- Otimizar o desempenho e a qualidade: pequenas alterações no fraseado podem afetar a qualidade da resposta. Ao testar variações, você pode encontrar a formulação que gera a melhor resposta.
- Esclarecer as instruções: ao variar o fraseado do prompt, você pode identificar qual versão o modelo entende melhor.
- Adaptar-se a um comportamento de modelo específico: você pode adaptar sua entrada à maneira como um modelo específico interpreta a linguagem.
- Verificar o formato da saída: talvez você queira uma lista, um parágrafo, um bloco de código ou um tom específico. A variação de prompt de teste ajuda você a impor uma estrutura ou estilo específico.
Agora, vamos usar GitHub Models para testar variações de prompt em relação à entrada do usuário para seu modelo específico.
1. Adicionar variações de prompt
Para este cenário de exemplo, selecione o mesmo modelo para cada coluna, mas forneça uma variação de prompt diferente editando o campo "User prompt" de nossos prompts. Ao lado de cada prompt, clique em .
-
Clique em no "Prompt 2". Em seguida, no campo "User prompt", copie e cole o seguinte texto:
Text I want to learn how to use Git from the command line, but explain it to me like I am five years old.
I want to learn how to use Git from the command line, but explain it to me like I am five years old.
-
Clique em no "Prompt 3", então cole a seguinte entrada:
Text I want to learn how to use Git from the command line. Give me instructions in the form of a haiku.
I want to learn how to use Git from the command line. Give me instructions in the form of a haiku.
2. Como executar variações de prompt
- Para executar os prompts, no canto superior direito, clique em Run.
- Experimente diferentes variações de prompt e compare os tipos de saída que o modelo fornece.
Como avaliar a saída do modelo
Testamos diferentes modelos e variações de prompt em GitHub Models, e a próxima etapa é interpretar e comparar os resultados para tomar decisões informadas para nosso aplicativo alimentado por IA.
Conforme você executava os modelos nos cenários de exemplo, o uso do token de Entrada e Saída e a Latência eram exibidos após cada execução. O uso do token é importante porque afeta diretamente as limitações de custo, desempenho e modelo.
- Como a maioria dos modelos cobra por token tanto para entrada quanto para saída, usar mais tokens aumenta seu custo.
- Cada modelo também tem um limite máximo de tokens (chamado de janela de contexto) e excedê-lo pode causar erros ou respostas truncadas.
- Prompts mais longos podem diminuir o tempo de resposta ou reduzir a clareza, enquanto prompts concisos geralmente levam a saídas melhores e mais eficientes.
O uso de GitHub Models para testar o uso e a latência do token ajuda você a ficar dentro dos limites, gerenciar custos e melhorar a eficácia geral do aplicativo alimentado por IA.
Como usar avaliadores para julgar a saída
Dependendo do número de prompts e modelos que você está avaliando, pode ser extremamente trabalhoso classificar manualmente a saída do modelo. Para ajudar a avaliar a qualidade da saída de cada modelo, você pode usar Avaliadores para pontuar resultados em dimensões-chave, como clareza, precisão e relevância. Você pode definir seus próprios critérios de avaliação ou usar avaliadores internos para classificar as saídas automaticamente, facilitando a identificação do modelo de melhor desempenho e da variação de prompt.
Para este cenário de exemplo, vamos usar o avaliador String check para verificar uma cadeia de caracteres na saída.
-
No canto inferior direito do campo Prompts, clique em Add evaluator e selecione String check.
-
No campo Name, insira "Amend check" e copie e cole a seguinte entrada para o campo Value:
Text git commit --amend
git commit --amend
-
Para executar os prompts, no canto superior direito, clique em Run.
-
A saída do prompt agora mostrará um rótulo Pass ou Fail, informando qual modelo continha a cadeia de caracteres necessária.
Para saber mais sobre os avaliadores predefinidos, como similaridade, embasamento e relevância, confira Como avaliar modelos de IA.
Próximas etapas
Agora que você explorou como testar modelos, refinar prompts e avaliar saídas usando o GitHub Models, está pronto para começar a criar prompts para seu aplicativo alimentado por IA. Depois de criar um prompt, você pode armazená-lo, definir sua versão e compartilhá-confirmando um arquivo .prompt.yml
no seu repositório. Isso mantém o controle de versão dos prompts e permite uma colaboração fácil no prompt e no refinamento de modelo. Para saber mais, confira Como armazenar prompts em repositórios do GitHub.
Faça parte da comunidade
Para fazer perguntas e compartilhar comentários, confira esta postagem de discussão dos Modelos do GitHub.
Para saber como outras pessoas estão usando o GitHub Models, acesse o GitHub Community discussions for Models.