확장된 스트리밍 기능을 사용하여 오디오 콘텐츠를 Dialogflow로 스트리밍하고 상담사 제안을 다시 스트리밍할 수 있습니다. 이 기능을 사용하려면 단일 발화를 지원하는 Speech-to-Text 모델을 구성해야 합니다.
일반적으로 최종 스크립트와 Agent Assist 제안을 생성하기 위해 스트림을 종료할 시점을 Dialogflow API에 절반 닫거나 알려줍니다. 이는 API가 인식 결과인 StreamingAnalyzeContentResponse.recognition_result에서 is_final=true 매개변수를 수신하는 대화 턴에서 발생합니다.
확장된 스트리밍은 대화 턴에서 절반 닫을 필요성을 줄여줍니다. 연결 제한 시간을 3분으로 연장하여 절반 닫지 않고 오디오 스트림을 보낼 수 있습니다. Dialogflow API는 최종 스크립트와 Agent Assist 제안을 스트림에 자동으로 다시 보냅니다. 스트림이 제한 시간 초과되는 경우에만 스트림을 다시 시작합니다.
스트리밍 기본사항
Agent Assist 확장 스트리밍 기능은 오디오
스트리밍과 유사합니다. 시스템은 오디오 데이터를 API로 스트리밍하고 Dialogflow는 StreamingAnalyzeContentResponse 데이터를 다시 스트리밍합니다. 반환된 데이터에는 상담사를 위한 제안이 포함됩니다.
확장 스트리밍을 사용하려면
streamingAnalyzeContent
메서드를 호출하세요.
확장 스트리밍은 Agent Assist 단계만 지원합니다. 대화 단계를 참고하세요. 이 기능을 사용하려면 다음과 같이 하세요.
streamingAnalyzeContent메서드를 호출하고 다음 필드를 설정합니다.StreamingAnalyzeContentRequest.audio_config.audio_encoding:AUDIO_ENCODING_LINEAR_16또는AUDIO_ENCODING_MULAWenable_extended_streaming:true.
- 첫 번째
streamingAnalyzeContent요청은 스트림을 준비하고 오디오 구성을 설정합니다. - 후속 요청에서 오디오 바이트를 스트림으로 보냅니다.
- 오디오를 계속 보내는 한 제안을 계속 받게 됩니다. 스트림을 수동으로 닫을 필요가 없습니다. Agent Assist에서 발화가 중지된 것을 감지하면 자동으로 닫힙니다.
- 다음과 같은 경우 스트림을 다시 시작합니다 (초기 오디오 구성 다시 보내기 포함).
- 스트림이 중단되었습니다 (스트림이 중지되어서는 안 되는 경우).
- 오디오 데이터가 3분 후 자동 제한 시간 초과에 가까워지고 있습니다.
- 재시도 가능한 오류가 발생했습니다. 최대 3번까지 재시도할 수 있습니다.