Back to Blog

기계와 대화하기: 음성 AI 프롬프트 작성의 기술

음성에서 프롬프트가 다르게 느껴지는 이유

잘못 작성된 챗봇 응답을 읽을 때는 어색한 문장을 대충 훑어넘기게 됩니다. 눈은 관련 정보로 바로 이동하고, 읽는 도중에 머릿속으로 내용을 수정하죠.

하지만 프롬프트가 부실한 음성 에이전트의 목소리를 듣게 되면, 대충 훑어볼 여지가 없습니다. 말더듬는 순간마다 귀에 꽂히고, 모든 침묵은 영원처럼 느껴지며, 어조가 맞지 않을 때마다 뭔가 잘못되었다는 느낌이 듭니다.

이것이 바로 음성 AI의 특징입니다. 텍스트에서는 사소해 보이는 프롬프트 오류가 음성에서는 눈에 띄게 드러납니다.

동일한 기본 모델을 기반으로 구축되어 동일한 고객 지원 시나리오를 처리하는 두 음성 어시스턴트를 생각해 보세요. 하나는 3초 만에 차분하고 직설적인 답변을 내놓습니다. 다른 하나는 6초가 걸리며, “물론이죠! 기꺼이 도와드리겠습니다!”라고 말을 시작하고는 사용자가 이미 알고 있는 내용을 장황하게 늘어놓습니다.

동일한 모델. 동일한 인프라. 완전히 다른 경험.

차이점은 프롬프트에 있습니다.

텍스트 인터페이스에서는 사용자가 관대합니다. 스크롤하고, 훑어보고, 넘어가면 되니까요. 하지만 음성에서는 앞으로 건너뛸 수 없습니다. 기다려야 하고, 들어야만 합니다. 그리고 들은 내용이 기대와 맞지 않는다면(어조가 틀리거나, 말의 속도가 어긋나거나, 응답이 너무 오래 걸린다면) 도움이 되는 비서라는 환상은 순식간에 산산조각 납니다.

지연 시간은 모든 것을 증폭시킵니다. 채팅 창에서 500밀리초의 지연은 감지할 수 없습니다. 하지만 음성 대화에서 500ms는 정상 범위의 상한선입니다. 800~1000ms를 넘어서면, 그 멈춤이 부자연스럽게 느껴지기 시작합니다. 1~2초가 지나면 상호작용 자체가 부자연스럽게 느껴집니다. 지나치게 복잡한 프롬프트로 인한 처리 오버헤드까지 더해지면, 불편한 영역으로 접어들게 됩니다.

음성 AI 프롬프트 작성에는 다른 사고방식이 필요합니다. 텍스트 생성기를 위한 지침을 작성하는 것이 아닙니다. 실시간 상호작용을 지휘하는 것입니다.

음성 AI의 작동 원리

프롬프트 전략에 대해 자세히 알아보기 전에, 사용자가 말을 하고 AI가 응답하는 사이에 어떤 일이 일어나는지 이해하는 것이 도움이 됩니다.

실시간 루프는 다음과 같습니다:

오디오 입력 → 사용자가 마이크에 말을 합니다. 원본 오디오가 시스템으로 전송됩니다.

음성 활동 감지 → 시스템이 사용자의 말 시작과 끝을 감지합니다.

전사 → 음성-텍스트 변환(Speech-to-text)이 오디오를 텍스트로 변환하며, 일반적으로 사용자가 말하는 대로 조각 단위로 처리됩니다.

LLM 추론 → 전사된 텍스트가 프롬프트에 입력되고 모델이 응답을 생성합니다.

음성 합성 → 텍스트-음성 변환(Text-to-speech)이 모델의 출력을 다시 오디오로 변환합니다.

오디오 출력 → 합성된 음성이 사용자에게 다시 전송됩니다.

이것이 표준적인 계단식 파이프라인 아키텍처입니다. 각 단계에서 텍스트를 확인할 수 있기 때문에 여전히 가장 일반적인 접근 방식이며 디버깅하기도 가장 쉽습니다. 또한 더 유연합니다. 텍스트 변환과 LLM 사이에서 RAG 조회, PII 마스킹 또는 기타 처리를 삽입할 수 있습니다. 텍스트 단계를 완전히 건너뛰는 네이티브 오디오 모델도 존재하지만, 사용 사례에 따라 비용이 더 많이 들거나 유연성이 떨어질 수 있습니다. 이 글은 오케스트레이션된 파이프라인에 초점을 맞춥니다.

