핵심 요약
LangSmith의 웹훅 기능을 활용하면 에이전트 실행이 끝나는 즉시 Slack으로 결과 요약을 전송받아 작업 효율을 극대화할 수 있다.
배경
긴 시간이 소요되는 에이전트 작업의 완료 여부를 실시간으로 확인하기 어려운 문제를 해결하기 위해 자동 알림 시스템이 필요하다.
대상 독자
LangChain 및 LangSmith를 사용하여 AI 에이전트를 개발하고 운영하는 엔지니어
의미 / 영향
에이전트의 긴 작업 시간을 수동으로 모니터링하는 리소스 낭비를 제거하고 작업 완료 즉시 후속 조치를 취할 수 있는 자동화 환경을 제공한다. 이는 복잡한 멀티 에이전트 워크플로우의 운영 안정성과 사용자 경험을 동시에 개선하는 핵심 기술로 작용한다.
챕터별 상세
웹훅 아키텍처 및 작동 원리 개요
- •에이전트 실행 완료 시 LangSmith 런타임이 POST 요청을 트리거함
- •커스텀 FastAPI 엔드포인트가 페이로드를 수신하여 데이터 가공 수행
- •최종 가공된 데이터가 Slack 웹훅 URL을 통해 채널로 전송됨
웹훅은 이벤트 기반 아키텍처에서 시스템 간 실시간 통신을 위해 널리 사용되는 방식이다.
Deep Research 에이전트 환경 설정
- •Deep Agents GitHub 리포지토리 클론 및 의존성 설치
- •Anthropic, Tavily, LangSmith 등 필수 API 키 구성
- •Slack Incoming Webhooks 설정을 통한 전송 URL 확보
Tavily는 AI 에이전트 최적화 검색 엔진이며, Anthropic은 Claude 모델을 제공하는 기업이다.
FastAPI 웹훅 핸들러 코드 구현
- •WebhookPayload 타입을 정의하여 페이로드 구조 명시
- •페이로드의 values.messages[-1]에서 최종 AI 응답 추출
- •langgraph.json에 FastAPI 앱 인스턴스를 등록하여 서버 연동
FastAPI의 TypedDict를 사용하면 수신되는 JSON 데이터의 구조를 명확히 정의하고 타입 힌트를 얻을 수 있다.
로컬 개발 서버 실행 및 테스트
- •langgraph dev를 통한 로컬 개발 환경 활성화
- •LangSmith Studio에서 새로운 스레드 및 실행 생성
- •실행 요청 시 webhook 파라미터에 커스텀 엔드포인트 URL 전달
LangSmith Studio는 로컬 환경에서도 에이전트의 상태를 시각적으로 확인하고 제어할 수 있는 도구이다.
Slack 알림 수신 및 결과 확인
- •에이전트의 연구 요약 결과가 Slack 메시지로 자동 전송됨
- •메시지 내에 연구 결과의 핵심 포인트와 보고서 정보 포함
- •LangSmith 트레이싱 로그와 Slack 전송 데이터의 일치성 검증
LangSmith 트레이싱은 에이전트의 각 단계별 입력과 출력을 상세히 기록하여 디버깅을 돕는다.
실무 Takeaway
- LangSmith 웹훅 페이로드의 values 필드 내 messages 리스트에서 인덱스 -1을 참조하여 에이전트의 최종 응답 내용을 확보한다.
- langgraph.json 설정 파일의 http 섹션에 FastAPI 앱 경로를 지정함으로써 별도의 서버 구축 없이도 커스텀 웹훅 엔드포인트를 운영한다.
- 에이전트 실행 요청 시 webhook 파라미터에 엔드포인트 URL을 명시하여 특정 작업에 대해서만 알림을 활성화하는 유연한 운용이 가능하다.
AI 요약 · 북마크 · 개인 피드 설정 — 무료
출처 · 인용 안내
인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.