Tech Dive

지니 TV AI 에이전트: 대화로 완성되는 미디어 경험

TV 속의 AI, 그 한마디 뒤에 있는 기술


“지니야, 오늘 볼 만한 로맨스 드라마 추천해줘.”

한 문장만 말했을 뿐인데, TV는 사용자의 취향을 기억하고 수십 개의 콘텐츠 중에서 딱 맞는 작품을 추천합니다.

이 자연스러운 경험의 뒤에는 Master Agent의 자체 의도 분류 모델을 통한 오케스트레이션 시스템, 프롬프트로 동작하는 Sub-Agent의 협업 구조가 있습니다.

지니 TV AI 에이전트는 단순한 질의응답 엔진이 아닙니다. 대화의 맥락을 이해하고 기억하며, 사용자에게 최적의 행동을 결정하는 대화형 서비스 플랫폼으로 설계되었습니다.

1.jpg



1. 들어가며

TV는 여전히 거실 미디어 소비의 중심입니다.

가족이 모여 뉴스를 보고, 아이가 애니메이션을 보고, 부모가 드라마를 즐기는 공간에서 TV는 가장 큰 스크린이자 가장 오래된 미디어 허브로 자리하고 있습니다.

하지만 그 중심에 놓인 리모컨 기반의 인터페이스는 크게 달라지지 않았습니다.

검색어를 입력하려면 버튼을 여러 번 눌러야 하고, 추천 목록은 개인의 취향을 섬세하게 반영하지 못합니다. TV는 방대한 콘텐츠를 품고 있지만, 사용자는 여전히 그 안에서 원하는 정보를 쉽게 찾지 못하는 불편함을 느낍니다.

이제 TV는 더 이상 단순히 콘텐츠를 재생하는 기기가 아니라, 사용자와 대화하며 함께 탐색하는 지능형 파트너로 진화하고 있습니다.

지니 TV는 이러한 변화의 중심에 있습니다.

“오늘 경제 뉴스 알려줘.”
“강하늘 나오는 요리 드라마 틀어줘.”
“아기한테 들려줄 동요 추천해 줘.”
이처럼 사용자는 리모컨 대신 음성으로 명령하고, 지니 TV는 대화로 응답합니다.

지니 TV는 음성 한마디로 정보 검색, 콘텐츠 추천, 기기 제어, 일상 대화까지 가능한 대화형 UX(Conversational UX)를 제공합니다.

이 글에서는 이러한 사용자 경험을 가능하게 하는 내부 기술 구조를 중심으로, 지니 TV의 대화형 에이전트 시스템이 사용자 발화를 어떻게 이해하고, 어떤 에이전트를 선택해, 최종적으로 사용자에게 자연스러운 응답을 생성하는지를 자세히 살펴보겠습니다.


2. 지니 TV AI 에이전트의 시스템 아키텍처

사용자가 “지니야, 오늘 주요 국내 뉴스 요약해 줘”라고 말하면, 음성 인식(STT)을 거친 텍스트는 Master Agent의 오케스트레이션 레이어로 전달됩니다.

이 레이어는 발화의 의미를 분석하고, 자체 의도 분류 모델(Meta Intent Classifier, MIC) 을 통해 가장 적합한 Sub Agent를 선택합니다.

선택된 Agent는 필요한 정보를 조회하거나 reasoning을 수행해 결과를 생성하며, LangGraph는 전체 실행 흐름과 상태를 지속적으로 제어합니다.

지니 TV의 대화형 AI 시스템은 사용자의 발화를 단순한 음성 명령으로 처리하지 않습니다.

대화의 의도(Intent)를 파악하고, 맥락(Context)을 반영하며, 그에 맞는 전문 에이전트(Sub-Agent)를 호출해 결과를 생성하는 LangGraph 기반 오케스트레이션 구조로 설계되어 있습니다. 이 과정은 단일 모델 호출이 아니라, 여러 구성 요소가 순차적으로 협업하는 파이프라인 형태로 이뤄집니다.

아래 그림은 지니 TV의 핵심 구성 요소와 데이터 흐름을 요약한 시스템 아키텍처입니다.

01.png



3. 미디어 Agent 핵심 구현 기술

Media Agent는 크게 Master AgentSub Agent 두 영역으로 나뉘며, Master Agent가 전체 대화의 맥락을 제어하고 Sub Agent들이 실제 Task를 수행합니다.

3-1. 미디어 Agent 핵심 기술(1): Master Agent

