Fournir des exemples few-shot
Même si les sorties structurées décrivent la façon dont vous souhaitez que les données soient renvoyées, cela laisse encore une grande part d’interprétation sur ce qui doit être renvoyé.
La classe Field vous permet de fournir des valeurs d’exemple qui indiquent au LLM à quoi ressemble une bonne extraction. Il s’agit d’un exemple de few-shot prompting pour des sorties structurées.
Vous allez étendre la classe Character pour contenir un champ id permettant d’identifier de manière unique les personnages. Vous souhaitez fournir au modèle deux exemples sur lesquels s’appuyer : "romeo-montague" et "lady-capulet".
Cet exercice fait partie du cours
<cours>Graph RAG avec LangChain et Neo4j</cours>Instructions de l’exercice
- Indiquez le mot-clé à utiliser pour fournir des valeurs d’exemple pour la propriété
id.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
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."""})