Definindo uma função para fragmentação
Pra poder fazer upserts em lote de um jeito que dá pra repetir, você vai precisar definir uma função pra dividir sua lista de vetores em pedaços.
O módulo integrado “ itertools ” já foi importado pra você.
Este exercício faz parte do curso
Bancos de dados vetoriais para incorporações com Pinecone
Instruções do exercício
- Converte a entrada “
iterable” em um iterador. - Corte
item pedaços de tamanhobatch_sizeusando o móduloitertools. - Retorna o bloco atual.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
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))