ÎncepețiÎncepe gratuit

Definirea unei funcții pentru împărțirea în fragmente

Pentru a putea realiza upsert-uri în lot într-un mod reproductibil, va trebui să definești o funcție care să împartă lista de vectori în fragmente.

Modulul built-in itertools a fost deja importat pentru tine.

Acest exercițiu face parte din cursul

Crearea aplicațiilor AI cu Pinecone

Vezi cursul

Instrucțiuni pentru exercițiu

  • Convertește intrarea iterable într-un iterator.
  • Împarte it în fragmente de dimensiunea batch_size folosind modulul itertools.
  • Returnează fragmentul curent cu yield.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

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))
Editează și rulează codul