# 노드와 연결

> 노드가 무엇인지, 노드에 어떤 종류의 입력과 출력이 있는지, 연결이 노드 사이에 결과를 전달하는 방식과 연결 모드가 결과 하나나 목록을 넘기는 방식을 알아보세요.

Source: https://nodaro.ai/ko/docs/concepts/nodes-and-connections

**노드**는 워크플로의 한 단계입니다. 스크립트 작성, 이미지 생성, 동영상과 오디오 병합처럼 한 가지 일을 합니다. **연결**은 한 노드의 결과를 다른 노드의 입력으로 전달하는 선입니다. Nodaro의 모든 워크플로는 이 두 부분으로 만들어지며, 입력과 출력의 종류에 따라 어떤 노드를 연결할 수 있는지가 정해집니다.

## 노드의 작동 방식
노드는 왼쪽 가장자리의 **입력**으로 데이터를 받아 일을 하고, 오른쪽 가장자리의 **출력**으로 **결과**를 넘깁니다. 각 입력에는 이름, 색, 아이콘이 있습니다.

- **헤더**에는 노드의 레이블이 표시됩니다. Nodaro Cloud에서는 노드의 크레딧 가격과, 목록 때문에 노드가 다섯 번 실행될 때의 `x5` 같은 배지도 표시됩니다.
- **본문**에는 프롬프트, 피커의 선택, 최신 결과 같은 노드의 주요 내용이 표시됩니다.
- **노드 아래의 스트립**은 노드를 가리키거나 선택하면 나타납니다. 모델 같은 주요 설정과 **실행** 버튼이 있습니다.

Workflow: 세 종류의 데이터가 세 입력을 거쳐 이미지 생성으로 들어갑니다. 텍스트, 피커 문구, 캐릭터입니다. 이미지 출력은 동영상의 시작 프레임으로 들어갑니다.

- 텍스트 → 이미지 생성 (프롬프트)
- 조명 → 이미지 생성 (룩)
- 캐릭터 에셋 → 이미지 생성 (에셋)
- 이미지 생성 → 동영상 생성 (시작 프레임)

