Оновлення та вилучення елементів з колекції
Те, що документи збережено у векторній базі даних, не означає, що ви не можете вносити зміни — додавати нові записи або оновлювати наявні елементи.
У цій вправі вам надано два нові тайтли Netflix у змінній 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'}]
Ви або додасте, або оновите ці ID в базі залежно від того, чи вони вже присутні в колекції.
Ця вправа є частиною курсу
Вступ до Embeddings з OpenAI API
Інструкції до вправи
- Витягніть ID та тексти документів із
new_dataі за допомогою одного методу оновіть їх у колекціїnetflix_titles, якщо вони вже існують, або додайте, якщо їх немає. - Після додавання/оновлення вилучіть елемент з ID
's95'.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
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)