Get Started
어빌리티(Ability) 가이드의 튜토리얼은 에이전트리아(Agentria) 입문자를 위한 가장 기본적이면서도 핵심적인 과정을 다룹니다.
본 튜토리얼은 브랜치(Branch) 노드를 활성화하고, 조건에 따라 LLM으로 메일 내용을 생성하는 어빌리티를 직접 만들고 실행합니다.
사전 준비
시작을 위해, 에이전트리아에서 프로젝트(Project)를 생성한 후, 어빌리티 캔버스(Canvas)로 진입합니다.
캔버스 진입 절차는 3단계 핵심 가이드의 1단계(프로젝트 생성 및 컴포저 선택)를 참고하시기 바랍니다.
본 튜토리얼을 완료하면 다음과 같은 작업을 수행할 수 있습니다.
노드(Node) 추가하기
스타트 노드(Start Node)에서 변수 선언하기
노드 연결하기
브랜치 노드 사용하기
LLM 노드 사용하기
파이썬(Python) 노드 사용하기
어빌리티 테스트를 통해 워크플로(Workflow) 실행 결과 확인하기
1단계: 필요한 노드

캔버스 하단의 +노드 추가(Add Node) 버튼을 클릭하고 사이드바 도구(Tools) 카테고리에서 필요한 노드를 선택해 드래그 앤 드롭(Drag and Drop)으로 배치합니다.
노드 위에 마우스를 올려 편집 아이콘을 클릭하고 옵션 창에서 노드의 이름과 설명을 수정할 수 있습니다.
실제 사용 시에는 필요할 때마다 노드를 추가하게 되지만, 본 튜토리얼은 설명의 편의를 위해 한번에 모든 노드를 배치합니다.
파이썬 노드 : 3개
브랜치 노드 : 1개
LLM 노드 : 3개
지메일 노드 : 1개 (선택)
2단계: 인풋 변수 선언

에이전트리아 캔버스에는 기본적으로 스타트 노드(Start Node)와 엔드 노드(End Node)가 하나씩 배치되어 있습니다.
스타트 노드는 전체 흐름을 시작합니다.
엔드 노드는 전체 흐름을 종료합니다.
스타트 노드를 더블 클릭하면 노드 편집기가 열리며, 여기에서 자료형과 이름, 설명을 설정할 수 있습니다.
본 튜토리얼에서는 응시자 정보를 기반으로 조건을 분기하므로, 자료형을 JSON으로 두고 변수명을 applicant로 설정합니다. 다시 캔버스로 돌아갑니다.
입력 데이터 샘플

응시자 정보는 json 형식이며, 고유번호(id), 이름(name), 이메일(email), 점수(score), 부서(dept), 회사(company), 비고(note)에 대한 값을 가지고 있습니다.
샘플은 다음과 같습니다.
합격
{
"id": 0,
"name": "A신입",
"email": "test1@genesislab.ai",
"score": 95,
"dept": "웹개발",
"company": "제네시스랩",
"note": ""
}
불합격
{
"id": 1,
"name": "B신입",
"email": "test2@genesislab.ai",
"score": 88,
"dept": "영업",
"company": "제네시스랩",
"note": "예비"
}
예비
{
"id": 2,
"name": "C신입",
"email": "test3@genesislab.ai",
"score": 76,
"dept": "사업기획",
"company": "제네시스랩",
"note": ""
}
3단계: 엣지로 노드 연결

스타트 노드에서 입력받은 변수를 다른 노드에서 사용하기 위해서는 엣지를 사용해 두 노드를 연결해야 합니다.
스타트 노드의 오른쪽 아웃 핀(Out-Pin)을 파이썬 노드의 왼쪽 인 핀(In-Pin)과 연결합니다.
이렇게 하면 스타트 노드의 입력값이 파이썬 노드로 전달됩니다.
다음 노드를 사용하기 위해서는 반드시 엣지를 연결하여 데이터 흐름을 만들어야 합니다.
4단계: 파이썬 노드 - 조건 만들기

파이썬 노드를 더블클릭하면 노드 편집기가 열립니다.
먼저, 아웃풋 변수명을 result로 변경합니다.
파이썬 노드는 간단한 프롬프트만으로 코드를 만들 수 있는 코드 생성기(Code Generator)를 지원합니다.
프롬프트 예시:
aplicant 정보에서 score값이 90 이상 100이하면 '합격', 90 미만이면 '불합격'으로 결과값 내는 코드를 생성하세요. 이때, note에 '예비' 값이 있는 경우는 '예비'라는 결과를 가져야 합니다.
5단계 : 브랜치 노드 - 조건에 따라 분기하기

