Začněte nyníZačněte zdarma

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

Zobrazit kurz

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 rokem 2019.

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'])
Upravit a spustit kód