[논문 리뷰] PromptChainer: Chaining Large Language Model Prompts through Visual Programming
PromptChainer는 비전문가가 대규모 언어 모델(Large Language Model, LLM) 프롬프트 체인을 상호작용적이고 노드 기반 워크플로우를 통해 작성하고 디버깅할 수 있도록 해주는 시각적 프로그래밍 인터페이스입니다. 데이터 변환 지원, 함수 서명 정의, 세밀한 디버깅을 통해 복잡한 LLM 애플리케이션 프로토타이핑의 투명성과 제어력을 크게 향상시킵니다.
While LLMs can effectively help prototype single ML functionalities, many real-world applications involve complex tasks that cannot be easily handled via a single run of an LLM. Recent work has found that chaining multiple LLM runs together (with the output of one step being the input to the next) can help users accomplish these more complex tasks, and in a way that is perceived to be more transparent and controllable. However, it remains unknown what users need when authoring their own LLM chains -- a key step for lowering the barriers for non-AI-experts to prototype AI-infused applications. In this work, we explore the LLM chain authoring process. We conclude from pilot studies find that chaining requires careful scaffolding for transforming intermediate node outputs, as well as debugging the chain at multiple granularities; to help with these needs, we designed PromptChainer, an interactive interface for visually programming chains. Through case studies with four people, we show that PromptChainer supports building prototypes for a range of applications, and conclude with open questions on scaling chains to complex tasks, and supporting low-fi chain prototyping.
연구 동기 및 목표
- 비AI 전문가를 위한 LLM 체인 작성 시 발생하는 핵심 과제를 특정하고 해결하기 위해.
- 사용자가 체인 단계 간의 중간 LLM 출력을 변환할 수 있도록 지원하기 위해.
- LLM의 불안정성으로 인한 누적 오류에 대응해 다단계 디버깅을 가능하게 하기 위해.
- 시각적 프로그래밍이 LLM 기능 이해와 작업 분해에 대한 정신 모델을 어떻게 지원할 수 있는지 탐색하기 위해.
- 완전한 프롬프트 엔지니어링에 앞서 저해상도 프로토타이핑을 지원하기 위해.
제안 방법
- 노드-에지 관계를 구조화하기 위한 체인 뷰와 개별 LLM 프롬프트 편집을 위한 노드 뷰를 갖춘 시각적 인터페이스 설계.
- 각 LLM 노드에 함수 서명을 구현하여 입력/출력 형식을 표준화하고 컴포지션 능력을 향상시키기 위해.
- 종단 간 실행 및 선택적 노드 실행을 지원하여 점진적 테스트와 디버깅을 가능하게 하기 위해.
- LLM에서 네이티브로 지원되지 않는 데이터 변환 및 후처리 작업을 처리하기 위해 자바스크립트 헬퍼 노드 통합.
- 입력이 체인 전반에 걸쳐 어떻게 전파되는지 추적할 수 있도록 실행 시각화 및 추적 기능 제공.
- 프로토타이핑 단계에서 자리표시자 노드를 사용하고 개발 중에 프롬프트를 반복적으로 개선할 수 있도록 지원하기 위해.

실험 결과
연구 질문
- RQ1비전문가 사용자가 복잡한 작업을 위한 LLM 프롬프트 체인을 작성할 때 겪는 주요 과제는 무엇인가요?
- RQ2시각적 프로그래밍 인터페이스는 다수의 LLM 단계 간 데이터 변환과 디버깅을 어떻게 지원할 수 있나요?
- RQ3인터랙티브 피드백은 체인 개발 중 LLM 프롬프트 개선에 어떤 역할을 하나요?
- RQ4LLM을 사용해 프로토타이핑할 때 사용자는 작업 분해와 체인 구조 설계를 어떻게 접근하나요?
- RQ5초기 노력 최소화를 위해 LLM 체인의 저해상도 프로토타이핑을 지원하기 위해선 어떤 지원이 필요한가요?
주요 결과
- 사용자들은 LLM의 한계를 극복하기 위한 목적 외에도, 프로토타입의 확장성과 유지보수성을 높이기 위해 체인을 구축했습니다.
- 참가자들은 인터페이스와 상호작용하면서 기존의 프롬프트를 자주 개선했으며, 이는 노드 간 상호작용을 관찰함으로써 프롬프트 동작 방식에 대한 이해가 재구성되었음을 시사합니다.
- 자바스크립트 헬퍼 노드의 사용은 프롬프트만으로는 신뢰성 있게 달성하기 어려운 후처리 작업(예: 스토리에 'The End' 추가)을 효과적으로 가능하게 했습니다.
- 병렬적이고 상호의존적인 서브작업이 포함된 체인에서는 누적 오류와 일관성 문제(예: 스토리 생성 시 일관되지 않은 서사 흐름)가 나타났습니다.
- 특히 엔티티 추출과 같이 다중 출력을 생성하는 노드가 포함된 복잡한 체인에서는 입력-출력 매핑 추적에 애매함이 발생했으며, 이는 향상된 추적 기능이 필요함을 시사합니다.
- 사용자들은 다양한 전략을 사용했으며, 일부는 단계별로 체인을 구축하고, 다른 일부는 먼저 전체적인 구조를 스케치하는 방식이었으며, 이는 체인 작성에 대한 다양한 정신 모델이 존재함을 보여줍니다.

더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.