Zacznij terazZacznij za darmo

Aktualizowanie i usuwanie elementów z kolekcji

To, że dokumenty zostały zapisane w bazie danych wektorów, nie oznacza, że nie można ich modyfikować – możesz zarówno dodawać nowe elementy do kolekcji, jak i aktualizować już istniejące.

W tym ćwiczeniu masz do dyspozycji dwa nowe tytuły Netflixa zapisane w new_data:

[{"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'}]

W zależności od tego, czy dane ID już istnieje w kolekcji, dodasz nowy element lub zaktualizujesz istniejący.

To ćwiczenie jest częścią kursu

Wprowadzenie do osadzeń z OpenAI API

Zobacz kurs

Instrukcje do ćwiczenia

  • Wyodrębnij ID i dokumenty z new_data, a następnie użyj jednej metody, aby zaktualizować je w kolekcji netflix_titles, jeśli już istnieją, lub dodać je, jeśli jeszcze ich tam nie ma.
  • Po dodaniu lub zaktualizowaniu elementów usuń element o ID 's95'.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

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)
Edytuj i uruchom kod