안녕하세요! 오늘은 최근 IT 업계에서 가장 뜨거운 주제 중 하나인 AICC(인공지능 컨택센터)와 관련된 아주 흥미로운 시스템을 하나 소개해드리려고 합니다. 바로 ‘AICC 자동 인터뷰어’인데요.
혹시 AI와 대화해 보신 적 있으신가요? 보통은 텍스트로 타이핑을 치며 대화하는 챗봇 형태를 떠올리실 텐데요. 오늘 살펴볼 이 시스템은 단순히 글자로 대화하는 것을 넘어, 사람처럼 내 목소리를 듣고 자신의 목소리로 다음 질문을 던지는 똑똑한 ‘자동 인터뷰어’입니다. 개발 가이드 문서를 바탕으로, 이 복잡해 보이는 기술이 도대체 어떻게 돌아가는지 일반인 분들도 쉽게 이해하실 수 있도록 하나하나 친절하게 풀어드릴게요!
1. AI 면접관, 도대체 어떤 기술로 만들어졌을까?
이 똑똑한 AI 인터뷰어가 사람처럼 듣고 말하기 위해서는 여러 가지 최신 기술들이 마치 톱니바퀴처럼 맞물려 돌아가야 합니다. 핵심만 쏙쏙 뽑아볼까요?
- 서버와 뼈대 (FastAPI): 전체 시스템이 빠르고 안정적으로 돌아가도록 도와주는 중심 역할입니다.
- AI의 뇌 (Ollama + EXAONE 3.5): 외부 인터넷을 거치지 않고 내 컴퓨터 안에서 직접 돌아가는 강력한 한국어 특화 인공지능 모델을 사용합니다. 보안성도 좋고 대답도 아주 똑똑하게 해내죠.
- AI의 귀 (STT – faster-whisper): 사람이 말하는 음성을 실시간으로 듣고 텍스트로 변환해 주는 기술입니다.
- AI의 입 (TTS – edge-tts): 텍스트를 다시 자연스러운 사람의 목소리(한국어 남성 목소리 등)로 읽어주는 기술입니다.
- 마법의 노트 (RAG & ChromaDB): 인터뷰이가 과거 모임 등에 대해 질문하면, 저장된 데이터베이스를 슬쩍 참고해서 자연스럽게 대답할 수 있게 해주는 기억 장치입니다.
2. 물 흐르듯 자연스러운 인터뷰 진행 과정
그렇다면 실제 인터뷰는 어떤 흐름으로 진행될까요? 마치 실제 면접장에 온 것 같은 치밀한 과정을 거칩니다.
- 인사 및 첫 질문: 세션이 시작되면 AI가 미리 준비된 첫 번째 질문을 음성(TTS)으로 자연스럽게 읽어줍니다.
- 침묵 감지기 (VAD) 작동: 인터뷰이가 대답을 시작하면, AI는 조용히 듣고 있습니다. 말이 자연스럽게 끝맺어지면 2초, 완전히 조용해지면 5초 정도 기다렸다가 대답이 끝났다고 판단합니다. 눈치코치 백 단이죠!
- 질문일까? 대답일까?: 인터뷰이의 말이 끝나면 인공지능이 그 내용을 분석합니다. 만약 인터뷰이가 역으로 질문을 했다면 관련 데이터를 바탕으로 대답을 해주고, 평범한 대답이었다면 내용에 맞춰 ‘꼬리 질문’을 던지거나 다음 주제로 넘어갑니다.
- 마무리 및 결과 저장: 정해진 질문 개수가 끝나면 부드러운 마무리 멘트와 함께 인터뷰가 종료됩니다. 이후 모든 대화 내용과 녹화된 영상, 음성이 하나로 예쁘게 합쳐져 관리자에게 리포트로 제공됩니다.
3. 한눈에 보는 시스템 아키텍처 (개발자 감성 한 스푼 🥄)
말로만 들으면 조금 복잡하죠? 전체 시스템이 어떻게 소통하는지 아래 다이어그램으로 한눈에 살펴보세요. 복잡한 코드를 몰라도 데이터가 어떻게 흘러가는지 쉽게 이해하실 수 있을 거예요.
%%{init: {'theme': 'base', 'themeVariables': {'primaryColor': '#0a4a4a', 'primaryTextColor': '#aaffee', 'primaryBorderColor': '#00e5cc', 'lineColor': '#00e5cc', 'secondaryColor': '#062e2e', 'tertiaryColor': '#041e1e', 'clusterBkg': '#062e2e', 'clusterBorder': '#00e5cc', 'titleColor': '#aaffee', 'edgeLabelBackground': '#062e2e', 'fontFamily': 'monospace'}}}%%
flowchart LR
subgraph Client["🖥️ 사용자 인터페이스"]
A["인터뷰이 화면<br/>(순수 HTML/JS)"]
end
subgraph Server["⚙️ FastAPI 서버"]
B["세션 관리 및 오디오 수신"]
C["STT 엔진<br/>(음성을 텍스트로)"]
D["TTS 엔진<br/>(텍스트를 음성으로)"]
end
subgraph AI_RAG["🤖 인공지능 & 데이터베이스"]
F["Ollama EXAONE 3.5<br/>(두뇌 역할)"]
G["임베딩 모델<br/>(ko-sroberta)"]
H[("ChromaDB<br/>(기존 정보 DB)")]
end
A -- "① 음성 전송" --> B
B -- "② 음성 데이터" --> C
C -- "③ 텍스트 변환 결과" --> F
F -. "④ 모임 관련 질문 시" .-> G
G -. "⑤ 벡터 검색 요청" .-> H
H -. "⑥ 관련 분위기/정보 반환" .-> F
F -- "⑦ 꼬리 질문/답변 생성" --> D
D -- "⑧ 음성 파일 생성" --> B
B -- "⑨ 질문 재생" --> A
style A fill:#0e6e4d,stroke:#34d399,color:#d1fae5
style B fill:#0e4d6e,stroke:#38bdf8,color:#e0f9ff
style C fill:#0e4d6e,stroke:#38bdf8,color:#e0f9ff
style D fill:#0e4d6e,stroke:#38bdf8,color:#e0f9ff
style F fill:#2d1b4e,stroke:#c084fc,color:#f0d6ff
style G fill:#2d1b4e,stroke:#c084fc,color:#f0d6ff
style H fill:#0e4d6e,stroke:#38bdf8,color:#e0f9ff
style Client fill:#062e1e,stroke:#34d399
style Server fill:#041e2e,stroke:#38bdf8
style AI_RAG fill:#110a1f,stroke:#c084fc4. 헛소리를 원천 차단하는 똑똑한 필터링 기술
AI가 가끔 거짓말을 하거나 이상한 말을 지어내는 현상을 ‘할루시네이션(환각)’이라고 부릅니다. 이 자동 인터뷰어는 이런 문제를 막기 위해 아주 재미있고 철저한 안전장치들을 마련해두었어요.
- 침묵과 소음 걸러내기: 마이크에 아무 말도 안 했는데 “감사합니다”, “네”, “아” 처럼 무의미한 소음이 텍스트로 잡히면 AI가 이를 무시하고 다시 녹음을 요청합니다.
- TV 소음 필터링: 주변에서 틀어놓은 TV 소리 때문에 “MBC”, “KBS”, “SBS” 같은 단어가 섞여 들어오면 가짜 답변으로 인식하고 차단합니다.
- 메아리(Echo) 방지: 스피커에서 나오는 AI 자신의 목소리가 다시 마이크로 들어가는 것을 방지하기 위해, 직전 질문과 50% 이상 겹치는 단어가 들리면 자동으로 필터링합니다.
- 없는 사실 지어내지 않기: “인터뷰이가 말하지 않은 내용”을 억지로 엮어서 “말씀하셨으니~”라며 꼬리 질문을 지어내지 않도록 모델을 꼼꼼하게 통제합니다.
어떠신가요? 단순한 챗봇을 넘어 사람의 말을 듣고, 이해하고, 적절하게 반응하는 AICC 자동 인터뷰어 기술! 미래의 면접이나 상담은 정말 이렇게 똑똑하고 친절한 AI와 함께하게 될 날이 머지않은 것 같습니다.
다음에도 흥미롭고 유익한 IT 이야기로 찾아오겠습니다. 궁금한 점이 있으시다면 언제든 편하게 댓글 남겨주세요!
