Gartner는 2026년까지 B2B 고객 상호작용의 75%가 AI 에이전트에 의해 처리될 것으로 전망합니다. 하지만 CRM 데이터를 에이전트에 '얼마나, 언제' 주입할지를 설계하지 않으면, 빠른 모델도 느린 응답을 만들고 정확한 모델도 엉뚱한 답을 합니다.
Context Injection이란 무엇인가
Context Injection은 음성 에이전트가 응답을 생성하기 직전에, CRM·ERP·KB에서 필요한 고객 맥락을 LLM 프롬프트에 주입하는 기법입니다. RAG(Retrieval-Augmented Generation)의 음성 에이전트 버전이라고 볼 수 있지만, 결정적 차이가 있습니다.
텍스트 RAG는 2초 지연을 허용할 수 있다. 음성 에이전트에서 2초는 대화가 끊긴 것이다.
음성 채널에서는 검색 지연이 곧 침묵이 되기 때문에, 무엇을 넣느냐보다 언제 넣느냐가 먼저입니다.
설계 원칙: 많이 넣는 것이 아니라 빨리 맞는 것을 넣는 것
상담 이력 전체를 프롬프트에 붙이면 토큰 비용이 폭증하고 첫 토큰 지연이 늘어납니다. 실무에서는 3단계 계층으로 나누는 것이 효과적입니다.
Context Injection 계층 설계
Layer 1: Pre-loaded (통화 시작 전)
├── 고객 이름, 최근 구매 이력, VIP 여부
├── 지난 통화 요약 (1-2문장)
└── 토큰 예산: ~200 tokens
Layer 2: Intent-triggered (의도 파악 후)
├── 해당 제품 FAQ, 가격 정보
├── 미납 잔액, 납기 일정 (수금 시나리오)
└── 토큰 예산: ~300 tokens
Layer 3: On-demand (tool call)
├── 실시간 재고 조회, 예약 가능 슬롯
├── 배송 추적, 계약 상세 조건
└── 토큰 예산: 가변 (결과에 따라)Layer 1은 세션 생성 시점에 미리 로딩하므로 지연이 없습니다. Layer 2는 첫 발화의 intent가 확정된 후 비동기로 가져옵니다. Layer 3는 LLM이 도구를 호출할 때만 실행됩니다.
Anti-pattern: 흔한 실수 3가지
- 전체 상담 이력 덤프 — 최근 3건 요약으로 충분합니다. 50건 이력을 붙이면 LLM이 핵심을 놓칩니다.
- 동기 CRM 조회를 모든 턴에 실행 — 첫 턴에 한 번 로딩하고, 변경이 필요한 경우에만 갱신합니다.
- PII를 필터 없이 프롬프트에 삽입 — Zero Retention 환경에서는 마스킹 또는 조회 토큰 치환이 필수입니다.
Agentic RAG: 다음 단계
기존 RAG는 정적 검색입니다. 쿼리가 들어오면 벡터 DB에서 가장 가까운 청크를 가져옵니다. Agentic RAG는 에이전트가 검색 전략을 스스로 판단합니다. 첫 질문에서 KB를 검색할지, CRM API를 호출할지, 아니면 이전 턴 컨텍스트만으로 충분한지를 결정합니다.
Agentic RAG는 '무엇을 검색할까'가 아니라 '검색이 필요한가'부터 판단한다. — Meilisearch, 2026
이 판단 레이어가 추가되면 불필요한 검색 호출이 줄어들고, 결과적으로 응답 지연이 낮아집니다.
BringTalk의 Context Injection 설계
BringTalk는 LQA에서 리드의 CRM 상태, 최근 행동 이벤트, 캠페인 소스를 Layer 1으로 사전 로딩합니다. FUA에서는 이전 통화 요약과 미완료 액션을 주입해 '이전에 어디까지 이야기했는지'를 에이전트가 즉시 파악합니다. 모든 주입 데이터는 Zero Retention 경계 안에서 처리되며, 원본 PII는 Tool Server 뒤에서 마스킹됩니다.

