Few-shotvoorbeelden toevoegen
Hoewel gestructureerde outputs beschrijven hoe je de gegevens wilt terugkrijgen, blijft er nog veel ruimte voor interpretatie over wat er precies moet worden geretourneerd.
Met de klasse Field kun je voorbeeldwaarden meegeven die het LLM laten zien hoe een goede extractie eruitziet. Dit is een voorbeeld van few-shot prompting voor gestructureerde outputs.
Je breidt de klasse Character uit met een id-veld om personages uniek te identificeren. Je wilt het model twee voorbeelden geven om op terug te vallen: "romeo-montague" en "lady-capulet".
Deze oefening maakt deel uit van de cursus
Graph RAG met LangChain en Neo4j
Oefeninstructies
- Geef de keyword-parameter op om voorbeeldwaarden te geven voor de eigenschap
id.
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
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."""})