Prompt flow Flows — Flex flow와 DAG flow

Prompt flow Flows

LLM 앱은 본질적으로 LLM·DB·검색엔진 같은 외부 서비스 호출과 중간 데이터 처리가 이어진 것이에요. Prompt flow는 이를 flow라는 단위로 표현하고, 두 가지 형태를 제공해요.

Flex flow

파이썬 함수나 클래스를 진입점으로 해서 앱 로직을 캡슐화하는 방식이에요. 순수 코드로 바로 테스트할 수 있고, flow.flex.yaml을 정의하면 Prompt flow VS Code 확장으로 테스트·실행·트레이스 조회까지 가능해요.

장점은 빠른 시작, 파이썬 제어 연산자(if-else, foreach)로 복잡한 오케스트레이션, 기존 LangChain·Semantic Kernel 코드를 몇 줄로 온보딩할 수 있다는 점이에요.

DAG flow

LLM 앱을 함수 호출의 **방향성 비순환 그래프(DAG)**로 정의하는 방식이에요. 함수(여기선 tool)들이 입출력 의존성으로 연결되고, prompt flow executor가 토폴로지에 따라 실행해요. flow.dag.yaml로 표현돼요.

장점은 낮은 코드: UI에서 드래그앤드롭으로 앱을 만들고, DAG 뷰로 로직 구조를 쉽게 이해할 수 있다는 점이에요.

flow 타입

  • Standard flow / Chat flow — LLM 앱 개발용. Chat flow는 chat_history·chat_input·chat_output을 정의해 대화형 개발 경험을 주고 샘플 채팅 앱도 제공해요.
  • Evaluation flow — 표준/챗 flow의 출력에 대해 메트릭(정확도, 사실 기반 여부 등)을 계산해 성능을 판단해요.

더 알아보기