LoslegenKostenlos loslegen

Elemente in einer Collection aktualisieren und löschen

Nur weil die Dokumente in einer Vektordatenbank gespeichert sind, heißt das nicht, dass du die Collection nicht erweitern oder bestehende Einträge aktualisieren kannst.

In dieser Übung bekommst du zwei neue Netflix-Titel in new_data bereitgestellt:

[{"id": "s1001", "document": "Title: Cats & Dogs (Movie)\nDescription: 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)\nDescription: Three teens spend their Halloween trying to stop a magical book, which brings characters from the "Goosebumps" novels to life.\nCategories: Children & Family Movies, Comedies'}]

Du fügst diese IDs entweder neu hinzu oder aktualisierst sie in der Datenbank – je nachdem, ob sie bereits in der Collection vorhanden sind.

Diese Übung ist Teil des Kurses

Einführung in Embeddings mit der OpenAI API

Kurs anzeigen

Anleitung zur Übung

  • Extrahiere die IDs und Dokumente aus new_data und verwende eine einzelne Methode, um sie in der Collection netflix_titles zu aktualisieren, falls sie bereits existieren, und hinzuzufügen, falls nicht.
  • Nachdem du die Elemente hinzugefügt/aktualisiert hast, lösche das Element mit der ID 's95'.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

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)
Code bearbeiten und ausführen