ComenzarEmpieza gratis

Filtrar utilizando metadatos

Disponer de metadatos para utilizarlos en la base de datos puede desbloquear la capacidad de filtrar más fácilmente los resultados basándose en condiciones adicionales. Imagina que las recomendaciones de películas que has creado pudieran acceder a las preferencias establecidas por el usuario y utilizarlas para filtrar aún más los resultados.

En este ejercicio, utilizarás metadatos adicionales para filtrar las recomendaciones de películas de Netflix. La colección netflix_titles se ha actualizado para añadir metadatos a cada título, como 'rating', la clasificación por edades que se le ha dado al título, y 'release_year', el año en que se publicó inicialmente el título.

Aquí tienes un avance de un artículo actualizado:

{'ids': ['s999'],

 'embeddings': None,

 'metadatas': [{'rating': 'TV-14', 'release_year': 2021}],

 'documents': ['Title: Searching For Sheela (Movie)

Description: Journalists and fans await Ma Anand Sheela as the infamous former Rajneesh commune’s spokesperson returns to India after decades for an interview tour.
Categories: Documentaries, International Movies'],

 'uris': None,

 'data': None}

Este ejercicio forma parte del curso

Introducción a las incrustaciones con la OpenAI API

Ver curso

Instrucciones del ejercicio

  • Consulta dos resultados de la colección utilizando reference_texts.
  • Filtra los resultados para buscar títulos con una clasificación 'G' que también se hayan publicado antes de 2019.

Ejercicio interactivo práctico

Prueba este ejercicio completando el código de muestra.

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'])
Editar y ejecutar código