Introdução geral
O Promptimizer é uma biblioteca experimental de otimização de palavras-chave projetada para ajudar os usuários a melhorar sistematicamente as palavras-chave de seus sistemas de IA. Ao automatizar o processo de otimização, o Promptimizer pode melhorar o desempenho das palavras-chave em tarefas específicas. Os usuários simplesmente fornecem uma palavra-chave inicial, um conjunto de dados e um avaliador personalizado (com feedback humano opcional), e o Promptimizer executa um loop de otimização que gera uma palavra-chave otimizada projetada para superar a palavra-chave original.
Lista de funções
- Otimização de palavras-chave: otimização automatizada de palavras-chave para melhorar o desempenho do sistema de IA em tarefas específicas.
- Suporte a conjuntos de dados: suporta vários formatos de conjuntos de dados para otimização de palavras-chave de fácil utilização.
- Avaliadores personalizados: os usuários podem definir avaliadores personalizados para quantificar o desempenho das palavras-chave.
- Feedback humano: o feedback humano é suportado para melhorar ainda mais a otimização da palavra-chave.
- Guia de início rápido: um guia de início rápido detalhado é fornecido para ajudar os usuários a começar rapidamente.
Usando a Ajuda
montagem
- Primeiro, instale a ferramenta CLI:
pip install -U promptim
- Certifique-se de que você tenha uma chave de API LangSmith válida em seu ambiente:
export LANGSMITH_API_KEY=sua API_KEY export ANTHROPIC_API_KEY=Sua API_KEY
Criação de tarefas
- Crie uma tarefa de otimização:
promptim create task . /my-tweet-task \ --name my-tweet-task \ --prompt langchain-ai/tweet-generator-example-with-nothing:starter \ --dataset https://smith.langchain.com/public/6ed521df-c0d8-42b7-a0db-48dd73a0c680/d \ --description "Escreva tweets informativos sobre qualquer assunto." \ \ --y
Esse comando gerará um diretório que contém o arquivo de configuração da tarefa e o código da tarefa.
Definição do avaliador
- Abra o diretório da tarefa gerada no diretório
task.py
para localizar a seção de lógica de avaliação:pontuação = len(str(predicted.content)) < 180
- Modificar a lógica de avaliação, por exemplo, penalizar os resultados que contêm rótulos:
score = int("#" not in result)
trem
- Execute o comando de treinamento para começar a otimizar a palavra-chave:
promptim train --task . /my-tweet-task/config.json
Quando o treinamento é concluído, o terminal emite a palavra-chave final otimizada.
Adicionar tags manuais
- Configure a fila de anotações:
promptim train ---task . /my-tweet-task/config.json --annotation-queue my_queue
- Acesse a interface do usuário do LangSmith e navegue até a fila designada para etiquetagem manual.