
최근 Gradio 팀이 오픈소스 파이썬 라이브러리 Daggr를 공개했습니다. "AI 앱을 코드로 연결하고, 중간 과정을 시각적으로 확인한다"는 메시지가 개발자들 사이에서 빠르게 퍼지는 중이죠1. 이 글에서는 Daggr가 왜 필요한지, 무엇이 다른지, 어떤 상황에서 특히 빛나는지까지 한 번에 정리해봅니다.
Daggr란? "파이프라인이 안 보인다"는 고질병의 해답
LLM 앱을 만들다 보면 파이프라인이 금방 길어집니다. 전처리 한 번, RAG 검색 한 번, 모델 호출 한 번, 후처리 한 번... 그런데 문제는 "어디서부터 망가졌는지"가 로그만으로 잘 안 보인다는 겁니다. 뒤쪽 노드에서 터지면 앞 단계를 전부 다시 돌려야 하고, 그 사이에 입력이 어떻게 변했는지도 흐릿해져요.
Daggr는 이런 답답함을 그래프(DAG) 형태로 설계하게 하고, 각 단계(노드)의 입력/출력과 중간 상태를 브라우저 캔버스에서 바로 확인할 수 있게 해줍니다2. 중요한 건 '예쁜 다이어그램'이 아니라, 디버깅에 필요한 "증거"가 노드마다 남는다는 점입니다.
코드 퍼스트 + 시각화: 드래그앤드롭 도구의 장단점을 절충
워크플로우 빌더는 보통 두 부류로 나뉩니다. GUI 기반은 시작이 쉽지만, 버전 관리나 재현성에서 아쉬울 때가 많습니다. 반대로 코드 기반은 유연하지만, 복잡해질수록 흐름을 머릿속으로만 따라가야 하죠.
Daggr는 이 둘을 섞습니다. 설계는 파이썬 코드로 하고, 그 결과를 자동으로 시각화합니다2. 즉, "화면이 진실"이 아니라 "코드가 진실"이고, 화면은 그 진실을 빠르게 검증하는 돋보기 역할을 합니다. 팀에서 PR 리뷰할 때도 코드로 히스토리가 남고, 필요할 때는 캔버스로 현미경 관찰을 하는 구조예요.
노드 3종 세트가 만드는 조합 폭발: Gradio·함수·호스팅 모델
Daggr의 재미는 "무엇을 노드로 삼느냐"에서 시작합니다. 대표적으로 세 가지가 핵심입니다23.
GradioNode는 이미 존재하는 Gradio 앱/허깅페이스 Spaces를 블록처럼 가져와 이어붙일 수 있게 해줍니다. 팀 내 데모를 그대로 파이프라인 부품으로 재활용하는 느낌이죠.
FnNode는 일반 파이썬 함수를 감싸서 전처리/후처리, 라우팅, 검증 로직을 끼워 넣는 데 유용합니다. "모델 호출 전 JSON 스키마로 한 번 걸러내기" 같은 현실적인 방어막을 만들기 좋습니다.
InferenceNode는 허깅페이스 인퍼런스 프로바이더로 제공되는 모델을 어댑터 크게 고민하지 않고 연결하는 쪽에 강점이 있습니다. 로컬 GPU가 없어도 빠르게 실험 파이프라인을 꾸릴 수 있다는 뜻입니다.
게다가 ItemList처럼 "리스트를 아이템 단위로 흩뿌렸다가 다시 모으는" 패턴도 지원해서, 여러 후보 프롬프트를 병렬로 돌리고 결과를 합치는 실험에도 잘 맞습니다3.
"다시 실행 지옥"을 끊는 상태 저장과 노드 단위 재실행
복잡한 체인에서 가장 짜증나는 순간은 이거죠. "마지막 단계에서 에러 → 처음부터 다시." Daggr는 워크플로우 상태, 캐시된 결과, 입력값, 캔버스 레이아웃까지 자동 저장하는 쪽을 강하게 밀고 있습니다2. 그래서 특정 노드만 입력을 바꿔 재실행하면서, 실패 지점을 좁혀갈 수 있습니다.
다만 현재 Daggr는 가볍고 실험적인 베타 성격이 강합니다. API 변경 가능성이 있고, 업데이트 과정에서 로컬 상태가 날아갈 수 있다는 경고도 있어요2. 결론적으로 "프로덕션 오케스트레이션"이라기보다, 개발·프로토타이핑·디버깅 가속기에 더 가깝다고 보는 편이 안전합니다. (Airflow/Dagster 같은 데이터 오케스트레이션과는 목표 지점이 다릅니다.)
시사점
Daggr는 한 문장으로 요약하면 "플로우 엔지니어링 시대의 확대경"입니다. 코드는 그대로 두고, 그 코드가 만드는 흐름을 화면으로 펼쳐 보여주니, 체인이 길어질수록 가치가 커집니다.
실용적으로는 작은 구간부터 써보는 게 좋습니다. 예를 들어 RAG 파이프라인에서 "검색 결과가 왜 답변에 반영되지 않았지?" 같은 문제가 반복된다면, 해당 구간만 Daggr로 잘라 시각화해보세요. 눈에 안 보이던 데이터 누락과 형식 불일치가, 의외로 노드 한 칸 옆에서 바로 드러나는 경우가 많습니다.
참고
1Introducing Daggr: Chain apps programmatically, inspect visually
2Daggr Introduced as an Open-Source Python Library for Inspectable AI Workflows
이 노트는 보도·비평·교육·연구 목적으로 작성되었습니다. 저작권 문의가 있으시면 에서 알려주세요.