지식의 출처

프롬프트는 에이전트에게 어떻게 행동해야 하는지 지시할 뿐, 도메인 지식을 제공하지는 않습니다. 도메인 지식은 대개 실행 시점에 관련 문서, 지식베이스 기사 또는 고객 데이터를 가져와 컨텍스트에 주입하는 검색 시스템에서 제공됩니다.

프롬프트는 모든 정답을 포함하기보다는 검색된 컨텍스트와 연동되도록 작성되어야 합니다. “제공된 문서를 바탕으로 답변하라” 또는 “답변이 컨텍스트에 없다면 모른다고 말하라”와 같은 지침은 모델이 검색된 지식을 적절히 활용하도록 돕습니다.

이 파이프라인의 각 단계는 지연 시간을 발생시킵니다. 트랜스크립션에는 시간이 걸립니다. 모델 추론에도 시간이 걸립니다. 합성에도 시간이 걸립니다. 네트워크 왕복에도 시간이 소요됩니다. 사용자가 말을 멈추는 시점부터 응답의 첫 단어를 듣는 시점까지의 총 종단 간 지연 시간은 대화가 자연스럽게 느껴지는지, 아니면 로봇처럼 느껴지는지를 결정합니다. 일반적인 인간 대화의 응답 간격은 200~600밀리초입니다. 약 1초를 초과하는 음성 AI 시스템은 반응이 느리다고 느껴질 수 있습니다. 2초를 넘으면 사용자는 시스템에 문제가 생긴 것이 아닌지 의심하기 시작합니다.

오케스트레이션은 모델 선택만큼 중요합니다. 가장 성능이 뛰어난 모델을 사용하더라도 파이프라인에 불필요한 지연 시간이 발생하면 사용자 경험은 저하됩니다. 저지연 실시간 플랫폼은 네트워킹과 스트리밍의 복잡성을 처리해 주지만, 프롬프트 자체는 여전히 사용자의 책임입니다. 장황한 프롬프트는 종종 불필요한 제약을 가하며, 이는 모델이 더 긴 응답을 생성하게 만드는 원인이 됩니다. 스트리밍 파이프라인에서 응답의 시작 부분에 있는 모든 불필요한 단어는 실제 답변 전달을 지연시킵니다. 복잡한 추론 지시문(예: “단계별로 생각하세요”)은 모델이 첫 스트리밍 가능한 출력을 생성하기 전에 추가적인 내부 토큰을 생성할 수 있으므로 지연 시간을 증가시킵니다.

불필요한 토큰 하나하나가 지연 시간을 늘리지만, 프롬프트를 짧게 만들기 위해 명확성을 희생해서는 안 됩니다. 모호한 프롬프트는 절약한 토큰 수보다 더 많은 시간을 낭비하게 할 수 있습니다.

음성 프롬프팅의 핵심 원칙

역할, 어조, 말투를 명확히 하세요

텍스트 프롬프트는 종종 어조를 암시적으로 남깁니다. “당신은 도움이 되는 조수입니다”라고 작성하고 모델이 알아서 해석하도록 내버려 둡니다.

음성 프롬프트는 모호함을 용납할 수 없습니다. 다음 사항을 구체적으로 명시해야 합니다:

  • 조수가 누구인지(역할, 전문성 수준, 성격)
  • 어떻게 말해야 하는지(차분하게, 활기차게, 정중하게, 캐주얼하게)
  • 어떤 속도를 유지해야 하는지(간결한 응답, 상세한 설명, 또는 상황에 따라 유연한 응답)

“당신은 도움이 되는 고객 서비스 담당자입니다”와 같은 프롬프트는 평범한 결과를 낳습니다. “당신은 차분하고 인내심 있는 지원 전문가입니다. 짧고 명확한 문장으로 말하세요. 불필요한 표현은 피하고, 요점을 빠르게 전달하세요”와 같은 프롬프트는 음성에 적합한 응답을 생성합니다.

텍스트가 아닌 음성을 위해 설계하세요

