Fornire esempi few-shot
Anche se gli output strutturati descrivono come vuoi che i dati vengano restituiti, rimane ancora molto spazio all'interpretazione su cosa debba essere restituito.
La classe Field ti permette di fornire valori di esempio che diano al LLM un'idea di come appare una buona estrazione. Questo è un esempio di few-shot prompting per output strutturati.
Estenderai la classe Character per includere un campo id per identificare in modo univoco i personaggi. Vuoi fornire al modello due esempi da cui attingere: "romeo-montague" e "lady-capulet".
Questo esercizio fa parte del corso
Graph RAG con LangChain e Neo4j
Istruzioni dell'esercizio
- Specifica la parola chiave per fornire valori di esempio per la proprietà
id.
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
class Character(BaseModel):
id: str = Field(
description="A unique identifer consisting of the Character's given name and their family name in slug case.",
# Provide example values of an ID
____=["romeo-montague", "lady-capulet"]
)
name: str = Field(description="The name of the character")
chain = prompt | llm.with_structured_output(Character)
chain.invoke({"text": """JULIET.
O Romeo, Romeo, wherefore art thou Romeo? Deny thy father and refuse thy name. Or if thou wilt not, be but sworn my love, And I’ll no longer be a Capulet."""})