Paper Review

[Paper Review] AFLOW: Automating Agentic Workflow Generation

dotudy 2025. 5. 23. 17:47

0. Abstract

현 상황

  • LLM은 다양한 도메인에서 복잡한 과제를 수행하기 위해 정교한 지시와 실행 순서를 따르는 agentic workflow 사용
  • workflow 구축 자체로 비용이 들고 이로 인해 확장성과 범용성 제한. 또한 자동화 하려는 시도도 이어지고 있지만 초기 구성 및 설정은 사람이 필요

제안

  • workflow 최적화를 code-represented workflow 그래프 탐색 문제로 재정의
  • AFLOW: Monte Carlo Tree Search(MCTS)를 활용해 workflow 공간을 효율적으로 탐색하는 자동화 framework
  • 코드 수정, 트리 구조에서 탐색 결과 누적, 실행 결과 기반 피드백을 통해 workflow 반복 개선

실험 결과

  • 6개 benchmark 실험에서 SOTA 방법보다 평균 5.7% 높은 성능을 보임.
  • 소형 모델이 GPT-4o보다 성능이 더 좋게 만들 수 있으며 그 비용은 GPT-4o의 4.55%밖에 되지 않음.

1. Introduction

  • 대부분 사람이 만든 agentic workflow에 의존 → 새로운 도메인에 대한 적응성과 확장성이 떨어짐.
  • AFLOW: workflow를 LLM 노드들의 그래프로 모델링 → 검색 공간을 MCTS로 효율적으로 탐색해서 최적 workflow 자동 생성
  • 핵심 아이디어:
    • Operator: 자주 쓰이는 agentic 행동을 묶은 재사용 가능한 노드 조합
    • MCTS 기반 워크플로우 탐색 과정: 무한에 가까운 탐색 공간을 MCTS로 효율적으로 탐색
  • 주요 기여:
    • Problem Formulation: 워크플로우 수준, 노드 수준 최적화를 모두 다룰 수 있는 통합 프레임워크 기반 제시
    • AFLOW: MCTS 기반의 자동 워크플로우 발견 시스템
    • Extensive Evaluation: HumanEval, MBPP, MATH, GSM8K, HotPotQA, DROP 6개의 대표 벤치마크에서 평가한 결과 작은 LLM이 GPT-4o보다 나은 성능을 달성한 경우도 발견하였고 비용 대비 성능이 매우 우수함.

2. Related Work

3. Preliminary

3.1절에서는 자동화된 에이전트형 워크플로우 생성 문제를 수학적으로 정의하고 3.2절에서는 AFLOW 설계 시 고려된 구조적 요소와 주요 설계 선택 사항들에 대해 설명함.

 

 

3.1 Problem Formulation

Agentic Workflow

$$N$$: LLM 호출 단위 작업인 노드의 집합 / $E$: 작업 간 연결, 흐름 구조인 엣지 집합

$$N_i$$: LLM이 수행하는 하나의 작업 단위

하나의 노드가 아래의 네 가지로 코드 추상화됨.

• Model $$M$$ : The specific language model invoked at node $$N_i$$. • Prompt $$P$$ : The input or task description provided to the model at each node. • Temperature $$τ$$ : A parameter controlling the randomness of the LLM’s output at node $$N_i$$. • Output format $$F$$ : The format in which the model’s output is structured (e.g., xml, json, markdown, raw). The node in workflow should provide different output formats.

엣지 $$E$$는 어떤 순서로, 어떤 조건하에 다음 노드가 실행되는지 결정

엣지 표현 방식:

  • Graph: 계층 구조, 분기, 병렬 흐름 등 유연한 제어 가능
  • Neural Network: 동접 입력/피드백 기반 비선형 제어 구조
  • Code: if/else, loop, 함수 호출 등 가장 세밀한 제어 가능(그래프/NN구조 포함 가능)

Graph 구조로 워크플로우 관계를 표현할 수는 있지만 단순한 DAG만으로는 부족하고 Petri ents, BPMN과 같은 복잡한 확장 구조가 필요함.

