Looker API에서 ConversationalAnalytics API 엔드포인트 사용에 관한 권장사항

Looker의 ConversationalAnalytics API 엔드포인트를 사용하면 삽입된 애플리케이션 내에서 맞춤 대화형 분석 환경을 빌드할 수 있습니다. 이러한 API는 Looker의 대화형 분석 기능을 지원하는 엔드포인트를 미러링하고 Looker API 내에서 동일한 기능을 제공합니다. 여기에는 에이전트, 대화, 메시지의 생성, 업데이트, 읽기, 삭제 (CRUD) 작업과 대화형 에이전트와 상호작용하기 위한 채팅 API가 포함됩니다. 원활한 개발 프로세스와 최적의 성능을 보장하려면 이러한 API를 사용할 때 특정 제한사항을 이해하고 권장사항을 따르는 것이 중요합니다.

일반적인 워크플로우

멀티턴 대화의 일반적인 워크플로는 에이전트, 대화, 메시지, 채팅 API를 함께 사용하는 것입니다.

  1. 에이전트 만들기: 에이전트가 없는 경우 POST /agents를 사용하여 에이전트를 만듭니다. 에이전트는 특정 Looker 모델과 Explore를 사용하도록 구성됩니다.
  2. 대화 만들기: POST /conversations를 사용하여 에이전트와 연결된 새 대화를 시작합니다. 그러면 대화 ID가 반환됩니다.
  3. 메시지 보내기: 대화의 각 턴에 대해 conversation_id 및 사용자의 메시지와 함께 POST /conversational_analytics/chat를 호출합니다. 이 엔드포인트는 에이전트의 시스템 메시지를 하나 이상 반환합니다.
  4. 메시지 유지: /conversational_analytics/chat 엔드포인트는 사용자 메시지 또는 반환된 시스템 메시지를 유지하지 않습니다. 후속 턴의 대화 기록을 유지하려면 채팅 API를 호출한 후 POST /conversations/:conversation_id/messages를 호출하여 사용자 메시지와 시스템 메시지를 모두 유지해야 합니다.

권장사항

최상의 결과를 얻으려면 다음 권장사항을 따르세요.

  • 모든 메시지 유지: /conversational_analytics/chat를 호출한 후에는 POST /conversations/:conversation_id/messages를 호출하여 해당 턴의 사용자 메시지와 채팅 API에서 반환된 모든 시스템 메시지를 저장해야 합니다. 이는 멀티턴 대화에 필수적입니다.
  • 스트리밍 처리: 가능한 경우 채팅 API의 스트리밍 기능을 사용하여 상담사가 처리하는 동안 사용자에게 의견을 제공합니다. 스트리밍 중에 수신된 메시지는 상담사가 '생각'하고 있음을 나타내는 데 사용할 수 있습니다.

제한사항 및 고려사항

ConversationalAnalytics API 엔드포인트를 사용할 때는 다음 제한사항을 고려하세요.

  • 메시지 지속성: POST /conversations/:conversation_id/messages 엔드포인트를 사용하여 메시지를 지속하는 것은 사용자의 책임입니다. /conversational_analytics/chat 호출 후 메시지를 유지하지 않으면 대화 기록이 유지되지 않으며 상담사는 다중 턴 대화에서 후속 질문에 대한 컨텍스트가 없습니다.
  • 스트리밍 지원: 채팅 API는 스트리밍 API이므로 상담사가 메시지를 생성할 때 메시지를 수신할 수 있어 장기 실행 쿼리의 사용자 환경을 개선할 수 있습니다. 하지만 일부 Looker SDK 언어에서는 스트리밍을 지원하지 않습니다. 스트리밍을 지원하지 않는 SDK를 사용하는 경우 API는 모든 메시지가 생성된 후 완전한 응답을 동기식으로 반환합니다. 스트리밍이 필수적이며 SDK 언어에서 지원되지 않는 경우 스트리밍을 사용하려면 HTTP 호출을 직접 실행해야 할 수 있습니다.