문어체와 구어는 서로 다른 규칙을 따릅니다. 읽기에는 자연스러운 문장도 소리 내어 읽으면 어색하게 들리는 경우가 많습니다.

모델이 음성 친화적인 결과를 내놓도록 유도하세요:

  • 복합 구조보다 짧은 문장
  • 모호한 표현보다 직접적인 표현
  • 추상적인 단어보다 구체적인 단어
  • 수동태보다 능동태

“귀하의 계정 상태에 대해 요청하신 정보는 설정 패널로 이동하여 확인하실 수 있습니다”는 읽기에는 괜찮습니다. 하지만 소리 내어 읽으면 지루하게 느껴집니다.

“귀하의 계정 상태는 설정에 있습니다. 안내해 드릴까요?” 이쪽이 더 효과적입니다.

TTS를 위한 서식 (그리고 피해야 할 사항)

텍스트 음성 변환(TTS) 시스템은 텍스트의 시각적 구조에 민감합니다. 텍스트상으로는 괜찮아 보이는 문자가 음성 에이전트가 말을 더듬게 하거나 문자 그대로 코드를 읽게 할 수 있습니다.

TTS가 숫자와 기호를 어떻게 처리하는지 테스트해 보세요: “글자로 읽기”가 항상 더 낫다고 가정하지 마세요. 구형 엔진에서는 “twenty-three”와 같은 표현이 필요했지만, ElevenLabs나 Cartesia와 같은 많은 최신 신경망 기반 엔진은 정교한 정규화 레이어를 갖추고 있습니다. TTS 엔진에 따라 날짜나 화폐 단위를 올바르게 정규화하기 위해 “23”이나 “$5”와 같은 형식을 선호할 수 있습니다. 특정 제공업체와 함께 간단한 A/B 테스트를 수행하여 어떤 형식이 가장 자연스러운 리듬을 만들어내는지 확인하세요.