Master Agent는 지니 TV 대화 시스템의 중앙 제어 허브입니다. 사용자의 발화를 입력받아 대화 상태를 관리하고, 적절한 Sub Agent를 선택하며, 결과를 통합하는 역할을 합니다.

Orchestration Layer

  • Session/Context Management
         - 대화 세션의 상태와 맥락(Context)을 유지하며 최근 발화(STM)와 사용자 프로필(LTM)을 대화에 활용하여 의미
           있는 대화가 가능하도록 합니다.
         - Sub-Agent Router 분류 결과에 따라 적절한 Sub Agent로 요청을 전달합니다.
  • Model Orchestrator
         - Meta Intent Classifier / Azure Open AI /SOTA-K GPT-4o 기반 한국적 AI 모델 등 Task 수행에 필요한 모
            델을 선택합니다.
  • API Interface
         - 대화 서버 연동, 검색(Serper/Wiki) 시스템과의 연결을 담당합니다.

Memory Operation

  • 사용자 대화 History 유지 및 관심사를 알기 위해 필수적인 구성 요소로, LangGraph가 대화의 “흐름”을 설계한다면, Memory Operation은 “기억”을 담당합니다.
  • STM과 LTM은 Master Agent 내부에서 LangGraph의 각 노드로 함께 전달되어, 모든 에이전트가 동일한 사용자 정보를 공유할 수 있도록 합니다.
        - Short-Term Memory(STM) : 세션 내 최근 대화를 유지하여 최대 N턴까지 대화 내용을 저장합니다.
        - Long-Term Memory(LTM): 사용자 프로필, 활동 정보, 선호 장르 등을 장기적으로 축적하여 개인화 응답에 활용 합니다.사용자 프로필(00개) / 사용자 활동 정보(00개)

Policy Management

  • Master Agent의 동작 정책을 담당합니다.
  • 사용자 발화에 따라 Master Agent 흐름을 xml로 관리합니다.

Cache Management

  • 기존 지니 TV 발화 중 약 40%를 캐시 데이터로 적용하여 고빈도 발화에 대한 빠른 응답을 제공합니다.(기존 150ms~250ms → 50ms~100ms)
        - 전체 데이터 중 빈도 5천회 이상 신뢰할 수 있는 고빈도 발화 선별 : 디바이스 제어(TV제어, 채널이동,단말제어 등)/날씨/                 시간 발화 등

Device Interface

  • 지니 TV 단말 연동 인터페이스를 담당하는 부분으로 단말 인증, 토큰 발급 및 갱신 역할을 담당합니다.
  • 단말 연동 시 신규 규격을 정의하며, 셋탑 개통 시에 토큰 유효성 검증 등 서비스 보안을 준수합니다.

3-2. 미디어 Agent 핵심 기술(2): Sub Agent

Sub Agent는 Master Agent의 오케스트레이션 하에 개별 Task를 수행하는 전문 모듈형 AI로, 독립된 System Prompt를 기반으로, 주어진 Context를 해석하고 해당 도메인에 맞는 최적의 응답을 생성합니다.

LangGraph 기반 오케스트레이션

  • Sub Agent는 LangGraph 제어 구조로 설계되어 있습니다.
  • LangGraph는 “어떤 작업을 어떤 순서로 수행할지”를 결정하는 감독(Director) 역할로, 각 LLMTask는 그 지시에 따라 “어떻게 생각하고, 판단하고, 응답을 만들지”를 수행하는 사고자(Thinker)로 동작합니다.
        (LangGraph는 각 Agent의 실행 순서와 전이 조건을 제어하며, 필요시 Fallback 노드로 복귀하거나 다른 노드로              진행하는 역할을 수행함)

05.png

Sub Agent의 3-Layer 구조

  • 각 Sub Agent는 사고(Reasoning)–판단(Decision)–행동(Action) 을 수행할 수 있도록 3-Layer 구조로 설계되어 있습니다.
  • 이 구조는 단순히 입력과 출력의 연결이 아니라, 모델이 복잡한 맥락을 단계적으로 이해하고 판단하도록 돕는 계층형 프롬프트(Layered Prompt) 구조를 기반으로 합니다.
  • 즉, LLM이 한 번에 긴 지시를 해석하는 대신 ① Context를 이해하고 (Input Layer)→ ② 사고의 구조를 설정하며(Reasoning Layer) → ③ 실행과 보정(Output Layer)을 수행하는 3단계 절차적 사고(Structured Reasoning) 를 따릅니다.
  • 각 Layer는 서로 명확히 분리되어 있어, 모델이 불필요한 추론이나 환각(hallucination)을 일으키지 않도록 제어합니다.

