Integrare gli LLM per Suggerimenti di Annotazione Intelligenti
Scopri come usare OpenAI, Claude o Gemini per fornire suggerimenti e hint intelligenti ai tuoi annotatori.
L'annotazione assistita dall'AI può migliorare notevolmente sia la velocità che la qualità. Questa guida copre l'integrazione di OpenAI, Claude, Gemini e modelli locali per fornire suggerimenti intelligenti ai tuoi annotatori.
Cosa Abilita l'Integrazione LLM
- Suggerimenti di pre-annotazione: L'AI fornisce etichette iniziali da revisionare
- Evidenziazione di parole chiave: Evidenzia automaticamente i termini rilevanti
- Hint di qualità: Segnala potenziali errori di annotazione
- Generazione di spiegazioni: Aiuta gli annotatori a comprendere i casi difficili
Integrazione di Base con OpenAI
annotation_task_name: "AI-Assisted Sentiment Analysis"
# Configurazione AI
ai_support:
enabled: true
endpoint_type: openai
ai_config:
model: gpt-4
api_key: ${OPENAI_API_KEY}
temperature: 0.3
max_tokens: 500
features:
hints:
enabled: true
keyword_highlighting:
enabled: true
label_suggestions:
enabled: true
# ... resto della configurazione
annotation_schemes:
- annotation_type: radio
name: sentiment
labels: [Positive, Negative, Neutral]Provider Supportati
OpenAI
ai_support:
enabled: true
endpoint_type: openai
ai_config:
model: gpt-4 # o gpt-4o, gpt-3.5-turbo
api_key: ${OPENAI_API_KEY}
temperature: 0.3
max_tokens: 500Anthropic Claude
ai_support:
enabled: true
endpoint_type: anthropic
ai_config:
model: claude-3-sonnet-20240229
api_key: ${ANTHROPIC_API_KEY}
temperature: 0.3
max_tokens: 500Google Gemini
ai_support:
enabled: true
endpoint_type: google
ai_config:
model: gemini-1.5-pro
api_key: ${GOOGLE_API_KEY}Modelli Locali (Ollama)
ai_support:
enabled: true
endpoint_type: ollama
ai_config:
model: llama2 # o mistral, mixtral, ecc.
base_url: http://localhost:11434Funzionalità: Suggerimenti di Etichette
I modelli AI possono suggerire etichette che gli annotatori possono considerare:
ai_support:
enabled: true
endpoint_type: openai
ai_config:
model: gpt-4
api_key: ${OPENAI_API_KEY}
features:
label_suggestions:
enabled: true
show_confidence: true
annotation_schemes:
- annotation_type: radio
name: category
labels: [News, Opinion, Satire, Other]Funzionalità: Evidenziazione di Parole Chiave
Evidenzia automaticamente i termini importanti:
ai_support:
enabled: true
endpoint_type: openai
ai_config:
model: gpt-4
api_key: ${OPENAI_API_KEY}
features:
keyword_highlighting:
enabled: trueFunzionalità: Hint Intelligenti
Fornisce guida contestuale agli annotatori:
ai_support:
enabled: true
endpoint_type: openai
ai_config:
model: gpt-4
api_key: ${OPENAI_API_KEY}
features:
hints:
enabled: trueGli hint appaiono come guida contestuale senza rivelare la risposta, aiutando gli annotatori a ragionare sui casi difficili.
Configurazione Completa con Assistenza AI
annotation_task_name: "AI-Assisted NER Annotation"
# Configurazione AI
ai_support:
enabled: true
endpoint_type: openai
ai_config:
model: gpt-4
api_key: ${OPENAI_API_KEY}
temperature: 0.2
max_tokens: 500
features:
hints:
enabled: true
keyword_highlighting:
enabled: true
label_suggestions:
enabled: true
show_confidence: true
cache_config:
disk_cache:
enabled: true
path: "ai_cache/cache.json"
prefetch:
warm_up_page_count: 50
on_next: 5
on_prev: 2
data_files:
- data/texts.json
item_properties:
id_key: id
text_key: content
annotation_schemes:
- annotation_type: span
name: entities
description: "Label named entities (AI suggestions provided)"
labels:
- name: PERSON
color: "#FF6B6B"
- name: ORG
color: "#4ECDC4"
- name: LOC
color: "#45B7D1"
- name: DATE
color: "#96CEB4"
output_annotation_dir: "annotation_output/"
export_annotation_format: "json"Lavorare con i Suggerimenti AI
Quando il supporto AI è abilitato, gli annotatori vedono i suggerimenti accanto all'interfaccia di annotazione. Possono accettare, modificare o ignorare le raccomandazioni dell'AI. L'annotazione finale riflette sempre la decisione dell'annotatore, garantendo la supervisione umana.
Le risposte AI vengono memorizzate nella cache automaticamente quando la cache è abilitata, quindi la stessa istanza non genererà più chiamate API.
Prompt Personalizzati
Potato include prompt predefiniti per ogni tipo di annotazione, memorizzati in potato/ai/prompt/. Puoi personalizzarli modificando i file di prompt:
| Tipo di Annotazione | File di Prompt |
|---|---|
| Radio buttons | radio_prompt.txt |
| Likert scales | likert_prompt.txt |
| Checkboxes | checkbox_prompt.txt |
| Span annotation | span_prompt.txt |
| Text input | text_prompt.txt |
I prompt supportano la sostituzione di variabili con {text}, {labels} e {description}.
Suggerimenti per l'Annotazione Assistita da AI
- Inizia in modo conservativo: Revisiona tutti i suggerimenti inizialmente
- Monitora i tassi di accettazione: Tassi bassi indicano problemi con il prompt
- Itera sui prompt: Affina in base agli errori comuni
- Mantieni la supervisione umana: L'AI assiste, gli esseri umani decidono
- Traccia le etichette AI vs umane: Misura l'accuratezza dell'AI nel tempo
Novità in v2.2: Option Highlighting
Potato 2.2 aggiunge una nuova funzionalità AI chiamata Option Highlighting che analizza il contenuto per evidenziare le opzioni più probabilmente corrette per i task di annotazione discreta (radio, multiselect, likert). Le opzioni top-k vengono evidenziate con un indicatore a stella, mentre le opzioni meno probabili vengono attenuate, mantenendo tutte le opzioni completamente cliccabili.
ai_support:
option_highlighting:
enabled: true
top_k: 3
dim_opacity: 0.4Leggi la documentazione completa di Option Highlighting →
Prossimi Passi
- Abilita l'active learning per prioritizzare gli elementi incerti
- Configura il quality control con metriche AI
- Scopri i modelli locali per la privacy
- Esplora l'option highlighting per l'annotazione guidata
Documentazione AI completa su /docs/features/ai-support.