[이미지 생성](https://nodaro.ai/docs/nodes/image/generate-image)처럼 새로운 것을 만드는 노드는 모델을 실행하며 크레딧이 듭니다. [텍스트](https://nodaro.ai/docs/nodes/automate/text), [목록](https://nodaro.ai/docs/nodes/automate/list), [피커](https://nodaro.ai/docs/nodes/creative-controls)처럼 데이터를 담거나 형태만 바꾸는 노드는 무료입니다. [노드 레퍼런스](https://nodaro.ai/docs/nodes)에서 모든 노드를 설명합니다.

## 입력과 출력의 종류
입력이나 출력의 색과 아이콘은 그것이 전달하는 데이터의 종류를 나타냅니다. 연결은 종류가 맞는 출력과 입력 사이에만 만들 수 있습니다.

| 종류 | 색 | 전달하는 것 |
| --- | --- | --- |
| 텍스트 | 파란색 | 프롬프트, 스크립트, 캡션, 그 밖의 모든 텍스트. |
| 이미지 | 분홍색 | 그림: 업로드, 생성된 이미지, 시작 프레임, 레퍼런스. |
| 동영상 | 보라색 | 동영상 클립. |
| 오디오 | 호박색 | 음성, 음악, 효과음. |
| 룩 | 남색 | 조명이나 카메라 선택 같은 [피커](https://nodaro.ai/docs/nodes/creative-controls)의 문구. |
| 에셋 | 연분홍색 | 모든 생성에서 똑같이 유지되는 캐릭터, 장소, 오브젝트, 크리처, 얼굴, 보이스. [에셋과 미디어](https://nodaro.ai/docs/concepts/assets-and-media)를 참고하세요. |
| 네거티브 | 빨간색 | 모델이 피해야 할 것. |
| 얼굴 | 주황색 | 얼굴 노드와 립싱크 노드에 쓰는 얼굴. |
| 마스크 | 자주색 | 바꿀 영역을 표시하는 흑백 마스크. |
| 목록 | 청록색 | 항목 목록이나 표. [목록과 일괄 처리](https://nodaro.ai/docs/concepts/lists-and-batching)를 참고하세요. |
| 모든 유형 | 회색 | 범용 노드에서 쓰는, 두 종류 이상의 데이터. |

비슷한 종류는 같은 계열의 색을 쓰며, 일부 입력은 한 노드 안에서 구별할 수 있도록 고유한 색조를 씁니다. 예를 들어 [동영상 생성](https://nodaro.ai/docs/nodes/video/generate-video)에는 분홍색 **시작 프레임**, 청록색 **종료 프레임**, 보라색 **이미지 레퍼런스**가 있습니다. 헷갈리면 입력 이름을 확인하세요.

- **출력 하나는 입력 여러 개에 연결할 수 있습니다.** [텍스트](https://nodaro.ai/docs/nodes/automate/text) 노드 하나가 이미지 노드 열 개에 같은 프롬프트를 줄 수 있습니다.
- **일부 입력은 연결을 여러 개 받습니다.** 이미지 생성의 **레퍼런스**는 이미지를 여러 장 받습니다. 이런 입력에서는 순서가 중요합니다. 대부분의 모델은 첫 번째 레퍼런스를 가장 중요하게 다룹니다.
- **일부 입력은 선택 사항입니다.** 노드는 필요한 입력만으로 실행됩니다. 예를 들어 동영상 생성은 종료 프레임 없이도 실행됩니다.

## 두 노드 연결
- **출력에서 입력으로 드래그하세요.** 드래그하는 동안 연결을 받을 수 있는 입력이 강조 표시됩니다.
- **빈 캔버스에 연결을 놓으세요.** 그곳에 연결할 수 있는 노드만 담긴 **노드 추가** 메뉴가 열립니다. 고른 노드는 자동으로 연결됩니다.
- **선택한 노드에서 노드를 추가하세요.** 노드를 선택하고 Tab을 누르세요. **노드 추가** 메뉴에서 **자동 연결**이 켜져 있으면, 작은 대화 상자에서 새 노드의 이름을 정하고 연결 방식을 고르거나, <strong>연결하지 않음(추가만)</strong>을 고를 수 있습니다.
- **연결을 옮기세요.** 연결의 끝을 다른 입력으로 드래그하세요.
- **연결을 삭제하세요.** 연결을 클릭하고 Delete를 누르거나, 연결 위에 나타나는 **연결 삭제** 버튼을 클릭하세요.

## 허용되는 연결
- **종류가 맞아야 합니다.** 편집기는 맞지 않는 연결을 거부합니다. 예를 들어 [캐릭터 에셋](https://nodaro.ai/docs/nodes/assets/character) 노드는 **프롬프트** 입력에 연결할 수 없습니다. 선이 깜박이고 연결은 만들어지지 않습니다.
- **순환 금지.** 연결은 앞에 오는 노드로 되돌아갈 수 없습니다. 편집기는 노드에서 자기 자신으로 가는 연결을 포함해, 순환을 만드는 연결을 거부합니다.
- **일부 입력은 모델이 결정합니다.** 고른 모델이 입력을 사용하지 않으면, 그 입력이 흐리게 표시되고 “현재 모델에서 사용되지 않음”이라고 나옵니다. 그 입력에 연결된 것은 실행할 때 무시됩니다.
- **일부 입력에는 최대 개수가 있습니다.** 입력에 모델이 받는 것보다 많은 연결이 있으면, 넘치는 연결에 “모델의 최대 개수를 초과해 현재 모델에서는 사용되지 않습니다”라고 표시됩니다. 순서를 바꾸거나 다른 모델을 고르세요.
- **미디어 입력에는 실제 미디어가 필요합니다.** 동영상 입력에 텍스트가 들어오는 것처럼 노드가 올바른 종류의 파일이 아닌 것을 받으면, 크레딧을 쓰기 전에 실행이 거부됩니다. 메시지에 노드와 받은 값이 표시됩니다.

## 입력의 연결 관리
입력을 클릭하면 연결 메뉴가 열립니다. 메뉴에는 **연결된 항목 없음**, 연결 개수, 또는 모델의 최대 개수 중 몇 개가 연결되었는지가 표시됩니다.

- **포커스**는 연결된 노드를 캔버스 가운데에 놓고, **연결 해제**는 그 연결 하나를 없앱니다.
- 순서가 중요한 입력에서는 행을 끌어 순서를 바꾸세요. 첫 번째 행이 주 입력입니다.
- **선택 사항**에는 여기에 연결할 수 있는 캔버스의 노드가 나열됩니다. **연결**을 클릭해 연결하세요.
- **추가**는 맞는 노드만 담긴 **노드 추가** 메뉴를 열고, **모두 연결 해제**는 모든 연결을 없앱니다.

출력에도 같은 메뉴가 있습니다. 출력을 클릭하면 그 출력을 쓰는 노드를 보고, 더 많은 노드에 연결할 수 있습니다.

## 연결 모드
대부분의 출력은 결과 하나를 전달합니다. 일부는 여러 개를 전달합니다. [목록](https://nodaro.ai/docs/nodes/automate/list), [텍스트 분할](https://nodaro.ai/docs/nodes/automate/split-text), 여러 번 실행한 노드가 그렇습니다. **연결 모드**는 연결을 통해 무엇이 전달될지 정합니다.

| 모드 | 전달되는 것 | 사용할 때 |
| --- | --- | --- |
| **선택됨** | 노드에서 선택된 결과. 보통 가장 최근 결과입니다 | 거의 항상. 기본값입니다. |
| **항목** | `1`, `3`, `last`처럼 위치로 고른 항목 하나 | 목록이나 결과 묶음에서 항상 같은 항목이 필요할 때. |
| **개별** | 모든 항목을 하나씩. 다음 노드가 항목마다 한 번씩 실행됩니다 | 항목마다 결과가 하나씩 필요할 때. 목록과 텍스트 분할에서 나오는 연결의 기본값입니다. |
| **묶음** | 모든 항목을 한꺼번에, 한 번의 실행으로 | 다음 노드가 [동영상 합치기](https://nodaro.ai/docs/nodes/video/combine-videos)나 [오디오 믹스](https://nodaro.ai/docs/nodes/audio/mix-audio)처럼 항목을 합칠 때. 목록으로 들어가는 연결의 기본값입니다. |

**모드를 바꾸세요.** 연결을 클릭해 선택한 다음, 연결 위의 작은 화살표 버튼을 클릭하세요. **출력** 메뉴에 모드 네 개가 나열됩니다. **항목**을 고르면 옆의 상자에 위치를 입력하세요.

**전달할 항목을 고르세요.** **개별**이나 **묶음**에서는 메뉴에 탭 두 개가 추가됩니다.

- **범위**에는 **시작**, **끝**, **간격** 필드 세 개가 있습니다. 예를 들어 **시작** `2`와 **끝** `last`는 첫 항목을 건너뛰고, **간격** `2`는 한 항목씩 걸러 전달합니다.
- **목록**은 짧은 식을 받습니다.

| 입력하는 식 | 전달되는 항목 |
| --- | --- |
| `1` | 1번 항목 |
| `1, 2, last` | 1번, 2번 항목과 마지막 항목 |
| `1..5` | 1~5번 항목 |
| `1..last` | 모든 항목 |
| `1..last-1` | 마지막 항목을 뺀 모든 항목 |
| `1..10:2` | 1, 3, 5, 7, 9번 항목 |
| `last..1:-1` | 모든 항목을 역순으로 |
| `1, 3..5, last` | 1번 항목, 3~5번 항목, 마지막 항목 |

편집기가 읽을 수 없는 식은 빨간색으로 바뀝니다. 이때 연결은 모든 항목을 전달하므로, 오타 때문에 워크플로가 멈추는 일은 없습니다.

**레이블을 확인하세요.** **선택됨** 모드의 연결에는 보통 레이블이 없습니다. 다른 모드에서는 연결 위의 레이블이 `each`나 `bundle`처럼 모드를 나타내고, 두 번째 레이블이 `2..last`처럼 범위를 보여 줍니다.

**크레딧을 확인하세요.** **개별**은 다음 노드의 비용에 항목 수를 곱합니다. 4크레딧짜리 노드에 항목 5개가 들어오면, 그 노드는 이번 실행에 20크레딧이 듭니다. 실행하기 전에 노드의 **실행** 버튼에 합계가 표시됩니다.

## 팁
- **단순하게 시작하세요.** 처리할 목록이 실제로 생기기 전까지는 모든 연결을 **선택됨** 모드로 두세요.
- **한 번에 하나씩 바꾸세요.** 연결이 예상대로 동작하지 않으면 설정 하나를 바꾸고, 노드를 실행하고, 결과를 확인하세요.
- **다음 노드에 맞는 모드를 고르세요.** 하나를 변환하는 노드에는 **개별**이, 여러 개를 합치는 노드에는 **묶음**이, 하나만 고를 때는 **항목**이 맞습니다.
- **반복해서 같은 항목을 고를 때는 항목 모드를 쓰세요.** `1`이나 `last`는 새 실행에서 결과 개수가 바뀌어도 계속 작동합니다.
- **선택을 공유하세요.** 여러 노드에 목록의 같은 부분이 필요하면, 모든 연결에 같은 범위를 정하는 대신 [선택기](https://nodaro.ai/docs/nodes/automate/selector) 노드를 사용하세요.

## 자주 묻는 질문

### Nodaro에서 노드란 무엇인가요?

노드는 이미지 생성이나 동영상과 오디오 병합처럼 한 가지 일을 하는 워크플로의 한 단계입니다. 왼쪽 가장자리의 입력으로 데이터를 받고, 오른쪽 가장자리의 출력으로 결과를 넘깁니다.

### 편집기가 내 연결을 거부하는 이유는 무엇인가요?

각 입력은 일부 종류의 데이터만 받으므로, 예를 들어 동영상은 프롬프트 입력에 들어갈 수 없습니다. 편집기는 순환을 만드는 연결도 거부합니다. 빈 캔버스에 연결을 놓으면 맞는 노드를 볼 수 있습니다.

### 입력과 출력의 색은 무엇을 뜻하나요?

색과 아이콘은 데이터의 종류를 나타냅니다. 텍스트는 파란색, 이미지는 분홍색, 동영상은 보라색, 오디오는 호박색, 피커 문구는 남색입니다. 비슷한 종류는 같은 계열의 색을 쓰므로 입력 이름도 함께 확인하세요.

### “개별” 연결 모드와 “묶음” 연결 모드는 어떻게 다른가요?

“개별”은 목록의 항목마다 다음 노드를 한 번씩 실행하므로, 항목 5개는 결과 5개가 됩니다. “묶음”은 목록 전체를 한 번의 실행으로 다음 노드에 넘기며, 동영상 합치기처럼 항목을 합치는 노드에 알맞습니다.

### 노드의 입력 하나가 흐리게 표시되는 이유는 무엇인가요?

고른 모델이 그 입력을 사용하지 않기 때문입니다. 그 입력에 연결된 것은 노드가 실행될 때 무시됩니다. 그 입력을 지원하는 모델을 고르거나 연결을 없애세요.
