CommencezCommencez gratuitement

Définir une fonction pour le découpage en blocs

Pour regrouper les upserts par lots de manière reproductible, vous devrez définir une fonction qui divise votre liste de vecteurs en blocs.

Le module intégré itertools a déjà été importé pour vous.

Cette activité fait partie du cours

Créer des applications d'IA avec Pinecone

Voir le cours

Instructions de l’exercice

  • Convertissez l'entrée iterable en itérateur.
  • Découpez it en blocs de taille batch_size à l'aide du module itertools.
  • Produisez le bloc courant avec yield.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

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))
Modifier et exécuter le code