Parçalama (chunking) için bir fonksiyon tanımlama
Upsert işlemlerini tekrarlanabilir bir şekilde toplu (batch) yapabilmek için, vektör listesini parçalara ayıran bir fonksiyon tanımlaman gerekecek.
Yerleşik itertools modülü senin için zaten içe aktarıldı.
Bu egzersiz
Pinecone ile Vektör Veritabanları ve Embeddings
kursunun bir parçasıdırEgzersiz talimatları
iterablegirdisini bir yineleyiciye dönüştür.itöğesiniitertoolsmodülünü kullanarakbatch_sizeboyutunda parçalara ayır.- Mevcut parçayı yield et.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
def chunks(iterable, batch_size=100):
"""A helper function to break an iterable into chunks of size batch_size."""
# Convert the iterable into an iterator
it = ____
# Slice the iterator into chunks of size batch_size
chunk = tuple(itertools.____(it, ____))
while chunk:
# Yield the chunk
____
chunk = tuple(itertools.islice(it, batch_size))