Get Started

단기 기억 판독 노드 사용하기

단기 기억 판독 노드 사용하기

단기 기억 판독 노드 사용하기

응용 가이드의 튜토리얼은 에이전트리아(Agentria)를 통해 구성할 수 있는 보다 다양한 워크플로 제작 과정을 다룹니다.

본 튜토리얼에서는 단기 기억 메모리(Short-term Memory Reader) 노드와 LLM 노드를 사용해 에이전트(Agent)를 구성하고 챗 테스트(Chat Test)를 진행합니다.

이를 통해 대화형 에이전트 워크플로를 만들어 볼 수 있습니다.


사전 준비


시작을 위해, 에이전트리아에서 프로젝트(Project)를 생성한 후, 에이전트 캔버스(Canvas)로 진입합니다.

캔버스 진입 절차는 3단계 핵심 가이드의 1단계(프로젝트 생성 및 컴포저 선택)를 참고하시기 바랍니다.


본 튜토리얼을 완료하면 다음과 같은 작업을 수행할 수 있습니다.

  1. 단기 기억 메모리 노드 사용하기

  2. 노드 두 개 이상 연결하기

  3. 에이전트 워크플로 구성하기

  4. 챗 테스트를 통해 워크플로 실행 결과 검증하기


1단계: 인풋 변수 선언



에이전트리아 캔버스에는 기본적으로 스타트 노드(Start Node)엔드 노드(End Node)가 하나씩 배치되어 있습니다.


  • 스타트 노드는 전체 흐름을 시작합니다.

  • 엔드 노드는 전체 흐름을 종료합니다.


따라서 ‘대화형 에이전트’ 워크플로를 구성하기 위해서는 먼저 스타트 노드에서 필요한 변수를 선언해야 합니다.

스타트 노드를 더블 클릭하면 노드 편집기가 팝업 형태로 열리며, 이곳에서 자료형과 이름, 설명을 설정하여 변수를 선언할 수 있습니다.



에이전트 스타트 노드는 챗 테스트를 위해 인풋 변수가 기본값으로 설정되어 있습니다.

임의로 필요한 변수를 추가할 수 있습니다.

본 튜토리얼에서는 추가 변수 설정 없이 기본 변수만 사용합니다.

다시 캔버스로 돌아갑니다.


2단계: 드래그 앤 드롭으로 노드 추가



챗 테스트에서 사용자의 입력 정보를 기억할 노드를 추가할 차례입니다.

단기 기억 메모리(Shor-term Memory Reader) 노드를 사용하면 사용자의 에이전트가 사용자의 입력 정보를 기억할 수 있습니다.

캔버스 하단의 +노드 추가(Add Node) 버튼을 클릭하여, AI Agent 카테고리에서 단기 기억 메모리 노드를 드래그 앤 드롭(Drag and drop) 방식으로 배치합니다.


기억 정보를 기반으로 에이전트가 답변을 생성할 수 있도록 LLM 노드도 추가합니다.

본 튜토리얼에서는 Azure OpenAI LLM 노드를 사용합니다.


3단계: 엣지로 노드 연결



스타트 노드에서 입력받은 변수들을 단기 기억 메모리 노드에서 사용하기 위해서는 두 노드를 연결해야 합니다.

이 연결선을 엣지(Edge)라고 부릅니다.

스타트 노드의 오른쪽에 있는 아웃 핀(Out-Pin)을 단기 기억 메모리 노드 왼쪽에 있는 인 핀(In-Pin)과 엣지로 연결하면, 스타트 노드의 입력값이 단기 기억 메모리 노드로 전달됩니다.


같은 방법으로 단기 기억 메모리 노드에서 처리된 데이터를 LLM 노드에 전달합니다.


4단계: 단기 기억 메모리 노드 설정



단기 기억 메모리 노드는 기억 저장소에 사용할 사용자 메시지 개수를 설정할 수 있습니다.

예를 들어 Number of Recent Messages 입력값을 10으로 설정하면 사용자의 대화를 최근 메시지로부터 10개까지 기억해 활용합니다.

