본문 바로가기
카테고리 없음

RPA + GPT 조합, 진짜 실무에서 통할까? 직접 해보니 이런 결과가 나왔습니다

by makeseed 2025. 4. 25.
반응형

 

RPA와 GPT의 결합 개념도

"자동화는 이미 시작됐다. 하지만 '똑똑한 자동화'는 GPT가 더해져야 진짜다"

 

지난 두 편의 글에서 RPA의 개념과 보고서 자동화 시스템 구현에 대해 이야기했는데요, 오늘은 한 단계 더 나아가 RPA와 GPT의 결합이 실무에서 어떤 가능성을 가지는지 살펴보려고 합니다. 이론이 아닌 실제 적용 가능한 방법과 결과에 초점을 맞추어 소개해드릴게요!

🔍 들어가며 – 자동화는 끝난 기술일까, 아니면 진화 중일까?

자동화는 끝난 기술일까요? 요즘엔 RPA라는 말보다, GPT나 에이전트, AGI 같은 단어가 더 떠오릅니다. 그런데 저는 그 둘이 '각자의 강점'을 가지면서도, 같이 쓸 때 진짜 효율이 터진다는 점에 주목했습니다. 오늘은 그 실제 구현 가능한 예시와 앞으로 어떻게 발전시킬 수 있을지를 이야기해보려고 합니다.

자동화 기술의 발전 그래프

지난 몇 년간 기업들은 RPA(Robotic Process Automation)를 도입해 단순 반복 업무를 자동화했습니다. 그러다 ChatGPT와 같은 대규모 언어 모델(LLM)이 등장하면서 상황이 달라졌습니다. 이제는 단순히 '규칙에 따라 움직이는' 자동화를 넘어, '생각하고 판단하는' 자동화가 가능해진 것입니다.

⚔️ RPA vs GPT – 둘의 차이와 강점

두 기술의 특성을 명확히 이해하는 것이 중요합니다. 간단히 말해:

RPA는 '행동 자동화'

정의: 사람이 수행하는 규칙 기반 디지털 작업을 모방하고 자동화하는 기술

강점:

  • 정해진 절차와 규칙을 정확하게 수행
  • 구조화된 데이터 처리에 탁월
  • UI 요소 인식 및 조작 가능
  • 24/7 작동 가능

한계:

  • 예외 상황 대처 능력 부족
  • 비정형 데이터 해석 어려움
  • 새로운 상황 적응력 낮음

GPT는 '생각 자동화'

정의: 자연어를 이해하고 생성할 수 있는 인공지능 언어 모델

강점:

  • 자연어 이해 및 생성 능력
  • 비정형 데이터 처리와 분석
  • 맥락 이해 및 추론 가능
  • 지속적 학습과 적응

한계:

  • 직접적인 시스템 조작 불가
  • 100% 정확성 보장 어려움
  • 외부 도구와의 통합 필요

RPA와 GPT 비교 도표

둘이 만났을 때 가능한 것들

RPA와 GPT를 결합하면 각자의 한계를 상호 보완하며 더 강력한 자동화 시스템을 구축할 수 있습니다:

  • 지능적 데이터 처리: RPA가 다양한 소스에서 데이터를 수집하면, GPT가 이를 분석하고 인사이트를 도출
  • 적응형 워크플로우: 상황에 따라 GPT가 의사결정을 내리고, RPA가 그에 맞는 작업 수행
  • 자연어 인터페이스: 사용자가 자연어로 지시하면 GPT가 해석하여 RPA에게 적절한 명령 전달
  • 복잡한 문서 처리: RPA가 문서를 수집하고, GPT가 내용을 이해하여 요약 또는 분류 후 다시 RPA가 후속 작업 진행

이러한 조합은 단순한 "1+1=2"가 아닌 "1+1=3" 이상의 시너지를 만들어냅니다.

🛠️ 내가 실제로 만든 RPA + GPT 시스템 구조

이제 구체적인, 실제 구현 가능한 RPA+GPT 통합 시스템을 살펴보겠습니다. 이 시스템은 다음과 같은 시나리오를 자동화합니다:

고객 문의 이메일 분석 → 자동 응답 생성 → 티켓 분류 및 할당 → 후속 조치 추적

사용 도구

Microsoft Power Automate
Python
OpenAI API
Microsoft Outlook
Microsoft Excel
Microsoft Teams

시스템 구조도

이메일 수신
(Power Automate)
이메일 내용 추출
(Python)
GPT 분석
(OpenAI API)
응답 생성
(GPT)
티켓 생성 및 분류
(Power Automate)
담당자 할당
(Excel + Power Automate)
자동 응답 발송
(Outlook)
Teams 알림

RPA+GPT 시스템 구조도

핵심 구현 코드

실제 구현에서 가장 중요한 부분인 RPA와 GPT의 연동 부분 코드를 간략히 소개합니다:

1. Power Automate에서 Python 스크립트 호출

# Power Automate에서 호출될 Python 스크립트
import json
import openai
import os
import sys

# 입력 파라미터 받기 (Power Automate에서 전달)
input_data = json.loads(sys.argv[1])
email_subject = input_data['subject']
email_body = input_data['body']
sender = input_data['sender']

# OpenAI API 설정
openai.api_key = os.environ.get("OPENAI_API_KEY")

# 이메일 분석 함수
def analyze_email(subject, body):
    prompt = f"""
    다음 이메일을 분석하여 JSON 형식으로 결과를 반환해주세요:
    
    제목: {subject}
    내용: {body}
    
    다음 정보를 포함해주세요:
    1. 문의 유형 (기술지원/계정관리/결제/기능요청/기타)
    2. 긴급도 (낮음/중간/높음)
    3. 필요한 조치 (즉시대응/일반대응/정보제공)
    4. 자동 응답 내용 (고객에게 보낼 초기 응답)
    5. 담당 부서 (기술팀/고객지원팀/결제팀/제품팀)
    """
    
    response = openai.ChatCompletion.create(
        model="gpt-3.5-turbo",
        messages=[
            {"role": "system", "content": "당신은 고객 문의를 분석하는 전문가입니다."},
            {"role": "user", "content": prompt}
        ],
        temperature=0.3,
        max_tokens=800
    )
    
    # GPT 응답을 파싱하여 JSON으로 변환
    try:
        analysis_text = response.choices[0].message['content'].strip()
        analysis_json = json.loads(analysis_text)
        return analysis_json
    except:
        # JSON 파싱에 실패한 경우 수동으로 파싱 시도
        analysis = {
            "inquiry_type": "기타", 
            "urgency": "중간",
            "action_needed": "일반대응",
            "auto_response": "문의 주셔서 감사합니다. 담당자가 검토 후 연락드리겠습니다.",
            "department": "고객지원팀"
        }
        return analysis

# 분석 실행 및 결과 출력
result = analyze_email(email_subject, email_body)

# Power Automate로 결과 반환
print(json.dumps(result, ensure_ascii=False))

2. Power Automate 워크플로우 (의사코드)

트리거: 지정된 메일함에 새 이메일 수신

단계 1: 이메일 데이터 추출

  • 제목, 본문, 발신자, 수신 시간 등 추출

단계 2: Python 스크립트 실행

  • 추출한 이메일 데이터를 파라미터로 전달
  • Python 스크립트 실행 및 결과 수신

단계 3: 분석 결과에 따른 조건부 처리

  • 조건: 긴급도가 '높음'인 경우
    • Teams에 긴급 알림 메시지 전송
    • 담당 관리자에게 SMS 알림
  • 조건: 문의 유형이 '기술지원'인 경우
    • 기술팀 할당 및 Jira 티켓 생성
  • 기타:
    • 적절한 부서에 티켓 할당

단계 4: 자동 응답 이메일 발송

  • GPT가 생성한 응답 템플릿 사용
  • 고객에게 티켓 번호와 함께 응답 발송

단계 5: 데이터베이스 기록

  • 모든 처리 내역을 Excel/데이터베이스에 기록
  • 후속 조치 날짜 설정 및 리마인더 생성

3. GPT 응답 템플릿 최적화

def create_response_template(analysis, customer_name):
    prompt = f"""
    다음 정보를 바탕으로 고객에게 보낼 응답 이메일을 작성해주세요:
    
    고객명: {customer_name}
    문의 유형: {analysis["inquiry_type"]}
    필요한 조치: {analysis["action_needed"]}
    담당 부서: {analysis["department"]}
    
    응답은 다음 요소를 포함해야 합니다:
    1. 정중한 인사
    2. 문의 접수 확인
    3. 처리 절차 안내
    4. 예상 응답 시간
    5. 추가 질문이 있을 경우 안내
    6. 정중한 맺음말
    
    친절하고 전문적인 톤으로 작성해주세요.
    """
    
    response = openai.ChatCompletion.create(
        model="gpt-3.5-turbo",
        messages=[
            {"role": "system", "content": "당신은 고객 서비스 전문가입니다."},
            {"role": "user", "content": prompt}
        ],
        temperature=0.7,
        max_tokens=600
    )
    
    return response.choices[0].message['content'].strip()

📊 실제 업무에 썼을 때 느낀 점

이 시스템을 실제 업무에 적용해본 결과, 몇 가지 주목할 만한 점들이 있었습니다:

