2.7 KiB
2.7 KiB
LangGraph 1.0 업그레이드 계획
날짜: 2025-12-18
작성자: admin
관련 파일: rb8001/app/services/workflows/coldmail_workflow.py, rb8001/requirements.txt
현재 상황
- 현재 버전:
langgraph==0.6.10 - 사용 위치: 콜드메일 워크플로우 (
coldmail_workflow.py) - 체크포인터:
AsyncSqliteSaver사용 (수동 설정)
LangGraph 1.0 주요 변경사항
- 지속적인 상태 관리 (Durable State): 서버 재시작/중단 시 자동 재개
- 내장된 지속성: 워크플로우 저장/재개 기능 강화
- 휴먼 인 더 루프 (HITL) 패턴: 실행 일시 중지 후 인간 승인 API 제공
- 그래프 기반 실행 모델 개선: 결정론적/에이전트 컴포넌트 혼합 제어 강화
업그레이드 활용 방안
Phase 1: 콜드메일 워크플로우 개선
- 현재: "이 기업을 분석해 드릴까요?" 버튼이 Slack 인터랙션으로 별도 처리 (워크플로우 외부)
- 개선:
process_node에서 HITL 패턴으로 일시 중지 → 사용자 승인 대기 → 재개 - 효과: 워크플로우 내부에서 상태 관리, 중단/재개 자동화
Phase 2: 프론트엔드 IR 평가 통합
- 현재: 프론트엔드 요청은 REST API로 직접 처리 (
IRDeckAnalyzer().analyze()) - 개선: 프론트엔드 요청도 LangGraph 워크플로우로 처리
- 효과: IR Deck 평가(수 분 소요) 중단/재개 지원, 상태 관리 일원화
Phase 3: 자동 상태 복구
- 현재: 체크포인터 수동 설정 (
AsyncSqliteSaver.from_conn_string()) - 개선: 1.0의 자동 상태 관리 활용
- 효과: 서버 재시작 시 콜드메일 처리 중단 지점부터 자동 재개
마이그레이션 전략
- 의존성 업데이트:
requirements.txt에서langgraph==0.6.10→langgraph>=1.0.0 - API 변경 확인:
StateGraph,AsyncSqliteSaverAPI 변경사항 확인 - 체크포인터 마이그레이션: 기존 SQLite 체크포인트 데이터 호환성 확인
- 단계적 적용: 콜드메일 워크플로우부터 적용 후 프론트엔드 IR 평가 확장
필요 작업
- LangGraph 1.0 공식 마이그레이션 가이드 확인
coldmail_workflow.pyAPI 호환성 테스트- HITL 패턴 적용 설계 (콜드메일 "분석할까요?" 버튼)
- 프론트엔드 IR 평가 워크플로우화 설계
- 체크포인트 데이터 마이그레이션 스크립트 작성
참고
- LangGraph 공식 문서: https://github.com/langchain-ai/langgraph
- 현재 구현:
rb8001/app/services/workflows/coldmail_workflow.py - 관련 문서:
troubleshooting/251015_claude_coldmail_workflow_langgraph_test.md