Basic (기본)
Start
플로우 시작점. 사용자 입력을 받아 다음 노드로 전달합니다.
모든 플로우에 반드시 하나 이상 필요합니다.
플로우 변수(Variables)를 정의할 수 있습니다.
End
플로우 종료점. 이전 노드의 처리 결과를 사용자에게 반환합니다.
Action Type을 설정하여 Passthrough, Response(프롬프트 기반 최종 응답), Error 모드를 선택할 수 있습니다.
Agent
등록된 에이전트를 실행합니다. KBSphere(향상된 RAG) 또는 DBSphere(데이터베이스) 모드의 에이전트도 지원됩니다.
Model
에이전트 없이 LLM 모델을 직접 호출합니다. 간단한 텍스트 처리(요약, 번역, 분류 등)에 적합합니다.
Control Flow (제어 흐름)
Condition
조건에 따라 플로우를 True/False로 분기합니다. 11종의 조건 타입을 지원합니다.
Router
다중 경로 라우팅. 여러 Route를 정의하고 조건에 따라 분기합니다.
Aggregator
병렬로 처리된 여러 출력을 하나로 결합합니다. Collect, Merge, Concat, Sum 등 다양한 결합 방식을 지원합니다.
Advanced (고급)
Human Input
플로우 실행 중 사용자의 승인 또는 입력을 대기합니다. Approval, Text Input, Multiple Choice 모드를 지원합니다.
Subflow
다른 플로우를 임베드하여 실행합니다. 재사용 가능한 파이프라인을 중첩할 수 있습니다.
Transform
데이터를 변환합니다. Extract Field(특정 데이터 추출)와 Format Text(템플릿 기반 텍스트 생성) 두 가지 모드를 제공합니다.
Safety (안전)
Guardrail
가드레일을 적용하여 통과(Pass) 또는 차단(Block)으로 분기합니다.
Block Action 설정으로 차단 시 동작을 제어합니다.
Error Handler
플로우 실행 중 발생한 오류를 처리합니다. 오류 발생 시 대체 경로를 제공합니다.
Integration (통합)
Notification
Email, Slack, Microsoft Teams, Discord로 알림을 발송합니다.
노드 상세 설정
Start 노드
Start 노드
플로우의 시작점입니다. 사용자 메시지가
변수 타입:
input으로 전달됩니다.| 설정 | 설명 |
|---|---|
| Label | 노드 표시 이름 |
| Variables | 플로우 전체에서 사용할 변수 정의 (이름, 타입, 기본값) |
String, Number, Boolean, Array, ObjectEnd 노드
End 노드
플로우의 종료점입니다. 이전 노드의 결과를 사용자에게 반환합니다.
Response 모드에서는 추가로 Final Response Prompt와 Model for Response를 설정할 수 있습니다.
프롬프트에서
| 설정 | 설명 |
|---|---|
| Label | 노드 표시 이름 |
| Action Type | Passthrough(결과 그대로 반환), Response(프롬프트 기반 최종 응답 생성), Error(에러 메시지 반환) |
{input}, {output}, {sources} 및 State Key 변수를 참조할 수 있습니다.Agent 노드
Agent 노드
등록된 에이전트를 실행합니다. KBSphere(향상된 RAG) 또는 DBSphere(데이터베이스) 모드의 에이전트도 지원됩니다.
| 설정 | 설명 |
|---|---|
| Agent | 실행할 에이전트 선택 |
| User Prompt | 에이전트에 전달할 사용자 프롬프트. {input}, {state_key} 등 변수 참조 가능 |
- KBSphere 에이전트를 사용하면 검색된 문서 출처가 함께 반환됩니다
- DBSphere 에이전트를 사용하면 SQL 실행 결과가 포함됩니다
Model 노드
Model 노드
에이전트 없이 LLM 모델을 직접 호출합니다. 간단한 텍스트 처리(요약, 번역, 분류 등)에 적합합니다.
Output Fields를 정의하면 모델 응답이 JSON 형태로 구조화됩니다.
필드를 추가하지 않으면 일반 텍스트 응답이 반환됩니다.
| 설정 | 설명 |
|---|---|
| Model | 사용할 LLM 모델 선택 |
| System Prompt | 모델에 전달할 시스템 지시사항 |
| User Prompt | 사용자 프롬프트. {input}, {state_key} 등 변수 참조 가능 |
| Output Fields | JSON 구조화 출력 필드 정의 (필드명, 타입, 설명). 하류 노드에서 참조 가능 |
Condition 노드
Condition 노드
조건에 따라 플로우를 분기합니다. True와 False 두 개의 하단 출력 핸들을 가집니다.
지원하는 조건 타입 (11종):
| 설정 | 설명 |
|---|---|
| State Key | 조건 평가 대상 선택 (드롭다운). input(사용자 메시지) 또는 상류 노드의 State Key |
| Condition Type | 11종의 조건 타입 중 선택 |
| Value | 비교할 값 (Is empty, Is not empty 제외) |
| 조건 타입 | 설명 |
|---|---|
Contains | 특정 텍스트 포함 여부 |
Does not contain | 특정 텍스트 미포함 여부 |
Equals | 정확히 일치 여부 |
Not equals | 불일치 여부 |
Starts with | 특정 텍스트로 시작 여부 |
Ends with | 특정 텍스트로 끝나는 여부 |
Greater than | 값이 더 큰지 비교 |
Less than | 값이 더 작은지 비교 |
Is empty | 값이 비어있는지 확인 |
Is not empty | 값이 비어있지 않은지 확인 |
Regex match | 정규식 패턴 매칭 |
Router 노드
Router 노드
다중 경로 라우팅을 수행합니다. 최소 2개의 Route를 정의하며, 각 Route에 조건을 설정할 수 있습니다.
각 Route의 Condition도 Condition 노드와 동일한 11종 타입을 지원합니다.
| 설정 | 설명 |
|---|---|
| State Key | 라우팅 평가 대상 선택 |
| Routes | 각 경로의 Label, Branch Key, Condition 설정 |
| Default Route | 어떤 조건도 매칭되지 않을 때 사용할 기본 경로 |
Aggregator 노드
Aggregator 노드
병렬로 처리된 여러 출력을 하나로 결합합니다.
Advanced Settings에서 Output Name(State Key)과 Merge Mode를 추가 설정할 수 있습니다.
| 설정 | 설명 |
|---|---|
| How to Combine | Collect all as list, Merge into one object, Join as text, Add numbers, Use first only, Use last only, Custom |
| When to Proceed | After all complete, After any one completes, After N complete |
| Timeout | 대기 시간 제한 (초) |
Human Input 노드
Human Input 노드
플로우 실행 중 사용자의 입력이나 승인을 대기합니다.
Advanced Settings에서 Timeout, Required 여부, Output Name, Default Value를 설정할 수 있습니다.
| 설정 | 설명 |
|---|---|
| Input Type | Approval (Yes/No), Text Input, Multiple Choice |
| Prompt Message | 사용자에게 표시할 메시지 |
| Choices | Multiple Choice 선택 시, 선택지 목록 (Label + Value) |
Subflow 노드
Subflow 노드
다른 플로우를 임베드하여 실행합니다. 현재 편집 중인 플로우는 선택 목록에서 제외됩니다.
Advanced Settings에서 Output Name(State Key)을 설정할 수 있습니다.
| 설정 | 설명 |
|---|---|
| Select Flow | 임베드할 플로우 선택 |
Transform 노드
Transform 노드
데이터를 변환합니다. Extract Field와 Format Text 두 가지 모드를 제공합니다.
Extract Field 모드:상류 노드의 State Key 중 하나를 선택하여 그대로 전달합니다.
Format Text 모드:
| 설정 | 설명 |
|---|---|
| Transform Type | Extract Field 또는 Format Text |
| Output Key | 변환 결과의 State Key 이름 (기본값: transformed) |
| 설정 | 설명 |
|---|---|
| State Key | 추출할 State Key 선택 (input 또는 상류 노드 출력) |
{state_key} 구문으로 State 값을 조합하여 새 텍스트를 생성합니다.| 설정 | 설명 |
|---|---|
| Output Template | {state_key} 플레이스홀더를 포함한 텍스트 템플릿 |
Jinja2 템플릿은 기본 모드에서 사용되지 않습니다. Advanced Settings에서 “Use Jinja2 Template” 체크박스를 활성화하면
{'{{ state.key }}'} 구문으로 Jinja2를 사용할 수 있습니다.Guardrail 노드
Guardrail 노드
가드레일을 적용하여 입력을 검증합니다. Pass(통과)와 Block(차단) 두 개의 하단 출력 핸들을 가집니다.
출력 핸들:
| 설정 | 설명 |
|---|---|
| Guardrail | 적용할 가드레일 선택 |
| Block Action | 차단 시 동작: Stop(즉시 종료), Message(메시지 표시 후 종료), Continue(Block 출력으로 계속) |
| Blocked Message | Block Action이 Message일 때 표시할 메시지 |
- Pass (녹색, 하단 좌측) — 가드레일 통과 시 다음 노드로 진행
- Block (빨간색, 하단 우측) — Block Action이
Continue일 때만 활성화. 차단 정보와 함께 다음 노드로 진행
guardrail_type(차단 유형)과 guardrail_reason(차단 사유) 필드가 포함됩니다.Error Handler 노드
Error Handler 노드
플로우 실행 중 발생한 오류를 처리합니다. 오류 발생 시 대체 경로를 제공하여 플로우가 중단되지 않도록 합니다.
| 설정 | 설명 |
|---|---|
| Label | 노드 표시 이름 |
Notification 노드
Notification 노드
외부 서비스로 알림을 발송합니다.
Email 선택 시 추가로 To(수신자)와 Subject(제목)를 설정합니다.
| 설정 | 설명 |
|---|---|
| Notification Type | Email, Slack, Microsoft Teams, Discord |
| Message Template | 알림 메시지 내용 (Jinja2 구문 사용 가능) |
