Skip to main content
이미 LiteLLM Proxy로 지출을 추적하고 있다면, Comfy Router를 pass-through 엔드포인트 하나 더 추가할 수 있습니다. 호출자는 LiteLLM 키를 그대로 사용하고, Comfy API 키는 프록시에 남아 있습니다. Router는 실행당 Comfy 크레딧 가격을 보고하는 모델에 대해, 동기 실행의 비용을 미국 달러로 x-litellm-response-cost 응답 헤더에 보고합니다(비용을 보고하지 않는 실행 참조). LiteLLM은 모든 pass-through 응답에서 이 헤더를 읽어 요청의 지출로 기록하므로, 해당 모델에 대한 가격표를 유지할 필요가 없습니다.
LiteLLM의 내장 fal_ai/ 공급자는 이미지 생성만 지원합니다. 일반 워크로드를 LiteLLM을 통해 라우팅하려면 네이티브 공급자가 아니라 여기에서처럼 pass-through 엔드포인트를 사용하세요.

패스스루 구성

1

Comfy API 키 생성

Comfy 워크스페이스에서 키를 생성하고 LiteLLM Proxy 프로세스에서 사용할 수 있게 하세요:
2

config.yaml에 Router 추가

config.yaml
  • include_subpath: true는 /comfy/v2/models/{provider}/{model}을 https://api.comfy.org/v2/models/{provider}/{model}로 전달하므로, 한 쌍의 항목으로 모든 Router 모델을 처리할 수 있습니다.
  • path와 target은 /v2/models 범위로 유지하세요. 패스스루를 API 루트로 지정하면 LiteLLM 키를 가진 모든 호출자가 LiteLLM의 지출 추적 범위를 벗어나 다른 모든 Comfy API 경로에서 여러분의 Comfy 키를 사용할 수 있게 됩니다.
  • methods는 같은 경로에 있는 두 항목을 구분합니다. 패스스루 엔드포인트가 methods를 지원하는 LiteLLM Proxy 릴리스가 필요합니다. 이 페이지는 v1.103.0을 기준으로 확인했습니다.
  • X-API-Key는 여러분의 comfyui- 키를 전달합니다. Router는 동일한 키를 Authorization: Bearer comfyui-...로도 허용합니다.
  • forward_headers는 꺼두세요. 켜져 있으면 LiteLLM이 호출자의 LiteLLM 키를 포함해 들어오는 모든 헤더를 Router로 전달합니다. 꺼져 있으면 호출자는 Idempotency-Key를 x-pass-Idempotency-Key로 전달합니다. LiteLLM은 x-pass- 접두사를 제거하고 전달합니다. 일반 Idempotency-Key 헤더는 Router에 도달하지 않으므로, 재시도하면 생성이 한 번 더 실행되고 비용이 청구됩니다.
  • timeout은 Router의 실행 기한보다 크게 설정하세요. 그래야 LiteLLM이 포기하기 전에 Router가 자체 504와 요청 ID를 반환할 수 있습니다. 기한은 기본 10분이며, 이는 LiteLLM의 기본 패스스루 타임아웃 600초와 같습니다.
3

프록시를 통해 Router 호출

호출자는 자신의 LiteLLM 키로 인증합니다. 본문은 Comfy Router 레퍼런스에서와 정확히 동일하게 모델 자체의 입력입니다:

지출이 기록되는 방식

