ComeçarComece gratuitamente

Criar o fluxo de trabalho gráfico para várias ferramentas

Os blocos de construção para você criar o gráfico do seu chatbot já estão prontos! Você reunirá todos os seus nós em um único fluxo de trabalho usando bordas para gerenciar as conexões entre eles. Para começar, seu fluxo de trabalho gráfico já foi configurado para você com MessagesState e o StateGraph() para rastrear as atualizações de mensagens do chatbot. A função display() para renderizar seu gráfico como um diagrama LangGraph também foi configurada e o MemorySaver foi importado para você.

from langgraph.graph import StateGraph
from langgraph.checkpoint.memory import MemorySaver

workflow = StateGraph(MessagesState)

Este exercício faz parte do curso

Projetando sistemas agênticos com LangChain

Ver Curso

Instruções de exercício

  • Adicione call_model como um nó usando o rótulo "chatbot" e adicione tool_node com o rótulo "tools".
  • Defina uma borda que conecte o nó START ao nó "chatbot".
  • Adicione bordas condicionais do nó "chatbot" aos nós "tools" e END usando should_continue, antes de conectar o nó "tools" de volta ao nó "chatbot".
  • Crie uma instância do MemorySaver() e compile o fluxo de trabalho em um aplicativo com a memória checkpointer.

Exercício interativo prático

Experimente este exercício preenchendo este código de exemplo.

# Add nodes for chatbot and tools
workflow.add_node("____", ____)
workflow.add_node("____", ____)

# Define an edge connecting START to the chatbot
workflow.add_edge(____, "____")

# Define conditional edges and route "tools" back to "chatbot"
workflow.add_conditional_edges("____", ____, ["____", ____])
workflow.add_edge("____", "____")

# Set up memory and compile the workflow
memory = ____()
app = workflow.____(checkpointer=____)

display(Image(app.get_graph().draw_mermaid_png()))
Editar e executar código