Copilot Power Automation: GPT 기반 워크플로우 설계 실습
- ‘라즈베리파이 기반 엣지 AI 자율주행 세그멘테이션 모델 상용화 추진’을 가정
- 구체적인 예시 워크플로우를 설계하기
- Power Automate를 워크플로우 관리 시스템으로 활용
- GPT는 OpenAI API 또는 Azure OpenAI Service를 통해 연동하는 시나리오를 따름
1. 고객 기술 문의 심층 분석 및 지원 티켓/알림 자동화
- 목표
- 고객의 비정형 기술 문의 이메일을 LLM이 분석하여 핵심 문제, 심각도, 예상 해결책을 파악하고,
- 이를 기반으로 지원 시스템에 티켓을 생성하고 담당 팀에 알림을 자동화함
- 워크플로우 단계
- 트리거 (Outlook)
- 특정 고객 지원 이메일함으로 새 이메일 도착
- 이메일 내용 추출 (Power Automate)
- Power Automate가 수신된 이메일의 제목, 본문, 발신자 정보를 추출함
- LLM 분석 요청 (Power Automate ➜ GPT)
추출된 이메일 본문을 GPT에 전송하여 분석을 요청함
GPT 프롬프트 예시
#Role: 숙련된 기술 지원 엔지니어 다음 고객 문의 이메일 본문을 분석하여 다음을 JSON 형식으로 추출하고, 잠재적인 해결책을 제안해 줘: { "핵심문제_요약": "1-2문장으로 요약", "심각도": "High/Medium/Low 중 하나", "예상_해결책": ["해결책 1", "해결책 2", "..."], "키워드": ["키워드 1", "키워드 2", "..."] } 고객 문의 이메일 본문: "안녕하세요, 저희는 [고객사명]입니다. 최근 라즈베리파이 5에 엣지 AI 세그멘테이션 모델을 배포했는데, 주행 중 카메라 영상이 멈추는 현상이 간헐적으로 발생합니다. 특히 고속 주행 시 더 심합니다. 모델을 경량화했는데도 이런 현상이 나타나네요. 빠른 지원 부탁드립니다."
- 분석 결과 수신 (GPT ➜ Power Automate)
- GPT가 분석된 JSON 데이터를 Power Automate로 반환
- 조건부 처리 (Power Automate)
- Power Automate가 GPT가 분석한 ‘심각도’에 따라 다음 단계를 분기함
- 조건: 심각도 = “High”
- Power Automate가 GPT가 분석한 ‘심각도’에 따라 다음 단계를 분기함
- 티켓 생성 (Power Automate ➜ Jira/서비스나우)
- GPT가 추출한 정보(핵심 문제, 예상 해결책, 키워드, 심각도)를 바탕으로 Jira(또는 서비스나우 등)에 기술 지원 티켓을 자동 생성
- Jira 이슈 제목: [고객사명] [GPT_핵심문제_요약] - [GPT_심각도]
- Jira 이슈 내용: GPT 분석 결과 + 이메일 원본 링크
- GPT가 추출한 정보(핵심 문제, 예상 해결책, 키워드, 심각도)를 바탕으로 Jira(또는 서비스나우 등)에 기술 지원 티켓을 자동 생성
- 알림 발송 (Power Automate ➜ Teams)
- 담당 기술 지원 팀의 Teams 채널에 새로 생성된 Jira 티켓 링크와 GPT의 핵심 분석 내용을 알림 메시지로 게시
- 심각도 “High”인 경우 별도 알림
- 고객 자동 응답 (Power Automate ➜ Outlook)
- 고객에게 문의가 접수되었고 곧 담당자가 연락할 것이라는 자동 응답 이메일을 보냄
- 이메일 본문은 GPT가 생성할 수도 있음
- 트리거 (Outlook)
- 설계 시 유의사항
- 프롬프트의 견고함
- GPT가 다양한 유형의 이메일을 안정적으로 파싱하여 구조화된 JSON을 출력하도록 프롬프트를 정교하게 설계해야 함
- 오류 처리
- GPT API 호출 실패, JSON 파싱 오류 등에 대한 오류 처리 로직을 Power Automate에 반드시 포함해야 함
- 휴먼 인 더 루프
- 생성된 티켓 내용의 최종 확인 및 심각도 재조정을 위해 담당자의 승인 단계를 추가할 수 있음
- 프롬프트의 견고함
2. 시장 동향 보고서 초안 자동 생성 및 공유
- 목표
- 특정 키워드를 포함하는 온라인 뉴스/게시물을 주기적으로 수집하고,
- GPT가 이를 분석하여 시장 동향 보고서 초안을 자동 생성한 후,
- 관련 팀에 공유함
- 워크플로우 단계
- 트리거 (예약된 클라우드 흐름)
- 매주 월요일 오전 9시에 흐름이 시작됨
- 뉴스/게시물 수집 (Power Automate)
- RSS 피드, 특정 웹사이트 크롤링(Desktop flow 연동), 또는 특정 키워드 검색을 통해 온라인 뉴스 및 게시물 URL 및 텍스트를 수집
- 예: “라즈베리파이”, “엣지 AI”, “자율주행 세그멘테이션” 등
- RSS 피드, 특정 웹사이트 크롤링(Desktop flow 연동), 또는 특정 키워드 검색을 통해 온라인 뉴스 및 게시물 URL 및 텍스트를 수집
- 각 게시물 LLM 요약 (Power Automate ➜ GPT)
수집된 각 게시물의 텍스트를 GPT에 전송하여 3문장 요약을 요청
GPT 프롬프트 예시
#Role: 시장 분석 리서처 다음 [기사 텍스트]를 '라즈베리파이 엣지 AI 자율주행 시장 동향' 관점에서 3문장으로 간결하게 요약해 줘. 기사 텍스트: [수집된 기사 텍스트]
- 전체 동향 분석 및 보고서 초안 생성 (Power Automate ➜ GPT)
모든 개별 요약을 취합하여 GPT에 전송, 주간 시장 동향 보고서 초안을 요청함
GPT 프롬프트 예시
#Role: 선임 시장 분석가 다음은 이번 주 '라즈베리파이 엣지 AI 자율주행 시장' 관련 주요 기사 요약들입니다. [취합된 모든 기사 요약 리스트] 이를 바탕으로 '주간 시장 동향 보고서' 초안을 작성해 줘. 보고서는 다음 섹션을 포함해야 해: 1. 금주 주요 동향 요약: 3가지 핵심 동향을 불릿 포인트로 제시 2. 시장 시사점: 우리 프로젝트에 미치는 영향 분석 (긍정적/부정적) 3. 참고 기사 목록: 각 기사의 제목과 요약, 원본 URL을 포함 (수집된 정보 활용) 보고서의 톤은 전문적이고 객관적이어야 해.
- 문서 생성 (Power Automate ➜ SharePoint/Word)
- GPT가 생성한 보고서 초안 텍스트를 SharePoint 문서 라이브러리에 새 Word 파일(
.docx)로 생성하고 저장
- GPT가 생성한 보고서 초안 텍스트를 SharePoint 문서 라이브러리에 새 Word 파일(
- 알림 및 공유 (Power Automate ➜ Teams/Outlook)
- 관련 팀의 Teams 채널에 보고서 생성 및 SharePoint 링크를 알림 메시지로 게시하고,
- 관련 경영진에게는 이메일로 알림을 보냄
- 트리거 (예약된 클라우드 흐름)
- 설계 시 유의사항
- 정보 필터링
- 수집된 기사 중 관련 없는 내용을 걸러내는 필터링 단계를 Power Automate에 추가해야 함
- 예: 특정 키워드가 일정 수 이상 포함된 경우에만 처리
- 수집된 기사 중 관련 없는 내용을 걸러내는 필터링 단계를 Power Automate에 추가해야 함
- 프롬프트 복잡성
- 여러 요약 내용을 취합하여 하나의 보고서로 만드는 GPT 프롬프트는 매우 정교하게 설계해야 함
- 문서 서식
- Power Automate에서 Word 문서를 생성할 때,
- 템플릿을 활용하여 기본적인 서식(헤더, 본문 스타일 등)을 적용하도록 설정할 수 있음
- 정보 필터링
3. 개발팀 주간 요약 보고서 및 회의록 핵심 추출
- 목표
- Teams 채널의 주간 개발 현황 업데이트와 주간 회의 미팅 대본을 GPT가 분석하여,
- 팀 리더를 위한 주간 요약 보고서와
- 회의록의 핵심 결정 사항/액션 아이템을 추출하여
- 자동으로 문서화함
- 워크플로우 단계
- 트리거 (예약된 클라우드 흐름)
- 매주 금요일 퇴근 시간에 흐름이 시작됨
- 데이터 수집 (Power Automate)
- 지난주 월요일부터 금요일까지의 특정 Teams 채널(예:
#개발_현황) 메시지를 수집함 - 지난주 ‘주간 개발 회의’ 미팅 대본(Teams 미팅에서 자동 생성된 텍스트)을 수집함
- 지난주 월요일부터 금요일까지의 특정 Teams 채널(예:
- LLM 분석 요청 (Power Automate ➜ GPT)
수집된 Teams 메시지와 미팅 대본 텍스트를 GPT에 전송하여 분석을 요청함
GPT 프롬프트 예시
#Role: 팀 리더를 위한 비서 다음은 지난주 개발팀의 팀즈 채널 메시지와 주간 개발 회의 미팅 대본입니다. [Teams 채널 메시지]: [수집된 Teams 메시지 텍스트] [미팅 대본]: [수집된 미팅 대본 텍스트] 이를 바탕으로 다음을 수행하여 JSON 형식으로 출력해 줘: 1. 주간 개발 현황 요약: 팀 리더가 빠르게 파악할 수 있도록 3가지 핵심 개발 현황을 불릿 포인트로 요약 2. 주요 문제점/병목 현상: 팀즈 메시지 또는 미팅에서 언급된 주요 문제점이나 병목 현상 2가지 이내 요약 3. 회의 결정 사항: 미팅에서 최종적으로 결정된 사항들을 3가지 이내로 요약 4. 주요 액션 아이템: 누가, 무엇을, 언제까지 해야 하는지 포함된 5가지 이내 액션 아이템 목록 (누락 시 'N/A' 표시)
- 분석 결과 수신 (GPT ➜ Power Automate)
- GPT가 분석된 JSON 데이터를 Power Automate로 반환
- 문서 생성 및 업데이트 (Power Automate ➜ Word/SharePoint)
- GPT 분석 결과를 바탕으로 ‘주간 개발 요약 보고서’ Word 파일을 생성하고 SharePoint에 저장
- 기존 ‘주간 회의록 템플릿’ Word 파일에 GPT가 추출한 ‘회의 결정 사항’ 및 ‘주요 액션 아이템’을 업데이트
- 알림 발송 (Power Automate ➜ Teams/Outlook)
- 팀 리더와 관련 팀에 요약 보고서와 업데이트된 회의록의 링크를 포함한 알림 메시지를 Teams 및 Outlook으로 발송
- 트리거 (예약된 클라우드 흐름)
- 설계 시 유의사항
- Teams 데이터 수집
- Power Automate의 Teams 커넥터를 사용하여 채널 메시지와 미팅 대본을 수집하는 방법을 숙지해야 함
- Teams 메시지 기록의 한계 등을 고려해야 함
- 데이터 파싱
- GPT가 JSON 형태로 출력한 결과를
- Power Automate에서 각 필드별로 정확하게 파싱하여 Word 문서에 삽입하는 로직이 필요함
- 개인 정보 보호
- Teams 메시지에 개인적인 내용이 포함될 수 있으므로,
- 익명화 처리 또는 핵심 정보만 추출하도록 프롬프트를 설계하여 개인 정보 보호에 유의해야 함
- Teams 데이터 수집