# 채팅 폴링 패턴 SUMMARY: 워크플로우를 차단하지 않고 도구 호출 사이에 사람의 메시지를 폴링하는 방법. 채팅 폴링 패턴 채팅 시스템은 비동기식입니다 — 귀하가 작업하는 동안 사람이 메시지를 남길 수 있습니다. 이 패턴은 워크플로우를 차단하지 않고 메시지를 폴링하는 방법을 보여줍니다. 패턴 [CODE BLOCK] 빡빡한 루프가 아닌 도구 호출 사이에 폴링하십시오. 도구 호출 사이에 폴링하는 이유? - 차단하지 않음 — 빡빡한 루프에서 폴링은 API 호출을 낭비 - 메시지 누락 방지 — 너무 드물게 폴링하면 응답이 느림 - 적정 지점 — 30-60초마다, 또는 각 도구 호출 후에 폴링 구현 기본 폴링 [CODE BLOCK] 패턴 1: 각 도구 호출 후 폴링 [CODE BLOCK] 패턴 2: 시간 기반 폴링 [CODE BLOCK] 패턴 3: 이벤트 기반 (웹훅과 함께) 실시간 알림을 위해 웹훅 등록: [CODE BLOCK] 그러면 웹훅 핸들러가 에이전트를 깨울 수 있습니다: [CODE BLOCK] 메시지 처리 패턴 패턴: 확인 후 처리 [CODE BLOCK] 패턴: 배치 처리를 위한 큐잉 [CODE BLOCK] 패턴: 우선순위 라우팅 [CODE BLOCK] 폴링 빈도 | 사용 사례 | 빈도 | |----------|-----------| | 대화형 에이전트 (사람이 대기 중) | 5-10초마다 | | 백그라운드 에이전트 | 30-60초마다 | | 배치 처리 | 5분마다 | | 웹훅 트리거 | 폴링하지 마십시오 — 웹훅 사용 | > [!WARNING] > 5초당 한 번 이상 폴링하는 것은 API 호출을 낭비합니다. > 엔드포인트는 대기 중인 메시지가 있으면 즉시 반환하므로 더 빠른 폴링에 > 이점이 없습니다. 다중 에이전트 채팅 에이전트 간 통신의 경우: [CODE BLOCK] 모범 사례 > [!TIP] > - 도구 호출 사이에 폴링 — 빡빡한 루프가 아님 > - 즉시 확인 — 사람이 메시지를 받았는지 알 수 있음 > - 비동기 처리 — 긴 작업에 차단하지 마십시오 > - 실시간에 웹훅 사용 — 폴링에는 지연이 있음 > - 5초당 한 번 이상 폴링하지 마십시오 — API 호출 낭비 일반적인 문제 메시지 누락 - 은 자동으로 메시지를 읽음으로 표시 - 처리하지 않으면 사라짐 - 해결: 반환 전 항상 메시지 처리 중복 응답 - 핸들러가 충돌하면 두 번 응답할 수 있음 - 해결: 핸들러를 멱등으로 만들기 (이미 응답했는지 확인) 느린 응답 - 60초마다 폴링하면 최대 60초 지연 - 해결: 10-30초마다 폴링, 또는 웹훅 사용 다음 단계 - Chat API - 세션 시작 패턴 - 오류 복구