강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

nathan님의 프로필 이미지
nathan

작성한 질문수

LangGraph를 활용한 AI Agent 개발 (feat. MCP)

3.6 강의 관련 질문(interrupt 관련)

작성

·

19

·

수정됨

0

선생님 안녕하세요

좋은 강의 감사합니다.

 

강의를 보며 소스코드를 실행하고 있는데, 3.6 강의에서 수업에 나온 영상과 다르게 코드가 작동하는 부분이 있어서 질문드립니다.

 

  1. agent가 제시한 도구는 그대로 사용하되, args를 바꾸는 경우

수업에서는 아래 코드를 쓰면 바로 요약된 AIMessage가 작성되도록 진행이 되는데,


for chunk in graph.stream(
    Command(resume={"action": "update_args", 'data' : {'query' : "Large Language Model : A Survey 논문의 내용을 검색해서 요약해주세요"}},),
    config,
    stream_mode="updates", # values가 아니다. 수정할때는 updates
):
    print(f'chunk == {chunk}')

 

저는 아래와 같이 나옵니다. 여기에서 continue를 해도 계속 같은 메시지가 무한반복이 되어버리는 현상이 나옵니다;

image.png

 

  1. agent가 제시한 도구를 바꾸는 경우

이 경우에도 위에 처럼 continue를 했음에도 불구하고 계속 "이렇게 진행하면 될까요?" 를 물어보는 현상이 나옵니다. 계속 continue를 해도 같은 현상이 반복되고요

 

image.png

 

혹시 선생님도 같은 오류가 발생하는지 확인이 가능하실까요? 혹시 이런 오류는 어떤 이유때문에 발생하는 것인지도 답변이 가능하시면 정말 감사하겠습니다.

 

 


llm 모델을 small_llm이 아니라 일반 llm으로 하니 정상적으로 나오네요. small_llm의 한계 때문에 다음 단계로 못넘어가는 것일까요?

다음 단계로 넘어가는건 비교적 쉬운 task 같은데 small llm의 어떤 부분? 때문에 이런 무한 loop 오류가 발생하는 것인지도 궁금합니다. 답변이 가능하신 선에서 말씀해주시면 감사하겠습니다.

답변 1

0

제이쓴님의 프로필 이미지
제이쓴
지식공유자

안녕하세요, 저는 처음 보는 에러인데요,

첫번째 스크린샷을 보시면 duckduckgo에서 RateLimitError 라는 에러가 발생하는데, 에러가 발생해서 다시 컨펌을 받는게 아닌가 싶기도 합니다.

말씀하신 것처럼 small_llm에서 에러가 발생한다면, 모델이 처리하기에 조금 더 어려운 Task가 아니었나 생각합니다. 아니면 llm 이 바로 답변을 한다고 했을 때, small_llm은 한 번 더 확인을 받고자 하는게 아닌가 싶기도 하구요.

아마도 무한루프의 오류라기 보다는 모델의 특성으로 보시는게 더 좋을 것 같습니다. 추가로 실제 서비스에서 위와 비슷한 내용을 구현하신다고 한다면 사용자에게 나가는 답변을 생성하는 중요한 단계이니 가급적이면 큰 모델을 활용하시는 걸 추천합니다.

nathan님의 프로필 이미지
nathan

작성한 질문수

질문하기