Definiera en funktion för att dela upp data i delar
För att kunna batch-ladda upp vektorer på ett reproducerbart sätt behöver du definiera en funktion som delar upp din vektorlista i delar.
Det inbyggda modulen itertools har redan importerats åt dig.
Den här övningen är en del av kursen
Bygga AI-applikationer med Pinecone
Övningsinstruktioner
- Konvertera indatan
iterabletill en iterator. - Dela upp
iti delar av storlekenbatch_sizemed hjälp av modulenitertools. - Returnera den aktuella delen med
yield.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
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))