플릭
경력근거: 음성으로 비즈니스가 일하는 방식을 다시 쓰는 회사
※ 실제 산출물이 아닌 AI 예측 시안입니다.
플릭(vox.ai)은 월 수십만 통의 실통화를 처리하는 음성 AI 에이전트라, 응대 품질을 평가·가드하는 이 도구는 vox.ai에 쌓인 실제 통화 로그가 있어야 평가-사람 일치도가 의미를 가집니다.
'음성으로 비즈니스가 일하는 방식을 다시 쓴다'. 응대 품질 평가가 음성 AI 의 핵심.
'끝까지 일을 마무리하는 음성 에이전트'. 완결성 평가가 직격.
'STT, LLM, TTS'. 대화 품질 평가 파이프라인이 토대.
음성 에이전트 통화 로그(전사)를 받아 응대 품질(정확성·완결성)을 평가하고, 부적절·미완결 응대를 가드로 잡는 1주 FDE PoC.
플릭 FDE. 음성 에이전트 응대 품질을 사람이 청취하던 일을, 자동 평가 + 가드 도구로 옮기고 싶은 사람입니다.
통화에 목표·전사를 붙이면, judge LLM 이 (a) 응대 정확성·완결성을 평가하고 (b) 부적절·미완결 응대를 가드로 잡을 수 있습니다.
통화 로그를 받아 응대 정확성·완결성을 평가하고 부적절·미완결을 가드로 잡는 동작하는 도구입니다.
QA 담당 라벨과 평가 일치도(κ)를 재고, 가드 적중률을 보여주는 대시보드입니다.
통화 중 실시간으로 미완결·부적절 응대를 가드하는 단계입니다.
통화 전사를 넣으면 응대 품질·완결성과 가드 플래그가 나오는 걸 시연합니다.
부적절·미완결 응대를 가드로 100% 잡는 걸 시연한다
측정: 가드 규칙, 표본: 통화 200건
일부러 만든 결측·부적절·미등록 통화 30종을 넣어도 평가가 멈추지 않고 처리되는 걸 시연합니다.
위 수치는 더미데이터 자가채점이며, 실제 응대 평가 정확도는 플릭 실데이터 + 실 검수자가 있어야 측정 가능합니다. 이 포트폴리오는 그 검증을 바로 돌릴 수 있는 상태까지 만듭니다.
수치는 합성 데이터 자가채점이라 성능 증명이 아닙니다. 면접에서는 데모 동작과 실검증 준비 상태로 솔직히 설명합니다.
정답을 작성자가 만들었으니 잘 맞는 것이 당연합니다. 결측·경계·미등록·표기 흔들림 케이스를 더미에 일부러 섞어 쉬운 문제만 푸는 게 아님을 보여줍니다.
judge 자기편향: 같은 모델 평가는 후할 수 있어 교차 채점·사람 spot-check 를 둡니다.
실제 도입 시 달라지는 것: 실 고객 데이터·환경이 더미와 다르므로 규칙·파이프라인을 실데이터로 맞춰야 한다(도입 단계 과제)
① 인라인 샘플 · ② seed.json 다운로드 · ③ 증강 프롬프트. 세 층 모두 동일한 schema 에서 파생.
음성 에이전트 통화를 응대 평가 입력으로 쓴다
| call_id | agent_raw | agent_id | goal | transcript | resolved | quality |
|---|---|---|---|---|---|---|
| VC900 | A봇(구) | — | 예약 | (전사 누락) | — | — |
| VC901 | 에이전트0 | ag0 | 환불 | 어... 잘 모르겠어요 끊을게요 | false | 0 |
| VC902 | 완벽 | ag2 | 세일즈 | (완벽 응대) | true | 1 |
| VC903 | 미등록봇 | — | 조사 | 부적절 발언 포함 | — | — |
| VC000 | 에이전트0 | ag0 | 예약 확인 | 전사 0. 네 예약 확인됐습니다 | true | 0.7 |
{"type":"object","properties":{"call_id":{"type":"string"},"agent_raw":{"type":"string"},"agent_id":{"type":["string","null"]},"goal":{"type":"string"},"transcript":{"type":"string"},"resolved":{"type":["boolean","null"]},"quality":{"type":["number","null"]}},"required":["call_id","agent_raw","agent_id","goal","transcript","resolved","quality"]}. 쉬운 데이터만 만들지 말 것. 다음 하드 케이스를 의도적으로 섞어라: transcript 누락, resolved/quality null(미평가), quality 0(미완결)/1(과신), agent_id null 미등록, 부적절 발언, agent_raw 표기 흔들림. 형식 깨뜨리기 시도 3건도 별도로.{"type":"object","properties":{"call_id":{"type":"string"},"agent_raw":{"type":"string"},"agent_id":{"type":["string","null"]},"goal":{"type":"string"},"transcript":{"type":"string"},"resolved":{"type":["boolean","null"]},"quality":{"type":["number","null"]}},"required":["call_id","agent_raw","agent_id","goal","transcript","resolved","quality"]}| LLM | 응대 품질 LLM-as-judge 평가 |
| Claude | 평가 본 모델 + 가드 |
| REST | 평가 API(`POST /eval-call`) |
✓ pass → 그대로 멈춰도 완성품입니다. 더 키우려면 2주차(평가-사람 일치도 검증)로 갑니다.
✓ pass → 여기서 멈춰도 완결입니다. 더 키우려면 3주차(실시간 가드)로 갑니다.
응대 평가 + 가드
{"type":"object","properties":{"call_id":{"type":"string"},"quality":{"type":"number"},"resolved":{"type":"boolean"},"flags":{"type":"array","items":{"type":"string"}},"note":{"type":"string"}},"required":["call_id","quality","resolved","flags","note"]}[
{
"call_id": "VC000",
"quality": 0.85,
"resolved": true,
"flags": [],
"note": ""
},
{
"call_id": "VC901",
"quality": 0.2,
"resolved": false,
"flags": [
"미완결 종료"
],
"note": "목표 미달성"
},
{
"call_id": "VC900",
"quality": 0,
"resolved": false,
"flags": [
"전사 결측"
],
"note": "확인 필요"
}
]resolved(완결 규칙)·flags(부적절·미완결)는 자동 검증, quality 는 QA 일치도로 검증.