Toplu upsert işlemlerini paralel çalıştırma
Bu egzersizde, vektörleri 'datacamp-index' adlı Pinecone indeksine paralel olarak içeri aktarma alıştırması yapacaksın. İndekse bağlanman, vektörleri asenkron şekilde partiler halinde upsert etmen ve 'datacamp-index' indeksinin güncellenmiş metriklerini kontrol etmen gerekiyor.
Daha önce oluşturduğun chunks() yardımcı işlevi hâlâ kullanılabilir:
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))
Bu egzersiz
Pinecone ile Vektör Veritabanları ve Embeddings
kursunun bir parçasıdırEgzersiz talimatları
- Pinecone istemcisini 20 eşzamanlı isteğe izin verecek şekilde başlat.
vectorsiçindeki vektörleri, istek başına 200 vektör olacak şekilde partiler halinde ve asenkron olarak,20eşzamanlı istekle yapılandırarak upsert et.'datacamp-index'adlı Pinecone indeksinin güncellenmiş metriklerini yazdır.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# 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(____)