Filtrer à l’aide des métadonnées
Disposer de métadonnées exploitables dans la base de données permet de filtrer plus facilement les résultats selon des critères supplémentaires. Imaginez que les recommandations de films que vous créez puissent accéder aux préférences de l’utilisateur et les utiliser pour affiner les résultats.
Dans cet exercice, vous allez utiliser des métadonnées supplémentaires pour filtrer vos recommandations de films Netflix. La collection netflix_titles a été mise à jour pour ajouter des métadonnées à chaque titre, notamment 'rating', la classification d’âge attribuée au titre, et 'release_year', l’année de première sortie du titre.
Voici un aperçu d’un élément mis à jour :
{'ids': ['s999'],
'embeddings': None,
'metadatas': [{'rating': 'TV-14', 'release_year': 2021}],
'documents': ['Title: Searching For Sheela (Movie)\nDescription: Journalists and fans await Ma Anand Sheela as the infamous former Rajneesh commune’s spokesperson returns to India after decades for an interview tour.\nCategories: Documentaries, International Movies'],
'uris': None,
'data': None}
Cet exercice fait partie du cours
Introduction aux embeddings avec l’API OpenAI
Instructions
- Interrogez deux résultats depuis la collection en utilisant
reference_texts. - Filtrez les résultats pour des titres avec une classification
'G'et sortis avant2019.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
collection = client.get_collection(
name="netflix_titles",
embedding_function=OpenAIEmbeddingFunction(model_name="text-embedding-3-small", api_key="")
)
reference_texts = ["children's story about a car", "lions"]
# Query two results using reference_texts
result = collection.query(
____,
____,
# Filter for titles with a G rating released before 2019
____={
____: [
{"____":
{____}
},
{"____":
{____}
}
]
}
)
print(result['documents'])