Nom de domaine

Sei stanco di trascorrere ore manualmente affinare il tuo mega pronta alle cipolle per ottenere risultati migliori dai tuoi modelli di intelligenza artificiale?

Quindi lascia che ti presenti Promptimizeruna biblioteca sperimentale e open source completamente nuova che automatizzerà il miglioramento delle istruzioni basate su valutazioni sistematiche e feedback umani.

Il principio è formidabile: si fornisce un prompt iniziale, un set di dati e valutatori personalizzati e PromptImzer è responsabile dell’ottimizzazione automatica del prompt per ottenere i migliori risultati possibili.

Fai un esempio concreto per illustrare: Supponiamo di voler creare un generatore di tweet ottimizzato.

Ecco come fare il passo. Già lo installeremo: pip install -U promptim

Quindi configureremo i tasti API. Assicurati di aver configurato le tue chiavi su Langsmith e il modello di tua scelta (come Claude d’Antropico):

export LANGSMITH_API_KEY=VOTRE_CLE

export ANTHROPIC_API_KEY=VOTRE_CLE

Quindi creeremo un’attività come questa:

proptim create task ./mon-generateur-tweets \
--name generateur-tweets \
--prompt langchain-ai/tweet-generator-example-with-nothing:starter \
--dataset URL_DATASET \
--description "Génération de tweets informatifs sur divers sujets" \
-y

La vera risorsa di promptimizer sta nei suoi valutatori. Questi piccoli pezzi intelligenti di codice analizzano i risultati del tuo prompt e gli attributi punteggi loro secondo i tuoi criteri.

ottimizzatore

Immagina ad esempio di voler evitare gli hashtag nei tuoi tweet generati. Ecco come sarebbe il tuo valutatore:

def evaluateur_tweets(run: Run, example: Example) -> dict:
# Récupère la prédiction du modèle
prediction = run.outputs["output"]
# Convertit la prédiction en string
resultat = str(prediction.content)
# Score = 1 si pas de hashtag, 0 sinon
score = int("#" not in resultat)

return {
"key": "sans_hashtags",
"score": score,
"comment": "Réussi : tweet sans hashtag" if score == 1 else "Échec : retirer les hashtags"
}

Quindi, quando si avvia l’ottimizzazione con il comando promptim traininizia un processo affascinante:

  1. Valutazione iniziale : Promptimizer Test del prompt sul set di convalida per stabilire un riferimento
  2. Ottimizzazione iterativa : Il sistema analizza i risultati per lotti e suggerisce miglioramenti tramite un meta -post
  3. Convalida continua : Ogni modifica viene testata per garantire che migliora davvero le prestazioni
  4. Feedback umano (facoltativo): è possibile intervenire nel processo valutando manualmente i risultati

Per aggiungere questa dimensione umana all’ottimizzazione, usa l’opzione --annotation-queue :::

proptim train --task ./mon-generateur-tweets/config.json --annotation-queue ma_queue

Sarai quindi in grado di esaminare i risultati nell’interfaccia Langsmith e fornire il tuo feedback, che promptimizer si integrerà nel suo processo di miglioramento.

Il file config.json Ti consente di personalizzare finemente il comportamento di promptimizer:

json
{
"name": "Générateur de Tweets",
"dataset": "mon_dataset",
"initial_prompt": {
"prompt_str": "Rédigez un tweet sur {sujet} dans le style de {auteur}",
"which": 0
},
"description": "Génération de tweets engageants adaptés au style",
"optimizer": {
"model": {
"name": "gpt-3.5-turbo",
"temperature": 0.7
}
}
}

Ora, come al solito:

  1. Inizia in piccolo : Primo test su un piccolo set di dati prima di andare in scala
  2. Raffina i tuoi valutatori : La qualità dell’ottimizzazione dipende direttamente dalla rilevanza dei criteri di valutazione
  3. Usa la modalità di debug : L’opzione --debug Consente di seguire in dettaglio il processo di ottimizzazione
  4. Esperienza con iperparametri : Regola le dimensioni dei lotti e il numero di epoche per trovare il miglior equilibrio

Combinando la valutazione sistematica e il feedback umano, PromptImzer offre un approccio molto pragmatico ma molto efficace per migliorare le prestazioni dei sistemi di intelligenza artificiale. Dipende da te adesso! E grazie a Lorenper per le informazioni!

Ulteriori informazioni su promplizer


Source link

Categorized in: