출처
Automating Customer Support with JSM Virtual Agent - Work Life by Atlassian
작성자:
Abhishek Rana (Senior Software Engineer),
Rajat Gupta (Senior Machine Learning Engineer)
발행일: 2025년 11월 24일
Atlassian의 Jira Service Management(JSM) Virtual Agent가 AI를 활용해 고객 지원을 자동화하고, 채팅 워크플로우를 간소화하며, 전 세계 팀에 더 빠르고 정확한 문제 해결 경험을 제공합니다.
Introduction
고객 지원은 빠르게 진화하고 있으며, 그 중심에는 자동화가 있습니다.
Jira Service Management(JSM) 팀은 AI를 활용해 지원 프로세스를 간소화하고, 사용자에게 더 빠르고 정확한 응답을 제공하기 위해 지속적으로 노력해 왔습니다.
이 글에서는 JSM Virtual Agent를 구축해 온 과정과 아키텍처, 그리고 실제로 만들어내고 있는 성과에 대해 소개합니다.
JSM이란?
Jira Service Management(JSM)는 Atlassian의 AI 기반 서비스 관리 솔루션입니다.
JSM을 통해 팀은 고객 요청을 손쉽게 접수하고, 추적하며, 관리하고, 해결할 수 있습니다.
고객은 다음과 같은 다양한 채널을 통해 요청을 제출할 수 있습니다.
이메일
헬프 센터
임베디드 위젯
Slack, Microsoft Teams와 같은 서드파티 앱
JSM 활용 사례
IT 지원 팀
기술 문제 해결 요청
신규 소프트웨어 접근 권한 요청 처리인사(HR) 팀
복지, 급여, 사내 정책 관련 문의 대응
JSM Chat 개요
JSM Chat의 간단한 데모를 살펴보겠습니다.
아래 예시처럼 고객이 JSM 헬프 센터를 통해 요청을 등록하면, Virtual Agent(VA) 봇이 먼저 문제 해결을 시도합니다.
봇이 해결하지 못할 경우, 사용자는 사람 상담원에게 이관할 수 있으며, 이 과정에서 JSM 티켓이 자동으로 생성됩니다.
이 데모는 가상 에이전트와 실제 상담원 간의 매끄러운 전환을 보여주며, 고객이 항상 필요한 도움을 받을 수 있도록 보장합니다.
채팅 아키텍처의 진화
Before
이전의 채팅 백엔드는 여러 한계를 가지고 있었습니다.
가장 큰 문제 중 하나는 채널별로 봇 응답이 일관되지 않았다는 점입니다.
예를 들어 웹 기반 인터페이스인 Portal과 Help Center는 서로 다른 백엔드를 사용하고 있었습니다.
Portal: Intent Flow만 지원
Help Center: AI 답변만 지원
AI 답변은 Atlassian 자체 LLM 모델 또는 OpenAI와 같은 서드파티 LLM을 활용해 생성되었습니다.
Intent Flow는 문자열 벡터화를 통한 유사도 매칭 방식으로 동작하며, 관리자가 트리 구조의 흐름을 사전에 설정할 수 있었습니다.
모든 채널에서 AI 답변을 제공하려면 총 6개의 서로 다른 백엔드를 수정해야 했고, 이는 10명 규모의 개발팀에게 매우 큰 부담이었습니다.
<이전의 JSM Chat 아키텍처>
Now
이러한 문제를 해결하기 위해 채팅 아키텍처를 전면 재설계했습니다.
채널 분류 (Channel Categorization)
고객 채널을 스트리밍 채널과 비스트리밍 채널로 구분했습니다.
스트리밍 채널 (Help Center, Portal 등)
→ AI 응답을 실시간으로, 한 글자씩 스트리밍하여 사용자에게 즉시 전달비스트리밍 채널 (Slack, MS Teams 등)
→ AI 응답을 모두 생성한 뒤 한 번에 전송
→ 실시간 스트리밍을 지원하지 않는 채널 특성에 최적화
통합 오케스트레이터 (Unified Orchestrator)
모든 채널에 대해 단일 오케스트레이터 서비스를 도입했습니다.
Slack, Help Center, Portal 등 어떤 채널에서 요청이 들어오든, 오케스트레이터가 이를 일관된 로직으로 처리하고 동일한 품질의 응답을 생성합니다.이를 통해 채널별 구현 복잡도를 줄이고, 응답 생성 방식을 표준화했습니다.
데이터 저장 (Data Storage)
다음과 같은 대화 관련 데이터는 DynamoDB에 안전하게 저장됩니다.
사용자 메시지
AI 응답
핸들러 정보
티켓 연결 정보
모든 데이터는 데이터 레지던시 정책을 준수하도록 설계되었습니다.
<현재 JSM Chat 아키텍처>
이 다이어그램은 스크립트 기반 응답에서 고도화된 AI 기반 시스템으로 발전한 과정을 보여줍니다.
각 단계는 고객 요청을 더 정확하고 효율적으로 이해하고 해결하기 위한 도약을 의미합니다.
AI 심층 분석: Virtual Agent의 동작 방식
심층 분석: 라우팅 전략
라우팅 전략
VA(가상 에이전트)가 활성화된 고객의 경우, (현재는 Atlassian Premium 고객 대상), 먼저 Intent 매칭 여부를 확인합니다.
VA가 비활성화된 경우, 즉시 사람 상담원으로 이관하고 JSM 티켓을 생성합니다.
- VA가 활성화되어 있고 신뢰도가 높은 Intent가 감지되면, Intent 메시지(Intent Message)를 바로 제공합니다. 그렇지 않은 경우, AI 생성 답변으로 전환합니다.
대화가 이어질 경우, 이전에 사용된 핸들러 정보를 DB에서 불러와 흐름을 유지합니다.
신뢰도 점수가 낮아지면 AI 답변으로 전환되며, 한 번 AI 생성 답변으로 전환된 경우, Intent Flow로 다시 돌아가지 않습니다.
심층 분석: 질의 흐름 및 구성
사용자 질의(Query)가 처리되는 전체 흐름
개인화(Personalisation)
사용자 위치, 프로필 등 정보를 활용해 응답을 더 적절하게 구성RAG (Retrieval-Augmented Generation)
Jira 티켓, 지식 베이스(KB) 등 다양한 검색 소스를 활용환각 방지(No Hallucinations)
부정확하거나 오해를 일으킬 수 있는 답변을 생성하지 않도록 안전 장치 적용
이 다이어그램은 사용자 입력부터 개인화, 검색, 최종 AI 응답 생성까지의 전체 여정을 보여줍니다.
심층 분석: 검색 및 랭킹
여러 개의 질의 변형을 생성한 뒤, 지식 베이스(KB)에서 관련 정보를 검색합니다.
각 질의는 서로 다른 결과를 반환할 수 있기 때문에, 가장 유용한 결과를 선별하는 과정이 필요합니다.
왜 상위 N개의 문서 구간을 추출해야 할까요?
검색 결과가 너무 많을 경우, 사용자가 혼란스러워질 수 있습니다.
반대로 결과가 너무 적으면, 최적의 답변을 놓칠 가능성이 있습니다.
이를 해결하기 위해 재랭킹(Reranking) 과정을 적용합니다.
랭킹 메커니즘
상위 N개의 문서 구간을 선정하기 위해 다음 점수들을 조합합니다.
Similarity Score
질의와 문서 구간을 임베딩으로 변환한 뒤, 코사인 유사도 기반 점수를 산출합니다.Cross Encoder Score
BERT 기반 Cross Encoder를 사용해 질의와 문서 구간을 함께 인코딩하고, 정교한 관련성을 평가합니다.Reciprocal Rank Fusion (RRF)
각 랭킹 결과의 순위를 기반으로 점수를 부여한 뒤 이를 합산해 최종 랭킹을 생성합니다.
단순하면서도 확장성이 뛰어나며, 여러 랭킹 방식의 장점을 효과적으로 결합합니다.
성과 및 결과
JSM Virtual Agent의 성과
자동화를 통해 해결률이 50% 증가했으며, JSM 채팅 요청의 약 50%를 AI로 처리
CSAT(고객 만족도) 40% 개선
20개 이상 언어 지원, 글로벌 고객 지원 환경 제공
추가 개선 사항
개선하기 위한 기능 추가
질의 변형(Query Variation)
여러 질의 변형을 생성해, 표현 방식이 달라도 적절한 KB 문서를 찾을 수 있도록 지원모호한 질의 감지(Vague Query Detection)
질문이 모호할 경우, 사용자에게 추가 정보를 요청COT 기반 환각 감지기
AI의 추론 과정을 분석해 신뢰할 수 없는 답변을 감지·차단
Conclusion
AI 기반 가상 에이전트는 고객 지원을 더 빠르고, 정확하며, 확장 가능하게 변화시키고 있습니다.
JSM은 지금까지의 성과를 자랑스럽게 생각하며, 자동화된 고객 지원의 미래를 기대하고 있습니다.









