ANÚNCIO

~/questoes/agentes-de-ia

Como o RunnableParallel contribui para criar fluxos complexos?

Responda, confira o feedback e use o resultado para orientar sua revisão.
Aula de referência Aula 3: Runnables e LCEL no LangChain – Curso Completo para Iniciantes
Para fixar

RunnableParallel: Executando Múltiplos Fluxos em Simultâneo

Conceito central

RunnableParallel é um componente do LangChain que permite executar vários Runnables ao mesmo tempo em diferentes branches de um pipeline. Isso acelera o processamento ao consolidar resultados de múltiplas operações independentes que ocorrem em paralelo.

Por que essa resposta faz sentido

A alternativa B está correta porque RunnableParallel foi projetado especificamente para executar múltiplos Runnables de forma simultânea em branches diferentes do pipeline. Isso é essencial quando você precisa coletar dados de várias fontes ou processar múltiplas transformações sem esperar uma terminar para começar a outra.

Armadilhas comuns

  • Confundir RunnableParallel com limitadores de taxa (throttling). RunnableParallel acelera processamento executando tudo junto, não desacelera limitando requisições.
  • Achar que RunnableParallel é igual a RunnableSequence. A sequência encadeia operações uma após a outra; o paralelo executa várias ao mesmo tempo.
  • Pensar que todos os Runnables em um RunnableParallel precisam terminar juntos antes de prosseguir. Na verdade, o pipeline espera todas as branches terminarem antes de consolidar e passar adiante.

Entenda as alternativas

A

RunnableParallel não limita requisições simultâneas para evitar sobrecarga. Na verdade, ele faz o oposto: permite que múltiplos processamentos aconteçam juntos. Limitar requisições seria um mecanismo de throttling, não uma característica do RunnableParallel.

B

Esta é a definição exata do RunnableParallel. Ele executa múltiplos Runnables simultaneamente em branches diferentes (como buscar informações de múltiplas fontes de dados ao mesmo tempo) e depois consolida todos os resultados em um único output.

C

RunnableParallel não divide um Runnable em subprocessos menores executados sequencialmente. Essa descrição se aproxima mais de RunnableSequence, que encadeia Runnables um após o outro, não em paralelo.

D

RunnableParallel não replica dados automaticamente entre servidores. Ele trabalha com processamento paralelo dentro de um pipeline, consolidando resultados de diferentes branches que executam simultaneamente.

Dica prática: Use RunnableParallel quando precisar buscar informações de múltiplas fontes antes de processar. Por exemplo: executar uma busca em banco de dados, uma chamada de API e um cálculo customizado tudo ao mesmo tempo, depois consolidar os três resultados em um único contexto para o modelo de linguagem processar.

Revise pensando: Se você precisa executar três operações diferentes (A, B e C) que não dependem uma da outra, qual tipo de Runnable você escolheria para rodar todas ao mesmo tempo?