02.png



Sub Agent 구성 및 역할

  • Sub Agent들은 각각의 목적에 맞게 최적화된 프롬프트와 LLM 모델을 사용합니다.(모델은 지속 변경/업데이트)
  • 현재 SOTA K 등이 적용됐으며 한국 가정 댁내 최적화된 환경 제공을 위한 멀티 LLM 연동 확장과 멀티모달 모델 확보를 추진중입니다.
  • 이처럼 지니 TV는 Multi-LLM 전략을 통해 품질과 비용의 균형을 유지하면서도 사용자에게 지연 없는 자연스러운 대화 경험을 제공합니다.

07.png



3-3. 의미 있는 정보를 기억하는 LTM(Long-Term Memory) 동작 방식

지니 TV의 AI는 단순히 “지금”의 대화만 이해하지 않습니다. 사용자의 말 속에서 장기적으로 의미 있는 정보를 추출해 기억하고, 이후 대화에 반영합니다. 이 기능이 바로 LTM(Long-Term Memory) 입니다.

LTM 정보 생성 기준 및 업데이트

  • 지니 TV는 “충분히 의미 있는 대화가 쌓였을 때”만 장기 기억을 생성합니다.
  • LTM은 기억해야 할 정보와 잊어야 할 정보를 구분하며, “사용자에게 유의미한 맥락”만 선별적으로 저장하도록 설계되어 있습니다.

06.png



LTM 정보 생성 단계

  • LTM Trigger가 발동하면 다음 단계로 기억이 생성됩니다.

03.png



4. 발화 의미를 분석하는 자체 의도 분류 모델(Meta Intent Classifier)

4-1. 의도 분류 모델 학습 데이터

데이터 수집 및 정제

  • 데이터셋은 실제 상용 환경에서 직접 수집한 기가지니 서비스 로그를 기반으로 구축했습니다.
  • 자연스러운 사용 패턴을 폭넓게 반영하기 위해, 사용자 의도/대화 맥락/기기별 명령의 다양성을 확보했고 언어적 변이, 철자 오류, 비격식적 표현 등을 포함하여 실제 사용 환경을 반영했습니다.


수작업 라벨링 및 자동화

  • Post-training 데이터셋은 약 9만 건의 라벨링 데이터를 상용로그에서 선별하여 구성했으며 수집된 데이터 내에서 특정 클래스의 빈도수가 낮을 경우, 외부 API를 사용해 합성 데이터를 증강하여 보완했습니다.
  • 또한 코퍼스의 다양성을 확보하기 위해, edit distance가 매우 짧은 유사 중복 데이터를 최소화하고 클래스 정의를 세분화하여 명확한 결정 경계를 수립했습니다.
  • 이 접근 방식은 의미적으로 유사한 발화들을 군집화함으로써, 중복된 샘플을 식별 및 제거하면서도 대표성을 가진 다양한 샘플을 유지할 수 있었습니다.


품질 보증 및 반복적 개선

  • 데이터 커버리지의 부족과 클래스 불균형 문제를 해결하기 위해 아래와 같은 방식으로 반복 개선 과정을 수행했습니다.
        - 외부 API 증강: 외부 API를 활용하여 대상 의도와 관련된 합성 발화 생성
        - 규칙 기반 생성: 슬롯 채우기 템플릿과 조건문 기반의 예시 자동 생성
        - 타깃 리샘플링: 최신 로그에서 실제 사용자의 신규 발화 패턴을 선별적으로 추가
  • 학습 데이터에 사용된 의도는 여러 분야의 중간 수준 카테고리로 구성되어 있으며 의도의 예시는 아래와 같습니다.
        - Weather, QA, Chit-Chat, Media,TVPower 등
  • 카테고리 정보(의도)는 서비스 개선 방향에 맞추어 지속 확장 중에 있습니다.


4-2. 의도 분류 모델 학습 방법론
Meta Intent Classifier 모델 학습은 sLM 모델 A/B 기반으로 파인튜닝을 수행했습니다. 미세 조정 방식은 실험을 통해 충분한 라벨 데이터가 존재할 때는 full fine-tuning이 가장 효과적임을 확인했지만, 데이터가 부족한 상황에서는 비효율적임을 확인했습니다. 이를 기반으로 저희는 아래의 특징을 가진 PEFT 방식을 채택했습니다.