비용을 보고하는 동기 실행은 다음과 같은 응답 헤더를 포함합니다:
X-Comfy-Credits-Used는 실행 가격을 Comfy 크레딧으로 나타낸 값이며, 소수점 둘째 자리로 반올림됩니다. X-Litellm-Response-Cost는 반올림되지 않은 크레딧 수량에서 USD로 환산한 같은 가격이므로, 표시된 크레딧을 환산 비율로 나눈 값은 마지막 자릿수에서 이와 다를 수 있습니다. 헤더 이름은 대소문자를 구분하지 않으므로 LiteLLM은 이를 x-litellm-response-cost로 읽습니다. LiteLLM은 전송된 그대로 기록하며, 여러분의 cost_per_request 대신 이 값을 사용합니다. x-litellm-total-tokens는 항상 0입니다. 미디어 실행은 토큰으로 과금되지 않기 때문입니다. X-Comfy-Credits-Used와 마찬가지로, 이 헤더는 정산된 청구 금액이 아니라 가격을 보고합니다. LiteLLM의 합계가 아니라 워크스페이스 청구와 대조해 확인하세요.

비용을 보고하지 않는 실행

일부 실행에는 x-litellm-response-cost가 포함되지 않습니다. X-Comfy-Credits-Used와 동일한 경우에 이 헤더도 존재하지 않습니다:
  • Comfy 크레딧이 아니라 자신의 공급자 키로 청구되는 실행
  • 아직 Router의 실행별 크레딧 가격을 보고하는 모델 목록에 없는 모델. 이 목록은 보수적이며, 일부 공급자는 아예 포함되지 않습니다
  • Comfy 청구에 도달하지 않은 청구
  • 오류 응답
또한 Router가 동일한 Idempotency-Key(프록시를 통해 x-pass-Idempotency-Key로 전송됨)로 재시도할 때 저장된 결과를 재생하는 경우에도 존재하지 않습니다. 해당 재시도에는 다시 요금이 부과되지 않으므로, 재생은 실행의 정확한 비용을 두 번째로 보고하지 않습니다. 헤더가 없으면 LiteLLM은 엔드포인트의 cost_per_request로 대체합니다. 이는 위의 모든 경우에 적용됩니다. 따라서 오류 응답, 자신의 공급자 키로 청구되는 실행, 멱등 재생은 Comfy가 해당 실행에 크레딧을 청구하지 않았음에도 여러분의 추정치로 기록됩니다. 비용을 보고하지 않는 실행이 지출 보고서에서 무료로 보이지 않도록 0 대신 일반적인 실행에 대한 합리적인 추정치로 설정하고, 해당 행들이 LiteLLM의 합계를 Comfy 청구서보다 높게 밀어 올릴 수 있음을 예상하세요. 가격이 책정되었지만 실제로 비용이 전혀 발생하지 않은 실행은 x-litellm-response-cost: 0을 보고하며, LiteLLM은 이를 0으로 기록합니다.

대기 중 전달

대기 중 전달을 사용하면 하나의 생성이 여러 요청으로 LiteLLM에 도달하며, 각 요청은 자체 지출 행이 됩니다. 제출 응답의 status_url, response_url, cancel_url은 절대 https://api.comfy.org/... URL이며, LiteLLM은 응답 본문을 재작성하지 않습니다. https://api.comfy.org를 프록시의 /comfy 접두사로 바꿔서, 예를 들어 http://localhost:4000/comfy/v2/models/...처럼 프록시를 통해 호출하세요. Comfy로 직접 전송하면 LiteLLM 키가 거부됩니다. 실행 대기열 응답에는 아직 x-litellm-response-cost가 포함되지 않으므로, 대기 중인 생성은 정확한 가격이 아니라 추정치로 기록됩니다. 엔드포인트를 방법별로 분할하면 폴링마다 한 번이 아니라 제출 시 한 번만 해당 추정치가 청구됩니다. LiteLLM에서 실행별 정확한 지출을 확인하려면 동기 경로를 사용하세요.

참고 사항

  • LiteLLM은 지출을 기록하지만 청구를 변경하지는 않습니다. Comfy는 프록시가 없을 때와 정확히 동일하게 워크스페이스에 청구합니다.
  • 모든 모델의 전체 요청 및 응답 스키마는 Comfy Router 레퍼런스에 있습니다. 데드라인, 재시도 및 기타 제한은 기능 및 제한에 있습니다.