Adding Human-in-the-Loop to DeepAgents
- Deep agents는 계획 도구, 파일 시스템, 하위 에이전트를 활용해 더 긴 시간 범위에서 작동할 수 있는 에이전트임 🤖
- 딥 에이전트는 임의의 도구를 전달받아 작업을 수행할 수 있지만, 민감한 도구 사용 시 인간 승인 절차가 필요함 🔑
- Deep agents에 인간 개입을 추가하여 도구 호출을 승인, 거부, 응답하는 기능이 추가됨 ✅
- interrupt config를 통해 도구 이름과 원하는 인간 개입 패턴을 설정할 수 있음 ⚙️
- allow accept는 도구 호출을 승인하고 계속 진행, allow edit는 도구 호출 내용이나 도구 이름을 수정 후 진행, allow respond는 도구 호출을 실행하지 않고 응답을 모델에 전달함 ✍️
- checkpointer는 에이전트의 상태를 저장하고 사용자 응답을 기다리는 데 필요하며, Langraph의 checkpointing 및 persistence layer가 이를 지원함 💾
- thread ID를 설정하여 대화별로 고유하게 관리하고, accept, edit, response 흐름을 각각 테스트할 수 있음 🆔
- accept 흐름은 도구 호출을 승인하고, edit 흐름은 도구 호출 인자를 수정하여 실행하며, response 흐름은 도구 호출 대신 사용자 응답을 모델에 전달함 🔄
- Langsmith의 threads 페이지에서 스레드 ID별로 상호 작용 기록을 추적하고 전체 메시지 시퀀스를 확인할 수 있음 📊