본 튜토리얼에서는 기본값으로 두고 진행합니다.


5단계: LLM 노드 프롬프트 작성


LLM 노드 프롬프트 작성을 통해 에이전트가 적절한 답변을 생성하도록 합니다.

역할과 출력 규칙을 구체적으로 지시할수록 결과물의 품질이 높아집니다.


5-1) 시스템 프롬프트



시스템 프롬프트 필드에는 AI에게 수행할 역할과 출력 형식을 지시하는 지침 사항을 작성합니다.

본 튜토리얼은 아주 간단한 대화를 위한 에이전트를 구성하므로 시스템 프롬프트에 다음과 같이 작성합니다.

이전 대화를 기반으로 답변하세요. 대화 기록은 다음과 같습니다.


5-2) 사용자 프롬프트


사용자 프롬프트 필드에는 입력값을 건네는 요청을 작성합니다.

즉, 단기 기억 메모리 노드에서 입력받은 데이터를 AI에 전달하는 단계입니다.

본 튜토리얼은 아주 간단한 대화를 위한 에이전트를 구성하므로 사용자 프롬프트에 다음과 같이 변수를 입력해야 합니다.

6단계 영상을 참고하시기 바랍니다.


6단계: 드래그 앤 드롭으로 변수 바인딩



에이전트리아에서는 별도의 코드를 작성하지 않고, 드래그 앤 드롭으로 변수를 손쉽게 불러올 수 있습니다.

변수를 다음과 같이 배치해 바인딩합니다.


시스템 프롬프트:

memory_output


사용자 프롬프트:

input_message


7단계: LLM 출력 변수 선언



최종 출력을 위해 엔드 노드와 연결하려면, LLM 노드에서 아웃풋 변수를 선언해야 합니다.

자료형은 String으로 지정하고, 변수명은 Message로 설정하면 LLM 노드의 모든 설정이 완료됩니다.


8단계: 엔드 노드 연결



이제 생성된 LLM 아웃풋을 엔드 노드로 전달합니다.

다시 캔버스로 돌아와서 LLM 노드와 엔드 노드를 엣지로 연결합니다.

엔드 노드를 더블클릭하여 노드 편집기를 열면 기본값으로 String 타입의 output_message 어댑터 변수를 확인할 수 있습니다.

여기에 LLM 노드에서 생성한 Message 변수를 선택 또는 드래그앤 드롭 방식으로 연결합니다.

이로써 ‘단기 기억 메모리 노드를 활용한 대화형 에이전트’ 워크플로가 완성되었습니다.


9단계: 챗 테스트로 워크플로 점검



캔버스 우측 하단에서 CHAT TEST 버튼을 클릭하여 완성된 전체 워크플로를 실행할 수 있습니다.

에이전트 테스트는 대화 형식으로 진행됩니다.

원활한 상호작용이 이루어지는지 점검하며 노드를 수정하고 기능을 향상할 수 있습니다.


10단계: 대화 생성 과정 확인



에이전트 챗 테스트는 에이전트의 대화 생성 로직을 확인할 수 있습니다.

에이전트의 답변을 클릭하면 우측에 답변 생성 과정이 담긴 노드별 로직이 나옵니다.

해당 기능은 에이전트의 세부 성능 개선 작업에 활용할 수 있습니다.


다음 단계



🎉 축하합니다! 에이전트리아를 사용해 ‘대화형 에이전트’를 완성했습니다.

이제 챗 테스트에서 다양한 메시지를 입력해 결과를 확인해보고, 노드를 수정하며 워크플로의 성능을 개선해 보세요.


에이전트리아는 아이디어를 현실로 바꾸는 가능성의 공간입니다.

당신의 상상력으로 워크플로는 무한히 확장될 수 있습니다.



  • 더 많은 어빌리티 예제가 궁금하다면 입문 가이드 페이지를 확인하세요.

  • 에이전트 예제를 원한다면 응용 가이드 페이지를 확인하세요.