Пакетне додавання upsert паралельно
У цій вправі ви попрактикуєтеся в паралельному завантаженні векторів до індексу Pinecone 'datacamp-index'. Вам потрібно під'єднатися до індексу, виконати асинхронне upsert векторів пакетами та перевірити оновлені метрики індексу 'datacamp-index'.
Допоміжна функція chunks(), яку ви створили раніше, і далі доступна для використання:
def chunks(iterable, batch_size=100):
"""A helper function to break an iterable into chunks of size batch_size."""
it = iter(iterable)
chunk = tuple(itertools.islice(it, batch_size))
while chunk:
yield chunk
chunk = tuple(itertools.islice(it, batch_size))
Ця вправа є частиною курсу
Створення AI‑застосунків із Pinecone
Інструкції до вправи
- Ініціалізуйте клієнт Pinecone так, щоб дозволити 20 одночасних запитів.
- Виконайте upsert векторів із
vectorsпакетами по 200 векторів на запит асинхронно, налаштувавши20одночасних запитів. - Виведіть оновлені метрики індексу Pinecone
'datacamp-index'.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Initialize the client
pc = Pinecone(api_key="____", ____)
index = pc.Index('datacamp-index')
# Upsert vectors in batches of 200 vectors
with pc.Index('datacamp-index', ____) as index:
async_results = [____(vectors=chunk, ____) for chunk in chunks(vectors, batch_size=____)]
[async_result.get() for async_result in async_results]
# Retrieve statistics of the connected Pinecone index
print(____)