시작하기무료로 시작하기

챗봇을 중지하는 함수를 정의하세요

이제 챗봇의 상태가 준비되었으니, 챗봇 그래프 전반의 워크플로를 관리하는 함수를 만들어야 해요. 먼저, state에 로드된 챗봇의 마지막 메시지에서 도구 호출이 있는지 확인하는 should_continue() 함수를 만들어 보겠습니다. 도구 호출이 없으면 챗봇은 멈춥니다. 도구가 호출되면 챗봇은 다음 작업으로 이동해요. 메시지 관리를 위해 다음 모듈이 미리 임포트되어 있어요.

from langgraph.graph import MessagesState, START, END

이 연습은 강의의 일부입니다

LangChain으로 에이전트형 시스템 설계하기

강의 보기

연습 안내

  • MessagesState를 사용해 state 매개변수의 입력 타입을 지정하세요.
  • 도구 호출을 확인하기 위해 state"messages"에서 마지막 메시지에 접근하세요.
  • 마지막 메시지에 tool_calls가 포함되어 있다면 반환값을 "tools"로 지정하세요.
  • tool_calls가 없다면 대화를 종료하기 위해 반환값을 END로 지정하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

# Use MessagesState to define the state of the function
def should_continue(state: ____):
    
    # Get the last message from the state
    last_message = ____["____"][____]
    
    # Check if the last message includes tool calls
    if ____.____:
        return "____"
    
    # End the conversation if no tool calls are present
    return ____
코드 편집 및 실행