Get Started

Python 노드 사용하기 : 수면시간 계산

Python 노드 사용하기 : 수면시간 계산

Python 노드 사용하기 : 수면시간 계산

입문 가이드의 튜토리얼은 Agentria 입문자를 위한 가장 기본적이면서도 핵심적인 과정을 다룹니다.

본 튜토리얼에서는 기상 시간을 입력하고, Python 노드를 활용해 권장 수면 시간을 역산하여 취침 시간을 계산하는 어빌리티를 직접 만들고 실행합니다.


사전 준비


시작을 위해, Agentria에서 프로젝트를 생성한 후, 어빌리티 에디터 캔버스로 진입합니다.

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


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

  1. 노드 추가하기

  2. Start 노드에서 변수 선언하기

  3. 노드 연결하기

  4. Python 노드에서 코드 작성하기

  5. Python 노드에서 Code Generator 사용하기

  6. Python 노드 출력값을 End 노드로 전달하기

  7. Run Test를 통해 워크플로우 실행 결과 확인하기


1단계: Input 변수 선언하기


Agentria 캔버스에는 기본적으로 Start 노드End 노드가 하나씩 배치되어 있습니다.

이때, Start 노드는 전체 흐름을 시작하는 역할을 하고, End 노드는 전체 흐름을 종료하는 역할을 합니다.

따라서 ‘수면시간 계산’ 워크플로우를 구성하기 위해서는 먼저 Start 노드에서 필요한 변수를 선언해야 합니다.

Input 노드를 더블클릭하면 노드 편집기가 열리며, 여기에서 자료형과 이름, 설명을 설정할 수 있습니다.


본 튜토리얼에서는 기상 시간을 입력값으로 받아야 하므로, 자료형을 String으로 두고 변수명을 WakeUpTime으로 설정하여 변수를 선언하겠습니다.

변수 선언을 완료했다면 다시 에디터 캔버스로 돌아갑니다.


2단계: 드래그 앤 드랍으로 노드 추가하기


이제 수면 시간을 계산할 Python 노드를 추가할 차례입니다.

캔버스 하단의 +Add Node 버튼을 클릭하고, Code 카테고리에서 Python 노드를 드래그 앤 드랍 방식으로 캔버스에 배치합니다.

Python 노드는 직접 코드를 작성하거나, 짧은 프롬프트로 자동 코드 생성을 지원하는 Code Generator 기능을 사용할 수 있습니다.


3단계: 엣지로 노드 연결하기


Start 노드에서 입력받은 WakeUpTime 변수를 Python 노드에서 사용하기 위해서는 두 노드를 연결해야 합니다.

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

Start 노드의 오른쪽 엣지 커넥터(Out-Connector)를 Python 노드의 왼쪽 엣지 커넥터(In-Connector)와 연결하면, 입력값이 Python 노드로 전달됩니다.


4단계: Python 코드 작성하기


Python 노드를 더블클릭하면 노드 편집기가 열립니다.

Input 영역에 WakeUpTime 변수가 표시된다면 두 노드가 정상적으로 연결된 것입니다.

이제 Python 코드 필드에 수면 시간을 계산하는 스크립트를 작성합니다.

예시:




5단계: 드래그 앤 드랍으로 변수 바인딩하기


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

WakeUpTime 변수를 스크립트 첫 번째 줄의 int() 괄호 안에 배치합니다.


6단계: Code Generator 사용하기


프로그래밍에 익숙하지 않아도 괜찮습니다.

Agentria의 Python 노드는 Code Generator를 통해 짧은 프롬프트만으로도 자동 코드를 생성할 수 있도록 지원합니다.

Code Generator 아이콘을 클릭하면 나타나는 프롬프트 편집기에 필요한 코드에 대한 설명을 입력하세요.

Generate 버튼을 눌러 코드를 생성하고, 해당 코드를 사용하고 싶다면 Accept 버튼을 눌러 적용합니다.

예시:




7단계: 노드 테스트 실행하기


코드를 작성한 후, 편집기 내 Input 영역의 TEST 버튼을 눌러 Python 노드 개별 점검을 진행할 수 있습니다.

노드 테스트란 노드 편집기에서 개별적으로 진행할 수 있는 점검 작업입니다.

이를 통해 노드가 올바르게 구성되어있음을 확인하고 다른 노드와 연결하면 오류를 최소화하고 흐름을 안정적으로 이어나갈 수 있습니다.

예를 들어 WakeUpTime에 07을 입력했을 때 다음과 같이 결과가 출력된다면 정상적으로 구성된 것입니다.



8단계: 함수 기능 사용하기


Python 노드에서 함수 기능을 사용하면 조건 분기를 통해 지정된 조건을 충족할 때만 함수를 호출하여 새로운 실행 경로를 만듭니다.

이렇게 하면 노드가 불필요한 연산을 하지 않도록 제한하여 워크플로우의 효율성을 높일 수 있습니다.

함수는 편집기 하단의 + Create Function 버튼을 눌러 선언할 수 있으며, + Add Argument 버튼을 눌러 매개변수를 지정해야 합니다.

함수를 선언하면 그 개수만큼 노드에 함수용 엣지 커넥터가 표시됩니다.

함수에 대한 상세 설명이 필요하다면 []를, 함수를 사용한 튜토리얼을 원한다면 []를 참고하시기 바랍니다.


9단계: End 노드 연결하기


이제 계산된 수면시간 계산 결과값을 End 노드로 전달합니다.

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

End 노드를 더블클릭하여 노드 편집기를 열고, String 타입의 SleepTime 변수를 추가합니다.

Python 노드에서 결과값을 담은 Output 변수를 선택 또는 드래그 앤 드롭 방식으로 SleepTime 변수와 연결합니다.

이로써 ‘수면시간 계산’ 워크플로우가 완성되었습니다.


10단계: Run Test로 워크플로우 전체 실행하기


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

노드 테스트와 마찬가지로 기상 시간을 입력한 뒤 Run test를 실행하면, SleepTime 결과에 권장 취침 시간이 표시됩니다.



다음 단계


🎉 축하합니다! 두 번째 Agentria 워크플로우인 ‘수면시간 계산’을 완성했습니다.

이제 다양한 입력값을 적용해 결과를 확인해보고, Python 코드를 수정하며 워크플로우의 성능을 개선해 보세요.


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

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


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