Neural Network 기반 워크플로우는 입력에 따라 동적으로 전이할 수 있지만 실행 흐름을 정밀하게 통제하기 어려움. (if/else, loop 등 명시적 제어 불가)

Code 기반 워크플로우는 모든 구조적 관계를 표현할 수 있음.

따라서 AFLOW는 코드 표현 기반을 사용하여 workflow 제어함.

Automated Workflow Optimization

어떤 작업 $$T$$가 주어졌을 때 그 작업에 대해 성능을 가장 높이는 워크플로우 $$W$$를 찾고 싶음.

탐색 공간: $$S = {(\mathcal{N}, E)}$$ - 워크플로우 탐색 공간 $$S$$는 가능한 모든 노드와 엣지의 조합

노드의 집합: $$\mathcal{N} = {N (M, τ, P, F )}$$

문제 공식화: $$W = A(S, G, T)$$

$$A$$: 탐색 알고리즘(AFLOW에서는 MCTS)

$$S$$: 탐색 공간 (가능한 모든 워크플로우 구성)

$$G(W, T)$$: 성능 평가 함수(ex: 정확도, 비용-성능비 등)

$$T$$: 주어진 작업(QA, Code, Math 등)

최적 워크플로우 정의

$$W^* = argmax_{W\in S}G(W,T)$$

전체 공간 $$S$$에서 $$G(W, T)$$를 최대화하는 $$W$$를 찾는 것이 목표!

 

 

3.2 AFLOW Overview

Limitations of Previous Methods

기존 워크플로우 최적화 기법들은 탐색 공간 자체가 작아서 최적인 워크플로우를 발견하지 못함.

→ 코드 기반의 거대한 탐색 공간 전체를 대상으로 하고 이를 효율적으로 탐색할 수 있는 MCTS 기반 탐색 구조를 도입함.

Formulation

AFLOW 구조:

탐색(Explore): 새로운 워크플로우 구조 제안 (LLM이 코드 구조 생성)

실행(Evaluate): 해당 워크플로우로 task를 실행하고 성능 측정

경험 전달(Backpropagate): 실행 결과를 기반으로 트리 업데이트 → 더 나은 방향으로 탐색 유도

탐색 효율을 높이기 위해 탐색 공간 단순화

  1. 파라미터들을 고정값으로 둬서 prompt와 edge 중심으로 탐색할 수 있도록 함.
  2. 탐색 단위를 좀 더 크고 의미있게 하기 위해 Operator 구조 도입
    1. Ensemble: 여러 LLM 결과 종합
    2. Review: 중간 결과 평가
    3. Revise: 결과 수정/보완
    4. CodeGenerate: 코드 생성
    5. ContextualGenerate: 문맥 기반 응답 생성
    → 자주 반복되는 행동 흐름을 하나의 패턴 단위로 캡슐화

Tasks Scope and Operations

task 범위: 정량적 평가 지표가 존재하는 reasoning task에만 적용가능

Operator set: 기존 논문에서 가장 많이 등장하는 작업을 operator로 일반화하였고 7가지로 정의함.

  • Generate: 텍스트/코드/답변 생성
  • Format: 출력 형식 정리
  • Review&Revise: 자체 평가 후 수정
  • Ensemble: 여러 응답을 결합
  • Test: 중간 결과 검증 or 유닛 테스트
  • Programmer: 코드 작성 기반 구성
  • Custom: 기본 LLM 노드(프롬프트만 있음: 아무 프롬프트나 넣을 수 있는 기본 노드)
  • 이후로 task 특화 operator를 추가로 쉽게 확장 가능