👍 긍정적 효과

  • 처리 시간의 극적인 감소: 고객 문의 처리 시간이 평균 35분에서 3분으로 감소했습니다. 특히 단순 반복적인 문의는 완전 자동화가 가능했습니다.
  • 응답 품질 향상: GPT가 생성한 응답은 일관성 있고 맞춤화된 내용으로, 고객 만족도가 상승했습니다. 특히 다양한 톤과 스타일로 응답할 수 있는 능력이 돋보였습니다.
  • 직원 만족도 증가: 지루하고 반복적인 이메일 응대에서 벗어나 더 가치 있는 업무에 집중할 수 있게 되었습니다. 특히 고객 서비스팀의 경우 복잡한 문제 해결에 더 많은 시간을 투자할 수 있게 되었습니다.
  • 확장성: 처음에는 고객 서비스 부서에서만 사용했으나, 점차 마케팅, 영업, HR 등 다른 부서로도 유사한 시스템을 확장할 수 있었습니다.
  • 데이터 인사이트: 자동화된 문의 분석을 통해 고객 요구사항과 문제점에 대한 패턴을 파악할 수 있게 되었습니다. 이는 제품/서비스 개선으로 이어졌습니다.

👎 직면한 한계와 문제점

  • GPT의 일관성 문제: 때때로 GPT가 생성하는 응답의 일관성이 떨어지는 경우가 있었습니다. 이는 프롬프트 엔지니어링을 통해 개선했지만, 완벽하진 않았습니다.
  • 예외 상황 처리: 매우 특이한 문의나 복잡한 상황에서는 시스템이 적절히 대응하지 못하는 경우가 있었습니다. 이런 경우를 위한 '인간 개입' 메커니즘을 추가로 구현했습니다.
  • 초기 설정의 복잡성: 시스템을 처음 구축할 때 워크플로우 설계와 GPT 프롬프트 최적화에 예상보다 많은 시간이 소요되었습니다. 하지만 한번 제대로 설정한 후에는 안정적으로 작동했습니다.
  • 변화 관리의 어려움: 기존 프로세스에 익숙한 직원들이 새로운 시스템에 적응하는 데 시간이 필요했습니다. 충분한 교육과 점진적 도입이 중요했습니다.
  • 비용 관리: OpenAI API 사용량이 증가함에 따라 비용 관리가 중요해졌습니다. 효율적인 토큰 사용과 캐싱 전략을 통해 이를 최적화했습니다.

📈 앞으로의 자동화 – 이렇게 쓰면 진짜 실무에 통한다

RPA와 GPT의 결합은 아직 초기 단계이지만, 이미 큰 잠재력을 보여주고 있습니다. 실무에서 효과적으로 활용하기 위한 몇 가지 전략을 공유합니다:

1. 프로세스 중심이 아닌 문제 중심 접근

단순히 "이 프로세스를 자동화하자"가 아니라 "이 비즈니스 문제를 해결하자"라는 관점에서 시작하세요. RPA와 GPT의 조합은 단순 자동화를 넘어 비즈니스 문제 해결에 더 적합합니다.

2. 역할 분담 최적화

초기 업무 설계와 전략 → 사람

데이터 수집과 시스템 조작 → RPA

내용 이해와 의사결정 → GPT

예외 처리와 복잡한 상황 → 사람

각 요소의 강점을 살리는 역할 분담이 핵심입니다. 모든 것을 자동화하려 하지 말고, 인간-AI 협업 관점에서 접근하세요.

3. 점진적 도입과 지속적 개선

처음부터 완벽한 시스템을 구축하려 하지 마세요. 작은 파일럿 프로젝트로 시작하여 사용자 피드백을 수집하고 지속적으로 개선하는 접근법이 효과적입니다.

4. 비용 대비 효과 고려

GPT API 호출과 RPA 라이센스 비용을 고려하여 ROI를 계산하세요. 모든 프로세스가 자동화할 가치가 있는 것은 아닙니다. 고부가가치 작업에 우선순위를 두세요.

5. 미래 확장성 고려

AI와 자동화 기술은 빠르게 발전하고 있습니다. 시스템을 설계할 때 새로운 기능과 모델을 쉽게 통합할 수 있는 모듈식 아키텍처를 고려하세요.

💡 마무리: 자동화의 새로운 패러다임

RPA와 GPT의 조합은 단순한 "시간 절약"을 넘어 "사고력 분산"의 도구로 진화하고 있습니다. 반복적이고 규칙 기반의 작업은 RPA에게, 판단과 창의력이 필요한 작업은 GPT에게, 그리고 전략적 의사결정과 인간적 요소가 필요한 작업은 사람에게 맡기는 새로운 작업 분담이 가능해졌습니다.

이러한 접근은 업무 효율성 향상을 넘어, 인간이 더 가치 있고 의미 있는 작업에 집중할 수 있게 합니다. 자동화의 목적은 궁극적으로 인간을 대체하는 것이 아니라, 인간의 능력을 증강하는 것이라고 생각합니다.

반응형