Filtrování pomocí metadat
Metadata uložená v databázi ti umožňují snadno filtrovat výsledky podle dalších podmínek. Představ si, že systém filmových doporučení, který vytváříš, dokáže přistupovat k uživatelským preferencím a podle nich výsledky dále upřesňovat.
V tomto cvičení využiješ metadata k filtrování doporučení filmů z Netflixu. Kolekce netflix_titles byla aktualizována – každý titul nyní obsahuje metadata, včetně 'rating' (věkové hodnocení) a 'release_year' (rok prvního vydání).
Tady je ukázka aktualizované položky:
{'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}
Toto cvičení je součástí kurzu
Introduction to Embeddings with the OpenAI API
Pokyny k cvičení
- Dotazem získej dva výsledky z kolekce pomocí
reference_texts. - Výsledky filtruj tak, aby zahrnovaly pouze tituly s hodnocením
'G', které zároveň vyšly před rokem2019.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
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'])