브랜치 노드는 조건에 따른 분기 처리를 지원합니다.
파이썬 노드에서 코드나 함수 기능으로 조건을 분기할 수도 있지만 브랜치 노드를 사용하면 더욱 직관적인 워크플로를 구성할 수 있습니다.
또한 런테스트(Run Test) 시 동작 로직을 확인할 수 있어 디버깅(Debugging)이 용이합니다.
브랜치 노드는 조건식(Condition)을 만들어 사용합니다.
필요 시 Else 조건식을 사용할 수 있습니다.
본 튜토리얼은 합격(pass), 불합격(fail), 예비(pre) 로 조건식을 설정합니다.
조건식 제목을 변경해서 사용하면 편리합니다.
Else 조건문은 사용하지 않습니다.
result== ‘합격’result== ‘불합격’result== ‘예비’

조건식을 작성하면 조건식의 개수에 따라 브랜치 핀(Branch-Pin)이 노출됩니다.
각 핀에 마우스를 올려 조건식 제목을 확인하고 LLM 노드에 연결합니다.
편의를 위해 LLM 노드의 제목과 설명도 수정합니다.
Pass : 합격자용
Fail : 불합격자용
Pre : 예비합격자용
6단계 : LLM 노드 - 메일 내용 생성하기
6-1) 합격자용 메일

합격자용 LLM 노드 시스템 프롬프트 영역에 메일 생성에 관한 지침 사항을 작성합니다.
아웃풋은 JSON 형식의 passMail로 선언합니다.
합격 메일 예시:
당신은 채용 담당자입니다. 합격자에게 보낼 합격 메일을 작성하세요.
6-2) 불합격자용 메일

불합격자용 LLM 노드 시스템 프롬프트 영역에 메일 생성에 관한 지침 사항을 작성합니다.
아웃풋은 JSON 형식의 failMail로 선언합니다.
불합격 메일 예시:
당신은 채용 담당자입니다. 불합격자에게 보낼 합격 메일을 작성하세요.
6-3) 예비 합격자용 메일

예비 합격자용 LLM 노드 시스템 프롬프트 영역에 메일 생성에 관한 지침 사항을 작성합니다.
아웃풋은 JSON 형식의 preMail로 선언합니다.
예비 합격 예시:
당신은 채용 담당자입니다. 예비 합격자에게 보낼 합격 메일을 작성하세요.
7단계: 데이터 병합

브랜치 노드를 통해 분기 처리한 데이터를 하나로 합쳐야 합니다.

아웃풋은 json 형식의 mailContext으로 선언하고 파이썬 코드 생성기로 코드를 생성합니다.
프롬프트 예시:
passMail, failMail, preMail을 merge하는 코드를 작성하세요.
변수 안에 데이터가 없는 경우 무시하세요.
이를 하나의 json인 emailContext로 출력하세요.
8단계: 메일 형식으로 파싱

7단계에서 한번에 파싱까지 진행할 수도 있지만 더욱 명확한 워크플로 구성을 위해 새로운 파이썬 노드로 파싱 작업을 수행합니다.
아웃풋 변수고 String 타입의 To, Message, Subject를 추가합니다.
코드 생성기에 프롬프트를 입력하여 코드를 생성합니다.
예시:
emailContext에서 값을 파싱해 아웃풋 변수에 할당합니다.
email의 값을 To 변수에,
message의 값을 Message 변수에,
subject의 값을 Subject 변수에 할당합니다.
9단계: 지메일 노드 추가 (선택)

지메일 노드를 추가하면 실제 메일을 전송할 수 있습니다.
지메일 노드 튜토리얼을 참고하여 메일 전송 자동화 워크플로를 구성합니다.
본 튜토리얼은 값 출력 단계만 진행합니다.
10단계: 어빌리티 테스트로 워크플로 전체 실행

캔버스 우측 하단에서 테스트 실행(RUN TEST) 버튼을 클릭하여 완성된 전체 워크플로를 실행할 수 있습니다.
입력창에 샘플 데이터 중 하나를 선택해 입력합니다.
결과가 잘 나온다면 워크플로가 제대로 구성된 것입니다.
다음 단계

🎉 축하합니다! 에이전트리아를 사용해 ‘조건에 따른 메일 생성’ 워크플로를 완성했습니다.
이제 다양한 메일 형식을 적용해 결과를 확인해 보고, 노드를 추가하며 워크플로를 확장해 보세요.
에이전트리아는 아이디어를 현실로 바꾸는 가능성의 공간입니다.
당신의 상상력으로 워크플로는 무한히 확장될 수 있습니다.