Mise à jour et suppression d'éléments d'une collection
Ce n'est pas parce que les documents ont été stockés dans une base de données vectorielle que vous ne pouvez pas les modifier pour les ajouter à la collection ou mettre à jour les éléments existants.
Dans cet exercice, vous avez reçu deux nouveaux titres Netflix stockés dans new_data
:
[{"id": "s1001", "document": "Title: Cats & Dogs (Movie)
Description: A look at the top-secret, high-tech espionage war going on between cats and dogs, of which their human owners are blissfully unaware."},
{"id": "s6884", "document": 'Title: Goosebumps 2: Haunted Halloween (Movie)
Description: Three teens spend their Halloween trying to stop a magical book, which brings characters from the "Goosebumps" novels to life.
Categories: Children & Family Movies, Comedies'}]
Vous ajouterez ou mettrez à jour ces identifiants dans la base de données, selon qu'ils sont ou non déjà présents dans la collection.
Cet exercice fait partie du cours
Introduction à l'intégration avec l'API OpenAI
Instructions
- Extrayez les identifiants et les documents de
new_data
, et utilisez une méthode unique pour les mettre à jour dans la collectionnetflix_titles
s'ils existent déjà et les ajouter s'ils n'existent pas. - Une fois les éléments ajoutés/modifiés, supprimez-les à l'aide de ID
's95'
.
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="")
)
# Update or add the new documents
____(
ids=____,
documents=____
)
# Delete the item with ID "s95"
____
result = collection.query(
query_texts=["films about dogs"],
n_results=3
)
print(result)