08.png

세부적으로 저희는 LoRA 기반의 PEFT 접근법을 채택하고, 4비트 양자화를 적용했습니다. 즉, 기본 모델은 4비트 정밀도로 양자화되어 동결되었으며, low-rank adapter layers만 미세 조정되었습니다. 그리고 Meta Intent Classifier 학습은 Microsoft Azure 환경에서 NVIDIA H100 Tensor Core GPUs (80GB SXM5)를 사용하여 분산 학습의 형태로 수행되었습니다. 마지막으로 추론 단계에서는 대규모 언어 모델을 위해 설계된 고 처리량 및 메모리 효율적 추론 엔진인 vLLM를 분산 컴퓨팅 프레임워크와 통합하여 추론 효율성을 높였습니다.

4-3. 의도 분류 모델 평가

Meta Intent Classifier 모델 평가를 위해 각 유형별로(단일의도-싱글턴, 단일의도-멀티턴, 복합의도-싱글턴) 아래 두 가지 주요 지표를 사용하여 모델의 전반적인 예측 정확도를 평가하고, 정밀도-재현율 간의 균형과 클래스 분포의 불균형 영향을 함께 고려했습니다.

09.png



아래 표와 같이 sLM-A 기반 PEFT 진행한 모델이 모든 유형에서 더 높은 성능을 보여주었으며, 특히 sLM-B와 비교 시 단일의도-멀티턴과 복합의도-싱글턴에서 우위 성능을 보였습니다.

04.png



5. Media Agent 적용 후 개선된 사용자 경험

QA 와 미디어 검색 서비스

Agent 적용으로 QA 서비스와 미디어 QA 서비스가 한층 더 진화했습니다. 사용자의 자연어 질의를 세밀하게 이해하고, 컨텐츠의 맥락에 맞는 정보를 정확하게 찾아 제공합니다. 그 결과, 단순한 검색을 넘어 사용자의 의도에 맞춘 새로운 컨텐츠 탐색 경험이 가능해졌으며 문맥 이해력과 콘텐츠 매칭 정밀도를 높여, 더 직관적이고 풍부한 미디어 서비스를 제공합니다.


10.png

멀티턴 대화 가능 서비스

멀티턴 대화 기술을 적용해 미디어 서비스가 한층 더 스마트하게 진화했습니다. 사용자의 연속된 질의를 맥락 속에서 이해하고 반응함으로써, 보다 자연스럽고 인간에 가까운 대화 경험을 제공합니다.

11.png

적용 화면(예)

12.png



언론 홍보 기사



6. Lessons & Learned

기술적 교훈(Lesson)

지니 TV AI 에이전트의 구축 과정은 대화형 경험을 설계하는 시스템적 접근의 중요성을 다시 한번 확인할 수 있었습니다. 이 프로젝트를 통해 우리는 “대화”가 단순한 문장 생성이 아니라, 맥락·기억·행동이 통합된 시스템 설계의 결과임을 배웠습니다. 우리는,

13.png


앞으로의 방향

지니 TV AI 에이전트는 말을 이해하고, 기억하며, 맥락을 이어가는 첫 번째 거실형 인공지능입니다.

그 한마디 뒤에는 수많은 그래프 노드와, 프롬프트의 계층적 사고, 그리고 LLM을 넘어선 시스템적 사고가 있습니다.

앞으로도 지니 TV는 “사용자 한 사람의 맥락을 기억하는 AI”, “일상 속에서 자연스럽게 대화하는 파트너”를 향해 끊임없이 진화해 나가겠습니다.

지니 TV의 AI 시스템은 이제 실제 사용자의 일상 속으로 깊이 들어가고 있습니다. 향후에는 더 다양한 외부 데이터와 도메인별 Sub-Agent를 확장하여, TV가 단순히 콘텐츠를 보여주는 기기가 아니라 사용자 삶의 일부로 작동하는 지능형 파트너가 될 것입니다.

황시내, 김은현, 강승민

황시내 : 미디어 Agent 설계 및 개발을 리딩하고 있으며 확장 가능한 AI Agent 기술을 연구하고 있습니다.

김은현 : AI Agent의 사고 흐름과 프롬프트 최적화를 중심으로 멀티모델 대화 시스템을 개발하고 있습니다.

강승민 : AI Agent 관련 기술 연구 개발과 의도 분류 모델의 데이터 설계 및 성능향상 연구를 수행하고 있습니다.

이전 글