⇒ 즉, AFLOW는 어떤 Operator들을 어떤 순서로 조합하면 주어진 task를 가장 잘 해결하는 workflow가 될까를 해결하는 것!

 

 

  1. Search Space(탐색 공간 정의)
    • Node 구조
      • 가변 파라미터: Prompt
      • 고정 파라미터: Model, Temperature, Output Format
    • Operator 셋
      • 워크플로우를 구성할 때 자주 쓰이는 작업들을 재사용 가능한 조각으로 정의
      • Test, Format, Programmer, Ensemble, Review&Revise, CodeGenerate, ContextualGenerate
    • Code Represented Edges
      • if/else, async 호출 등 Python 코드 형태의 제어 흐름
      • → AFLOW는 워크플로우 제어 흐름을 일반 코드 수준으로 표현
  2. Search via AFLOW(탐색 과정)
    1. MCTS 변형 구조를 통해 탐색 수행. 중심 탐색 루프는 다음과 같은 네 가지 단계로 구성
      1. Soft Mixed Probability Selection: 다음 탐색할 후보 워크플로우를 확률적으로 선택 (탐험 vs 활용 균형)
      2. LLM-Based Expansion: 선택된 워크플로우를 LLM이 확장하여 새 노드 구성 생성
      3. Executing Evaluation: 확장된 워크플로우를 실제 실행하고 성능 평가
      4. Experience Backpropagation: 평가 결과를 통해 트리 상위 노드에 경험 정보 역전파 (MCTS 핵심 로직)\
  3. Search Result (생성된 최적 워크플로우 예시)
    1. AFLOW가 자동 탐색 끝에 생성한 세 가지 실제 워크플로우 구조 
      1. Math Workflow
      2. Simplify → Refine → Solve → Generate Solution
    2. Question-Answering Workflow
      1. Identity Check → Fact Check → Format → Analyze
    3. Code Generation Workflow
      1. Fix Code 블록에 조건 분기를 통해 반복 개선 구조 포함.

4. The Design Details of AFLOW

5. Experiment

5.1 Experimental Setup

Datasets

GSM8K, HumanEval, MBPP, HotpotQA, DROP, MATH

전체 데이터셋을 1:4비율로 validation/test 분할

Baselines

IO(단순 LLM 호출), CoT, CoT-SC, MultiPersona Debate, Self-Refine, MedPrompt, ADAS

5.2 EXPERIMENTAL RESULTS AND ANALYSIS

Main Results

1번 테스트

 

AFLOW 평균 성능: 80.3%

특히, MATH, MBPP 같은 어려운 작업에서 ADAS 대비 최대 57% 향상

 

 

2번 테스트

실험 목적: AFLOW가 특정 LLM에서 찾은 워크플로우가 다른 LLM에서도 잘 작동하는가?

실험 방식: GPT-4o-mini, DeepSeek-V2.5 이 두 모델 각각에서 최적 워크플로우 구조를 탐색한 뒤, 이를 GPT-4o, Claude에 적용함.

 

실험 결과:

대부분의 경우 베이스라인보다 좋음.

DeepSeek-V2.5에서 찾은 워크플로우를 GPT-4o-mini에 적용하면 성능이 떨어짐.

⇒ 모델마다 최적의 reasoning flow가 다를 수 있음. 따라서 모델 맞춤형 최적화가 필요할 수 있음.

Cost Analysis

실험 목적: 작은 LLM도 최적 워크플로우를 쓰면 강한 모델보다 더 잘 작동할 수 있는가?

실험 방식:

  • 실행 LLM: GPT-4o-mini, DeepSeek-V2.5, 추가로 성능, 가격대가 다른 4개 모델 비교
  • 워크플로우 구성 방식: AFLOW가 각 모델에 맞춰 탐색한 상위 3개의 워크플로우 사용 / 기존 방식과 비교
  • 비용 측정 방법: API 호출 시의 입출력 토큰 사용량 기반 / 계산된 비용과 성능을 함께 시각화하여 Pareto Front로 분석

 

실험 결과:

  • AFLOW는 약한 모델에게도 고성능 워크플로우를 부여함으로써 더 강한 모델보다 비용-성능 측면에서 우수한 결과를 냄.

Conclusion

  • AFLOW는 자동 워크플로우 최적화를 위한 새로운 프레임워크이다.
  • MCTS와 코드 기반 워크플로우 표현을 활용해 방대한 워크플로우 탐색 공간을 효율적으로 탐색한다.
  • 약한 모델조차도 AFLOW가 설계한 워크플로우로 강한 모델보다 뛰어난 비용-성능을 달성할 수 있었다.