Files
2nd/10_Wiki/Topics/Comfyui/위키 Data lists - ComfyUI 2026-05-20.md
T
koriweb a3f63e56e2 Add ComfyUI wikified docs and youtube extracts; tidy raw→Topics
- 10_Wiki/Comfyui/: ComfyUI docs generated via /wikify
- 00_Raw/_youtube/: /youtube extraction outputs
- Move some 00_Raw originals into 10_Wiki/Topics_meeting; remove empty canvases and stray files

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-20 18:41:10 +09:00

81 lines
4.7 KiB
Markdown

---
id: data-lists---comfyui
title: "Data lists - ComfyUI"
category: "10_Wiki/Topics"
status: "draft"
verification_status: "conceptual"
canonical_id: ""
aliases: []
duplicate_of: ""
source_trust_level: "B"
confidence_score: 0.8
created_at: 2026-05-20
updated_at: 2026-05-20
review_reason: ""
merge_history: []
tags: ["web", "wikify"]
raw_sources: ["https://docs.comfy.org/custom-nodes/backend/lists"]
applied_in: []
github_commit: ""
---
# [[Data lists - ComfyUI]]
## 🎯 한 줄 통찰 (One-line insight)
ComfyUI 서버는 데이터 흐름을 Python 리스트로 관리하며, `INPUT_IS_LIST``OUTPUT_IS_LIST` 속성을 통해 노드 간 데이터의 순차적 처리 및 일괄 처리를 제어한다.
## 🧠 핵심 개념 (Core concepts)
- **Length one processing**: ComfyUI 서버가 데이터를 전달할 때 기본적으로 각 요소를 길이가 1인 리스트로 래핑하여 관리하는 방식.
- **List processing**: 여러 데이터 인스턴스를 하나의 워크플로우에서 순차적 또는 일괄적으로 처리하는 메커니즘.
- **INPUT_IS_LIST**: 노드가 단일 호출로 전체 리스트를 수신하도록 입력 동작을 재정의하는 클래스 속성.
- **OUTPUT_IS_LIST**: 커스텀 노드의 출력 튜플 중 특정 항목이 래핑되지 않고 순차적 처리를 위한 데이터 시리즈로 취급되도록 지정하는 속성.
## 🧩 추출된 패턴 (Extracted patterns)
- **데이터 래핑 구조**: 노드가 출력을 반환할 때 각 요소는 별도의 길이 1인 리스트로 래핑되며, 다음 노드 호출 시 다시 언래핑(unwrapped)되어 전달됨.
- **순차 처리 로직**: 입력 리스트의 길이가 다를 경우, 짧은 쪽은 마지막 값을 반복하여 패딩(padding)하며, `main` 메서드는 각 값에 대해 한 번씩 호출됨.
- **출력 길이 일관성**: 출력 리스트는 항상 가장 긴 입력 리스트와 동일한 길이를 유지함.
## 📖 세부 내용 (Details)
### 1. 데이터 처리 메커니즘
- **기본 동작**: Comfy 서버는 데이터를 Python 리스트 형태로 표현하며, 일반적으로 길이가 1인 상태로 흐름을 유지함. 이는 배치(batch)와는 다른 개념임.
- **패딩 및 반복**: 입력 리스트의 길이가 불일치할 경우, 마지막 값을 반복하여 길이를 맞춤.
### 2. 노드 속성 제어 (Node Attributes)
| 속성 | 타입 | 설명 |
| :--- | :--- | :--- |
| `INPUT_IS_LIST` | `bool` (Class Attribute) | 설정 시(`True`), 노드가 단일 호출로 전체 리스트를 수신하도록 입력 동작을 변경함. |
| `OUTPUT_IS_LIST` | `tuple[bool]` (Class Attribute) | `RETURN_TYPES`와 동일한 길이의 튜플로, 어떤 출력이 순차적 처리를 위한 데이터 시리즈로 취급될지 지정함. |
### 3. ImageRebatch 노드 기술 스펙
커스텀 노드 예시인 `ImageRebatch`의 구성 요소는 다음과 같습니다.
| 필드 | 타입 | 필수/선택 | 제약·설명 |
| :--- | :--- | :--- | :--- |
| `images` | `IMAGE` | 필수 | 입력 이미지 데이터 |
| `batch_size` | `INT` | 필수 | 기본값 1, 범위 1 ~ 4096 |
| `INPUT_IS_LIST` | `bool` | 필수 (Class Attr) | `True`로 설정 시 리스트 형태로 수신 |
| `OUTPUT_IS_LIST` | `tuple[bool]` | 필수 (Class Attr) | `(True, )`로 설정하여 출력 처리 지정 |
| `FUNCTION` | `string` | 필수 (Class Attr) | 실행할 메서드 명 (`rebatch`) |
## ⚖️ 모순 및 업데이트 (Contradictions & updates)
- **배치와 리스트의 차이**: 본문은 배치가 단일 엔트리(예: latents, images의 한 요소)임을 명시하며, 리스트 처리 방식과 혼동하지 않도록 주의를 요구함.
## 🛠️ 적용 사례 (Applied in summary)
- **ImageRebatch 노드**: `INPUT_IS_LIST = True` 설정을 통해 여러 이미지 배치를 리스트로 수신하고, 이를 사용자가 요청한 `batch_size` 크기의 새로운 배치들로 재구성(rebatch)하는 데 사용됨.
## ✅ 검증 상태 및 신뢰도
- **상태:** draft
- **검증 단계:** conceptual
- **출처 신뢰도:** B (Primary Source — 웹사이트 본문 직접 추출)
- **중복 검사 결과:** 신규 생성 (New discovery)
## 🔗 관련 문서 링크 (Related document links)
- [[ComfyUI Server]]: 데이터 흐름과 서버 운영의 기초가 되는 시스템.
- [[List processing]]: 노드 간 데이터를 순차적으로 처리하는 핵심 로직.
- [[INPUT_IS_LIST]]: 입력 데이터의 형태를 결정하는 노드 속성.
- [[OUTPUT_IS_LIST]]: 출력 데이터의 래핑 여부를 결정하는 노드 속성.
- [[ImageRebatch]]: 리스트 처리가 적용된 구체적인 구현 예시.
## 📝 변경 이력 (Change history)
- 2026-05-20: Astra /wikify 로 https://docs.comfy.org/custom-nodes/backend/lists 본문에서 초안 생성.