마크다운 서식은 피하세요: LLM에 별표, 해시, 글머리 기호(**굵게**, ### 헤더, * 목록)를 제거하도록 명시적으로 지시하세요. 일부 TTS 엔진은 이를 무시하지만, 다른 엔진은 문자 그대로 “해시 해시 해시”나 “별표”라고 발음하여 사용자의 몰입감을 완전히 깨뜨릴 수 있습니다.

호흡을 위한 구두점 사용: TTS 엔진은 마침표, 쉼표, 대시(-)를 자연스러운 멈춤과 음조 변화의 신호로 사용합니다. 응답이 마치 소리의 벽처럼 들린다면, 프롬프트를 통해 구두점을 더 자주 사용하도록 하여 디지털 음성이 숨 쉴 수 있는 여유를 주세요.

업계 전문 용어에는 발음 표기 사용: 브랜드나 제품명이 독특한 경우(예: “아고라 ” 대 “아고-라”), 다음과 같은 조건부 규칙이 필요할 수 있습니다. “우리 브랜드를 언급할 때는 정확한 발음을 보장하기 위해 [발음 표기]로 표기하십시오.”

조건부 규칙 사용

음성 상호작용은 예측할 수 없습니다. 사용자는 말을 끊거나, 주제를 바꾸거나, 예상치 못한 질문을 하거나, 침묵할 수 있습니다. 프롬프트는 이러한 상황을 유연하게 처리해야 합니다.

행동 지침을 명확한 조건문으로 구성하세요:

  • “사용자가 말을 끊었다면, 이전 생각을 끝내려 하지 마세요. 사용자의 새로운 입력에 직접 응답하세요.”
  • “사용자가 부분적인 답변을 제공하면, 누락된 정보를 직접 요청하세요.”
  • “답을 모른다면, 직접 그렇게 말하세요. 추측하지 마세요.”
  • “사용자가 답답해하는 것 같다면, 계속하기 전에 그 감정을 인정해 주세요.”

이러한 규칙들은 모든 시나리오를 미리 예상할 필요 없이 모델에 의사결정 논리를 제공합니다.

프롬프트는 간결하게 유지하세요

지침이 어떻게 작성되었는지에 따라 긴 프롬프트는 더 긴 출력을 유발할 수 있습니다.

그렇다고 프롬프트를 완전히 없애라는 뜻은 아닙니다. 하지만 실제로 필요한 내용에 대해서는 엄격해야 합니다.

자신에게 물어보세요:

  • 이 지침이 행동에 의미 있는 변화를 주나요?
  • 명확성을 잃지 않고 더 짧게 만들 수 있을까요?
  • 이 규칙은 실제 대화에서 실제로 적용될까요?

모든 예외적인 경우를 다루는 2,000토큰 규모의 시스템 프롬프트는 드문 상황에서 약간 더 나은 응답을 생성할 수 있습니다. 일반적인 경우를 잘 다루는 400토큰 프롬프트는 대개 더 빠르지만, 명확할 때만 그렇습니다. 짧고 모호한 프롬프트는 길고 정확한 프롬프트보다 더 큰 비용을 초래할 수 있습니다.

음성 상호작용의 경우, 지연 시간이 짧을수록 사용자 경험이 직접적으로 향상됩니다.

예시 대화록

이론만으로는 한계가 있습니다. 실제로 다양한 프롬프트 선택지가 어떻게 들리는지 확인해 보세요.

간결함 vs. 장황함

프롬프트 A (최소한의 안내): “당신은 호텔을 위한 유용한 음성 비서입니다.”

사용자: 체크아웃 시간은 언제인가요?

어시스턴트: 좋은 질문이네요! 저희 호텔의 체크아웃 시간은 보통 오전 11시입니다. 다만, 객실 유형이나 예약 시 협의하신 내용에 따라 달라질 수 있다는 점을 말씀드려야겠네요. 늦은 체크아웃이 필요하시다면, 객실 상황에 따라 조정 가능한 경우가 많으니 관심이 있으시다면 프런트 데스크에 문의해 보시는 게 좋을 것 같습니다.

프롬프트 B (음성 최적화): “당신은 호텔의 간결한 음성 비서입니다. 짧고 직접적인 답변을 제공하세요. 사용자가 자세한 내용을 요청하지 않는 한, 최대 1~2문장으로 답변하세요.”

사용자: 체크아웃 시간은 언제인가요?

비서: 체크아웃은 오전 11시입니다. 늦은 체크아웃이 필요하신가요? 프런트 데스크에서 도와드릴 수 있습니다.

첫 번째 응답은 78단어입니다. 두 번째는 18단어입니다. 둘 다 질문에 답하고 있지만, 사용자의 시간을 존중하는 것은 단 하나뿐입니다.

차분함 vs. 지나치게 활기찬 태도

프롬프트 A: “당신은 사용자의 피트니스 추적 앱을 돕는 열정적이고 친근한 어시스턴트입니다. 밝고 격려하는 어조로 답변하세요!”

사용자: 어제 걸음 수 목표를 달성하지 못했어요.

어시스턴트: 아, 안 됐네요. 하지만 전혀 문제없어요! 매일은 목표를 달성할 수 있는 새로운 기회예요! 하루를 놓쳤다고 해서 여러분의 여정이 좌절되는 건 아니에요. 중요한 건 지금 이 순간, 다시 시작할 준비가 되어 있다는 거죠! 여러분이라면 할 수 있어요! 오늘 목표를 달성할 수 있도록 알림을 설정해 드릴까요?

프롬프트 B: “여러분은 피트니스 추적 앱의 든든한 조력자입니다. 따뜻하지만 차분하게 대하세요. 지나친 열정은 피하고, 사용자의 에너지 수준에 맞춰주세요.”

사용자: 어제 걸음 수 목표를 달성하지 못했어요.

어시스턴트: 그럴 수도 있죠. 하루 정도는 장기적으로 큰 차이를 만들지 않아요. 오늘 목표가 뭔지 확인해 볼까요?

첫 번째 응답은 일부 사용자에게는 통할 수 있습니다. 하지만 많은 사용자, 특히 이미 의욕을 잃은 사람들에게는 상황을 전혀 이해하지 못하는 것처럼 들릴 수 있습니다. 두 번째 응답은 사용자의 현재 상태에 맞춰 대응합니다.

지연 시간에 최적화된 응답 vs. 불필요한 정보 과다

프롬프트 A (포괄적): “당신은 TechCorp 고객 지원 센터의 AI 어시스턴트입니다. 당신의 역할은 계정, 청구, 기술적 문제, 제품 정보, 배송, 반품, 보증 청구 및 일반 문의에 대해 고객을 돕는 것입니다.

응답 시:

- 항상 고객에게 따뜻하게 인사하세요

- 답변하기 전에 질문을 인지했음을 알리세요

- 완전한 정보를 제공하세요

- 추가적인 도움을 제안하세요

- 고객의 이름이 알려진 경우 이름을 사용하십시오

- 공감하고 이해하는 태도를 보이십시오

- 대안을 제시하지 않고 “모르겠습니다”라고 말하지 마십시오

- 항상 다른 문의 사항이 있는지 묻는 말로 마무리하십시오

- 해당되는 경우 관련 정책을 참조하십시오

- 문제가 복잡한 경우 담당자에게 연결하십시오

- 분석을 위해 상호작용 유형을 기록하십시오

- 전문적이면서도 친근한 어조를 유지하십시오

- 적극적인 경청 기법을 사용하십시오

- 고객의 감정을 인정해 주십시오

- 필요할 경우 단계별 안내를 제공하십시오

귀하는 계정 관리, 청구 시스템, 제품 카탈로그, 배송 정책, 반품 절차, 보증 정보 및 문제 해결 가이드에 대한 지식 기반을 이용할 수 있습니다.”

프롬프트 B (집중형): “귀하는 TechCorp의 지원 담당자입니다. 도움이 되고, 간결하며, 직설적으로 답변하십시오. 문제를 해결할 수 없는 경우, 그 사실을 밝히고 전문가에게 연결해 드리겠다고 제안하십시오.”

프롬프트 A는 197단어입니다. 프롬프트 B는 29단어입니다.

테스트 결과, 프롬프트 B는 대부분의 문의에 대해 더 빠른 응답을 생성했습니다. 프롬프트가 짧을수록 모델이 처리해야 할 내용이 줄어들고, 균형을 맞춰야 할 상충되는 지시사항도 줄어듭니다.

자연스러운 음성 경험 구축

좋은 프롬프트도 중요하지만, 그것이 전부는 아닙니다. 자연스러운 음성 경험을 위해서는 개별 응답을 넘어 전체 대화 흐름을 고려해야 합니다.

대화 순서

사람들의 대화에는 리듬이 있습니다. 사람들은 말을 마쳤을 때 신호를 보냅니다. 응답을 기다리며 잠시 멈춥니다. 언제 자신의 차례인지 알고 있습니다.

음성 AI도 같은 인식이 필요합니다. 프롬프트는 모델이 언제 말하고 언제 들어야 하는지 안내해야 합니다.

“사용자가 쉽게 끼어들 수 있도록 응답은 간결하게 유지하세요. 복잡한 설명의 경우 한 번에 한 부분씩 전달하고, 확인 질문으로 끝맺으세요. 계속하기 전에 사용자가 응답할 수 있도록 하세요.”

이러한 지침이 없으면 모델은 독백을 하려는 경향이 있습니다. 기술적으로는 질문에 답하는 포괄적인 답변을 제공하겠지만, 대화의 자연스러운 주고받음을 위한 여지는 남기지 않을 것입니다.

중단 가능성

사용자는 대화를 중단할 것입니다. 문장 도중에 자신이 잘못된 질문을 했다는 것을 깨닫기도 하고, 화제를 바꾸고 싶어 하기도 하며, 조바심을 내기도 할 것입니다.

프롬프트에 중단 처리 기능을 포함시키세요:

“사용자가 말을 끊었다면, 필요한 경우 간단히 이를 인정한 후 새로운 입력에 응답하세요. 이전 생각을 끝내려고 하지 마세요.”

당연한 말처럼 들리죠? 하지만 명시적인 지침이 없다면, 많은 모델이 중단에 대응하기 전에 자신의 생각을 끝내려고 할 것입니다. 이는 자연스러운 대화와 정반대입니다.

컨텍스트 관리

음성 대화는 컨텍스트가 빠르게 축적됩니다. 열 번의 대화만으로도 많은 이력이 쌓입니다. 하지만 모든 프롬프트에 이 모든 정보를 불러오면 지연 시간이 늘어나고 모델이 혼란스러워할 수 있습니다.

다음 사항을 고려하세요:

  • 현재 대화 순서에 필수적인 컨텍스트는 무엇인가?
  • 무엇을 요약할 수 있는가?
  • 무엇을 완전히 생략할 수 있는가?

“사용자의 가장 최근 질문에 집중하세요. 직접적으로 관련이 있는 경우에만 이전 대화를 참조하세요.”

안전 경계

음성 상호작용은 텍스트보다 더 개인적인 느낌을 줍니다. 사용자는 민감한 정보를 공유하거나, 부적절한 요청을 하거나, 폭언을 할 수도 있습니다. 프롬프트에는 명확한 경계가 필요합니다.

“사용자가 요청하지 않았는데도 개인 정보를 공유하면, 이를 되풀이하지 마십시오. 역할 범위를 벗어난 요청을 받으면 정중하게 거절하고 다른 방향으로 유도하십시오. 사용자가 폭언을 하면 침착하게 대응하고 대화를 종료할 것을 제안하십시오.”

이는 단순한 윤리적 요구사항이 아닙니다. 사용자 경험의 필수 요건입니다. 예외적인 상황을 우아하게 처리하는 비서는 신뢰를 유지합니다.

프롬프트의 한계

프롬프트는 LLM이 말하는 내용을 형성하지만, 음성 대화가 자연스럽게 느껴지게 하는 요소의 상당 부분은 LLM이 호출되기 전의 오케스트레이션 단계에서 발생합니다.

원활한 대화 교대를 위해 실제로 필요한 요소를 고려해 보십시오. 시스템은 사용자가 말을 멈췄을 때를 감지(엔드포인트 감지)하고, 일시 정지가 사용자의 말 끝을 의미하는지 판단(음성 활동 감지)하며, 사용자가 말을 끊으려 하는지 확인(중단 감지)해야 합니다. 이는 파이프라인 내의 실시간 오디오 및 오케스트레이션 문제이지, 언어 모델의 문제가 아닙니다. 아무리 프롬프트 엔지니어링을 잘해도 LLM이 오디오를 듣게 하거나 문장 도중에 말을 멈출 시점을 결정하게 할 수는 없습니다.

아고라의 대화형 AI 엔진과 같은 오케스트레이션 플랫폼은 에이전트 수준에서 이러한 문제를 처리합니다. 이 플랫폼은 LLM과 독립적으로 실행되는 VAD, 엔드포인트링, 중단 처리를 위한 내장 알고리즘을 제공합니다. 오케스트레이션 레이어는 오디오를 트랜스크립션으로 보낼 시기, LLM을 호출할 시기, TTS 재생을 중단할 시기를 결정합니다. 프롬프트는 모델이 호출된 후 모델이 말하는 내용을 제어하고, 오케스트레이션 레이어는 그 외 모든 것을 제어합니다.

이것이 바로 올바른 프롬프트를 작성하는 것만큼이나 적절한 인프라를 선택하는 것이 중요한 이유입니다. 두 요소가 함께 작동해야 합니다. 아고라는 팀이 다양한 AI 모델 간 저지연 조합을 평가할 수 있도록 '대화형 AI 성능 실험실(Conversational AI Performance Lab)'과 같은 도구를 제공합니다 — https://www.agora.io/en/conversational-ai-performance-lab/.

테스트 및 반복 개선

음성 AI 프롬프트 작업은 일회성 작업이 아닙니다. 제품 수명 주기 전반에 걸쳐 테스트하고, 측정하며, 개선해 나가야 합니다.

골든 테스트 스크립트

핵심 사용 사례를 포괄하는 표준 상호작용 세트를 작성하십시오. 프롬프트가 변경될 때마다 이를 정기적으로 실행해 보십시오.

좋은 테스트 세트에는 다음이 포함됩니다:

  • 정상 경로 상호작용 (일반적인 질문, 예상되는 흐름)
  • 경계 사례 (비정상적인 요청, 모호한 입력)
  • 스트레스 테스트 (긴 대화, 주제 전환, 대화 중단)
  • 적대적 입력 (캐릭터를 무너뜨리려는 시도, 부적절한 요청)

대본과 오디오를 모두 기록하세요. 응답을 읽는 것과 듣는 것은 서로 다른 경험입니다.

프롬프트 A/B 테스트

가능하다면 실제 사용자를 대상으로 프롬프트 변형을 테스트하십시오. 사소한 문구 변경만으로도 측정 가능한 차이를 만들어낼 수 있습니다.

추적 항목:

  • 작업 완료율
  • 대화 길이(거래성 작업의 경우 일반적으로 짧을수록 좋습니다)
  • 사용자 주도 중단(비율이 높으면 대화 속도 조절에 문제가 있을 수 있습니다)
  • 명시적 피드백(요청한 경우)

단순히 정확성만 테스트하지 마십시오. 사용감도 테스트하십시오.

중요한 지표

특히 음성 서비스의 경우 다음 사항에 주목하세요:

첫 토큰까지 소요 시간: 사용자 입력부터 응답의 첫 단어까지 걸리는 시간은 얼마인가요? 이것이 지연 시간의 하한선입니다. 프롬프트의 길이와 명확성이 모두 이에 영향을 미칩니다. 긴 프롬프트는 처리하는 데 더 많은 시간이 걸리며, 모호한 프롬프트는 모델이 응답 생성을 시작하기 전까지 “생각하는” 시간을 늘릴 수 있습니다.

응답 길이 일관성: 응답의 길이가 예측 가능한 수준인가요, 아니면 크게 들쑥날쑥한가요? 일관성이 없으면 대화를 따라가기 어렵습니다.

중단률: 사용자가 어시스턴트의 말을 얼마나 자주 끊나요? 어느 정도의 중단은 자연스러운 현상입니다. 과도한 중단은 응답이 너무 길거나 주제와 동떨어져 있음을 시사합니다.

대화 완료율: 사용자가 목표를 달성하나요? 도중에 포기하나요?

프롬프트 작성을 제품 반복 개선 과정으로 여기세요. 모든 변경은 가설입니다. 테스트하고, 측정하고, 그로부터 배우세요.

결론

음성 AI에 프롬프트를 제공하는 것은 문서를 작성하는 것보다 실시간 상호작용을 연출하는 것에 더 가깝습니다.

여러분은 에이전트의 말투, 말하는 시점, 대화 시간, 그리고 예상치 못한 상황을 처리하는 방식을 형성하고 있습니다. 프롬프트의 모든 단어는 사용자 경험에 영향을 미칩니다. 단순히 응답의 내용뿐만 아니라 리듬, 어조, 타이밍까지 말입니다.

원칙은 복잡하지 않습니다:

  • 에이전트가 어떻게 행동하기를 원하는지 명확히 하세요
  • 텍스트가 아닌 음성을 위해 설계하세요
  • 지연 시간을 최소화하기 위해 프롬프트를 간결하게 유지하세요
  • 눈으로만 보는 것이 아니라 귀로 테스트하세요
  • 실제 대화를 바탕으로 반복 개선하세요

인프라도 중요합니다. 아무리 훌륭한 프롬프트라도 몇 초의 지연 시간을 유발하는 파이프라인을 극복할 수는 없습니다. 저지연 실시간 플랫폼은 까다로운 네트워킹 문제를 해결해 주지만, 횡설수설하거나 어조가 어색한 응답을 생성하는 프롬프트는 고칠 수 없습니다.

훌륭한 프롬프트와 견고한 인프라는 서로 시너지를 냅니다. 둘 중 어느 하나도 소홀히 할 수 없습니다.

음성 AI를 개발 중이라면, 먼저 경청하는 것부터 시작하세요. 실제 상호작용을 처리하는 시스템의 음성을 녹음하고 재생해 보세요. 대화가 자연스럽게 느껴지는 부분과 어색하게 느껴지는 부분을 기록해 두세요. 이러한 관찰 결과를 바탕으로 프롬프트를 개선해 나가세요.

목표는 텍스트로 보기 좋은 프롬프트가 아닙니다. 귀에 들었을 때 자연스럽고 편안한 대화입니다.

RTE Telehealth 2023
Join us for RTE Telehealth - a virtual webinar where we’ll explore how AI and AR/VR technologies are shaping the future of healthcare delivery.

Learn more about Agora's video and voice solutions

Ready to chat through your real-time video and voice needs? We're here to help! Current Twilio customers get up to 2 months FREE.

Complete the form, and one of our experts will be in touch.

Try Agora for Free

Sign up and start building! You don’t pay until you scale.
Try for Free