Chaoses-Ib/ComfyScript

A Python frontend and library for ComfyUI

해결하는 문제

ComfyScript는 ComfyUI를 위한 Python 기반 인터페이스를 제공하여 기존의 그래프 기반 노드 GUI를 읽기 쉬운 Python 코드로 대체합니다. 이는 복잡한 워크플로우를 비교, 재사용 및 버전 관리하는 데 발생하는 어려움을 해결하며, 시각적 에디터에서는 구현하기 어려운 루프 및 사용자 정의 함수와 같은 표준 프로그래밍 구조의 사용을 가능하게 합니다.

작동 방식

로컬에서 실행하거나 원격 ComfyUI 서버에 연결할 수 있는 프론트엔드 및 라이브러리 역할을 합니다. 기존 ComfyUI JSON 워크플로우를 Python 스크립트로 변환하는 트랜스파일러와 이러한 스크립트가 ComfyUI 노드를 Python 함수처럼 실행할 수 있도록 하는 런타임을 포함합니다. 또한 VS Code와 같은 에디터에서 자동 완성 및 타입 체크를 제공하기 위해 타입 스텁을 생성합니다.

대상 사용자

  • 개발자 및 연구자: ComfyUI 노드를 ML 연구를 위한 함수 라이브러리로 사용하거나 더 큰 Python 프로젝트에 통합하려는 사용자.
  • 파워 유저: 시각적 노드 그래프보다 코딩을 선호하거나 루프를 사용하여 대규모 워크플로우를 프로그래밍 방식으로 생성해야 하는 사용자.
  • LLM 개발자: LLM이 복잡한 JSON 구조보다 Python 코드를 더 잘 처리하기 때문에, LLM이 워크플로우를 생성하도록 훈련시키고자 하는 사용자.

주요 특징

  • 워크플로우 트랜스파일: ComfyUI Web UI 워크플로우를 사람이 읽을 수 있는 Python 코드로 자동 변환합니다.
  • 프로그래밍 방식 제어: Python 로직(루프, 조건문)과 ComfyUI 노드를 혼합하여 사용할 수 있습니다.
  • 개발자 경험: 체크포인트 및 임베딩에 대한 타입 스텁과 Python 열거형을 제공하여 IDE 자동 완성을 지원합니다.
  • 유연한 실행: 비동기 작업 큐잉을 포함하여 로컬 및 원격 서버 실행을 모두 지원합니다。
  • UI 통합: ipywidgets 및 Solara와 호환되어 이미지 생성을 위한 맞춤형 Python 기반 인터페이스를 생성할 수 있습니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트