ComenzarEmpieza gratis

Agrupar actualizaciones en paralelo

En este ejercicio, practicarás la ingesta de vectores en el índice Pinecone « 'datacamp-index' » de forma paralela. Tendrás que conectarte al índice, insertar vectores por lotes de forma asíncrona y comprobar las métricas actualizadas del índice 'datacamp-index'.

La función auxiliar chunks() que creaste anteriormente sigue estando disponible para su uso:

def chunks(iterable, batch_size=100):

    """A helper function to break an iterable into chunks of size batch_size."""

    it = iter(iterable)

    chunk = tuple(itertools.islice(it, batch_size))

    while chunk:

        yield chunk

        chunk = tuple(itertools.islice(it, batch_size))

Este ejercicio forma parte del curso

Bases de datos vectoriales para incrustaciones con Pinecone

Ver curso

Instrucciones del ejercicio

  • Inicializa el cliente Pinecone para permitir 20 solicitudes simultáneas.
  • Inserta los vectores en vectors en lotes de 200 vectores por solicitud de forma asíncrona, configurando 20 solicitudes simultáneas.
  • Imprime las métricas actualizadas del índice Pinecone de 'datacamp-index'.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

# Initialize the client
pc = Pinecone(api_key="____", ____)

index = pc.Index('datacamp-index')

# Upsert vectors in batches of 200 vectors
with pc.Index('datacamp-index', ____) as index:
    async_results = [____(vectors=chunk, ____) for chunk in chunks(vectors, batch_size=____)]
    [async_result.get() for async_result in async_results]

# Retrieve statistics of the connected Pinecone index
print(____)
Editar y ejecutar código