RAG2026-5일28차시 · Conditional Edge 이해9 / 17← 이전목차다음 →MetaContents

28차시. Conditional Edge 이해

6. 실습 — 조건표 설계 연습

출처: 원본 PDF 28차시_ConditionalEdge이해.pdf 15~16쪽 · 쪽 그림 15쪽 16쪽

코드를 쓰기 전에 표로 설계하는 습관을 들입니다.

6-1) 설계 4단계

단계할 일
① 경로 나열이 분기점에서 갈 수 있는 곳을 모두 적는다
② 조건 작성각 경로로 가는 조건을 State 키 기준으로 적는다
③ 순서 정렬안전장치 → 정상 → 구체 → 기본 순으로 배치
④ 누락 점검어떤 조건에도 안 걸리는 경우가 있는지 확인

6-2) 실습 과제 — 32차시 최종 분기 설계

✏️ 아래 표를 채워보세요
32차시에 완성될 verify 이후 분기입니다.
경로가 4개입니다.
· END (정상 종료)
· bump → generate (재생성)
· rewrite → retrieve (재검색)
· fallback (안전 종료)
각각 어떤 조건일 때 가야 할까요?

출력
| 순서 | 조건 | 반환값 | 다음 노드 |
|------|------|--------|-----------|
|  1   |      |        |           |
|  2   |      |        |           |
|  3   |      |        |           |
|  4   |      |        |           |

6-3) 정답 예시

순서조건반환값다음 노드
1retries ≥ MAX_RETRY"giveup"fallback
2grade == "pass""done"END
3grade == "research""research"rewrite
4그 외 전부"regenerate"bump
Python
def route_after_verify(state) -> str:
    if state.get("retries", 0) >= MAX_RETRY:
        return "giveup"
    grade = state.get("grade", "retry")
    if grade == "pass":
        return "done"
    if grade == "research":
        return "research"
    return "regenerate"
← 이전 절28차시 · 5. 질문 유형 라우팅 개념다음 절 →28차시 · 7. 분기 함수 디버깅