inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

모두를 위한 대규모 언어 모델 LLM Part 5 - LangGraph로 나만의 AI 에이전트 만들기

Plan-and-Execute 아키텍처 구현하기

비동기 방식으로 agent를 구성할 필요성이 궁금합니다.

177

힌턴

작성한 질문수 5

0

안녕하세요, 강의 감사히 잘 보고 있습니다.

Plan-and-Execute 강의 코드 보다가 궁금한 점이 있는데요,
다른 agent 구성에서는 동기 방식으로 def를 정의했었는데,

여기에서는 async와 await, .ainvoke의 비동기 방식으로 agent를 정의하는 것 같아 왜 여기서는 비동기 방식으로 정의하는지 여쭤봅니다.

plan -> execute -> replan 자체도 순차적으로 실행되는 것 같은데(RAG와 같이), 비동기 방식이 어떤 이유로 필요한 것인지 질문드립니다.

감사합니다.

llm langchain rag openai-api ai-agent langgraph

답변 2

0

AISchool

안녕하세요~. 반갑습니다.

먼저 강의를 잘 듣고 계시다니 기쁘네요 🙂

 

말씀해주신 부분을 확인해보니 현재 로직상 말씀해주신대로 plan -> execute -> replan 이 순차적으로 실행되는 구조라 비동기 방식의 이점이 딱히 없는 상태인 것 같습니다.

즉, 그냥 동기 방식 def로 바꿔도 큰 차이는 없을 것 같습니다.

 

비동기 방식으로 예제가 작성된 정확한 이유는 알수 없지만, 처음 예제를 만들때 뭔가 비동기적인 로직을 넣으려는 구상이 있었는데 예제 최종본에서는 해당 구상이 실현되지 못한게 아닐까 싶습니다.

 

좋은 하루되세요~.

감사합니다.

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

힌턴님께서 질문하신 비동기 방식으로 에이전트를 구성할 필요성에 대해 조금 더 설명드리겠습니다.

  1. 비동기 처리의 장점:

    • 비동기 방식은 여러 태스크를 동시에 다룰 수 있게 해줌으로써, 긴 대기 시간을 단축할 수 있습니다. 특히 외부 API를 호출하거나 파일 입출력 같은 I/O 바운드 작업이 포함된 경우에 효과적입니다.
    • 비동기 프로그래밍을 사용하면 CPU 자원을 효율적으로 활용하여 자원 낭비를 줄이고 응답성을 높일 수 있습니다.
  2. 에이전트의 구성 변경:

    • 비동기 처리는 순차적 작업이 아닌, 병렬적으로 태스크를 처리할 수 있는 환경을 제공합니다. Plan -> Execute -> Replan의 각 단계가 반드시 순차적으로만 처리될 필요가 없고, 각 단계가 독립적으로 처리될 수 있는 부분 또한 비동기의 이점입니다.
    • LangChain처럼 다양한 API와의 연동을 포함하는 애플리케이션에서는 비동기 처리가 병목을 방지하고 더 나은 사용자 경험을 제공할 수 있습니다.
  3. 적용 사례:

    • 예를 들어, 여러 외부 데이터를 동시에 수집하고 그 결과를 바탕으로 각 데이터에 대한 처리를 병렬로 실행해야 할 때 비동기 방식이 유리합니다.

이처럼 비동기 방식은 특정 작업의 성격에 따라 더 효율적일 수 있습니다. 특히, I/O 작업이 많거나 병렬로 수행해야 할 작업이 있을 때 더욱더 유용하게 사용됩니다.

다른 관련된 주제를 더 알고 싶으시다면, 아래의 유사한 질문들을 참고해 주세요:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

클로드 Pro 요금제에서 Claude Code CLI 사용을 막는다고 들어서 질문드립니다.

1

7

1

섹션2-11 내용중 tool_call

0

15

1

시니어 리뷰 모드

0

20

1

제공해준 자료가 압축해제되지 않습니다.

0

24

2

max token을 제한하는게 왜 성능을 개선하게 되는걸까요?

0

23

2

gitforwindows에서 맥은 뭘 다운받아야 하나요...?

0

24

2

n8n Email Trigger(IMAP) 네이버 메일 연동 시 Published 이후 트리거 미동작 문제

0

34

2

안티그라비티 저는 오픈폴더라고 나와요ㅜ

1

20

2

20강에서 파인튜닝 때 사용한 데이터가 없어졌습니다. LoRA Trainer 매개변수도 라이브러리 업그레이드로 수정되었습니다.

0

13

1

Adaptive RAG 질문드립니다.

0

82

1

LangChain에서 제공하는 Tool과 MCP의 차이점

0

157

2

Structured outputs ppt 강의자료 다운로드 가능 위치 문의

0

117

2

STORM 관련 ipynb 소스에서

0

125

2

AI 에이전트를 위한 웹검색(Web search) Tool 에서 DuckDuckGoSearchRun 실행 관련..

0

443

2

ReWoo 아키텍처에서는 RePlan이 필요없나요?

0

173

1

STORM 아키텍쳐

0

119

2

"Plan-and-Execute 아키텍쳐 구현하기" 강의 prompt not found error

0

211

1

"Airline Red Teaming Korean" 데이터 클론시 에러가 발생합니다.

0

144

2

storm 아키텍쳐 구현하기

1

214

2

범위를 제한한 검색 방법

0

222

2

Llama + Search Tool 연동

0

195

2

강의 자료 좀 올려 주세요.

0

236

4

Tool Calling 질문

0

388

2

STORM(Synthesis of Topic Outlines through Retrieval and Multi-perspective Question Asking) 아키텍처 구현하기 강의에서 콜랩 url 이 안보입니다.

0

165

2