회원가입을 하면 원하는 문장을
저장할 수 있어요!
다음
AWS 이용 중이라면 최대 700만 원 지원받으세요
오늘날 빠르게 변화하는 업무 환경에 따라 효율성을 극대화하고 반복 작업을 줄이는 자동화가 점점 더 중요해지고 있습니다. 특히, 개발자와 비개발자 모두 쉽게 접근할 수 있는 도구를 활용한 자동화는 생산성을 크게 올려줍니다.
회원가입을 하면 원하는 문장을
저장할 수 있어요!
다음
회원가입을 하면
성장에 도움이 되는 콘텐츠를
스크랩할 수 있어요!
확인
오늘날 빠르게 변화하는 업무 환경에 따라 효율성을 극대화하고 반복 작업을 줄이는 자동화가 점점 더 중요해지고 있습니다. 특히, 개발자와 비개발자 모두 쉽게 접근할 수 있는 도구를 활용한 자동화는 생산성을 크게 올려줍니다.
한편 자동화와 함께 콘텐츠의 생산과 분석의 관점에서 생성형 AI가 활용되기 시작했습니다. 대표적으로 문맥을 이해하며 이를 바탕으로 부가적인 텍스트 형태의 정보를 생산하는 대규모 언어 모델(LLM) 기술이 떠올랐죠. 이 도구 또한 개발자들이 쉽게 사용할 수준으로 발전했습니다.
이런 변화에 맞춰 이번 글에서는 GPT 모델을 사용하는 챗GPT API와 구글 앱스 스크립트(Google Apps Script, 이하 앱스 스크립트)를 결합한 자동화 예제를 다루려고 합니다. 예제에서 사용할 두 가지 기술 모두 비교적 쉽게 구현할 수 있지만, 강력한 자동화 도구입니다. 기업이나 조직, 커뮤니티 등에서 구글이 제공하는 서비스 기반으로 업무를 자동화하는 방법을 소개하겠습니다.
챗GPT API는 개발자가 OpenAI에서 만든 강력한 언어 모델(GPT-4, GPT-4o, GPT-4o mini 등)을 자신의 애플리케이션, 제품 또는 서비스에 통합할 수 있는 클라우드 기반 API 서비스입니다. RESTful API로 HTTP 요청을 통해 OpenAI의 모델과 상호작용하며 텍스트 기반 입력을 전달하고 출력 결과를 받아옵니다.
이 API는 OpenAI 개발자 플랫폼을 통해 제공됩니다. 해당 플랫폼에서는 챗GPT API를 비롯한 여러 개발자 도구와 리소스를 함께 제공합니다. API 문서, 샘플 코드, 튜토리얼, 베스트 프랙티스, SDK 등 개발자가 OpenAI의 서비스를 쉽게 이해하고 활용하도록 돕는 다양한 환경이 존재합니다. 플랫폼에서 키를 발급받고, 사용량을 모니터링하며, 다양한 학습 자료로 API를 더 효과적으로 사용할 수 있습니다.
OpenAI의 AI 모델들은 데이터를 입력받아 인간처럼 자연스러운 텍스트를 이해하고 생성하도록 설계되었습니다. 따라서 챗봇, 콘텐츠 생성, 번역, 요약 등 다양한 자연어 처리(NLP) 애플리케이션에 쓰일 수 있습니다.
앱스 스크립트는 구글에서 개발한 클라우드 환경에서의 스크립트 언어입니다. 구글 스프레드시트, 구글 문서, 구글 드라이브, 지메일(Gmail)과 같은 구글 워크스페이스(전 G Suite) 앱들의 기능을 확장하고 작업을 자동화하도록 도와줍니다. 자바스크립트 기반으로 동작하며, 구글 서버에서 실행되므로 별도 설치 없이 사용할 수 있습니다.
앱스 스크립트의 주요 기능은 다음과 같습니다.
즉, 모든 구글 서비스와 상호작용하는 웹 애플리케이션을 구축하고 배포할 수 있습니다.
그렇다면 이처럼 강력한 챗GPT API와 앱스 스크립트를 결합하면 어떨까요? 구글 스프레드시트, 구글 문서, 지메일 등 업무에 자주 활용하는 구글 워크스페이스 서비스에 강력한 자동화와 AI 기반 기능을 추가할 수 있을 것입니다. OpenAI 모델의 자연어 처리 능력을 구글 워크스페이스 환경에서 직접 활용할 수 있다는 뜻입니다.
이 글에서는 다양한 구글의 서비스 가운데 스프레드시트를 활용하려고 합니다. 예제의 작동 방식은 세 단계로 이뤄집니다.
1단계. 구글 스프레드시트 문서 및 데이터 준비
구글 드라이브 환경을 사용하는 기업에게 필요한 구글 스프레드시트 문서를 제작합니다. 이번에는 기상청에서 제공한 정보를 토대로 최근 1년간 서울 시내의 최고, 최저 기온 데이터가 담긴 구글 시트를 준비했습니다.
2단계. 앱스 스크립트로 OpenAI API에 요청하기
곧바로 앱스 스크립트로 이동하겠습니다. 구글 시트의 확장 프로그램 탭을 눌러 앱스 스크립트를 실행합니다.
이제 구글 스프레드시트에 있는 데이터를 앱스 스크립트로 읽어와야 합니다. 아래 자바스크립트 코드를 활용해 데이터를 불러올 수 있습니다.
function getWeatherDataAndSendToOpenAI() {
// 구글 스프레드시트에서 기온 데이터를 가져옵니다.
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('시트1');
var dataRange = sheet.getDataRange();
var data = dataRange.getValues();
위 코드는 현재 사용 중인 스프레드시트를 가져오는 역할을 합니다. ‘시트1’이라는 이름을 가진 시트에서 데이터가 존재하는 범위를 먼저 가져오죠. 예를 들어, 시트에 A1부터 C10까지 데이터가 있다면, 이를 포함해 데이터 범위가 선택된다는 뜻입니다. 그 다음, getValues() 메서드를 활용해 데이터 범위 내 모든 셀의 값을 2차원 배열 형태로 가져옵니다. 이 배열은 시트의 각 행과 열을 포함하며 첫 번째 행은 배열의 첫 번째 요소로, 두 번째 행은 두 번째 요소로 나타납니다.
이렇게 가져온 데이터를 활용해 작업자가 필요한 질문을 추가한 다음, 챗GPT API로 HTTP 요청을 보냅니다. 챗GPT 사용을 위해, 미리 구입한 라이선스를 통해 발급받은 API 키로 인증을 처리해야 합니다. 앱 스크립트에서 외부에 있는 챗GPT API에 요청을 보내고 응답을 받아야 하는데 앱스 스크립트의 UrlFetchApp 함수를 사용합니다. 그 코드는 아래와 같습니다.
챗GPT API를 활용하고자 만든 이 코드는 다음 세 가지 작업을 수행합니다.
3단계. 챗GPT API 응답 결과 활용하기
챗GPT API는 데이터를 분석하고 사용자가 요청한 대로 API 응답을 반환합니다. 앱스 스크립트는 다시 이 응답을 사용하여 원래의 문서를 업데이트하거나 응답 내용을 본문으로 담당자나 부서에 이메일을 보내는 등 작업을 수행합니다.
예제에서는 구글 스프레드시트의 새로운 시트에 이 결과를 추가할 수 있게 만들었습니다. 사용한 코드는 아래와 같습니다.
// OpenAI 응답을 시트에 출력
var outputSheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Output');
if (!outputSheet) {
outputSheet = SpreadsheetApp.getActiveSpreadsheet().insertSheet('Output');
}
outputSheet.clear();
outputSheet.getRange(1, 1).setValue('OpenAI의 분석 결과:');
outputSheet.getRange(2, 1).setValue(result.choices[0].message.content.trim());
코드는 아래 세 가지 작업 수행에 쓰입니다.
결과적으로 다음과 같은 새로운 시트가 생성됩니다.
지금까지 두 가지 도구를 조합하여 구글 워크스페이스 생태계 내에서 자동화된 프로세스를 구현해 보았습니다. 소개한 예제는 기업과 개인이 활용하기 아주 쉬운 자동화 구현 방법 예시입니다. 시트를 수정할 때마다 해당 이벤트에 맞춰 부서의 메일링 리스트로 이메일을 발송하는 sendEmail 기능 등도 활용해도 좋습니다. 이를 활용하면 부서 구성원에게 알림(notification) 형태의 메일을 보내는 것 외에 슬랙 채널로 메시지를 발송할 수도 있습니다.
다만 이렇게 구글 앱스 스크립트를 활용하려면 코딩이 필요합니다. 앱스 스크립트 개발 방법과 문법 등은 구글이 만든 공식 사이트에서 도움을 받을 수 있습니다. 만약 앱스 스크립트 개발이 처음이라면, 챗GPT에 샘플 코드를 확보해 달라고 요청한 다음 이를 수정하여 사용할 수도 있습니다. 오늘 소개한 예제의 코드는 깃허브 링크를 참고해 주세요.
이처럼 OpenAI 및 구글 등 외부 업체의 서비스를 사용할 때는 업무 데이터가 어디로 전송되는지 주의해야 합니다. 데이터를 안전하게 처리하기 위한 몇 가지 주의사항을 정리했습니다.
첫 번째, OpenAI API로 데이터를 보내면 해당 데이터는 인터넷을 거쳐 OpenAI 서버로 전송되어 처리됩니다. 물론 OpenAI도 보안 조치를 구현하고 있지만, 서버로 전송된 모든 데이터는 기록되거나 서비스 개선에 쓰일 수 있습니다. 이를 충분히 이해하고 업무에 활용하는 것이 중요합니다(설정한 정책에 따라 다를 수 있습니다). 따라서 OpenAI API로는 민감하지 않으며 꼭 필요한 데이터만 보내야 합니다. 예를 들어, 개인 식별 정보, 금융 데이터 또는 독점 정보들은 꼭 필요하지 않다면, 전송하지 않도록 주의해야 합니다. 또한, 데이터를 익명화하거나 집계해 활용하며 위험을 최소화하는 것이 좋습니다.
두 번째, 구글과 OpenAI의 개인정보 보호 정책 및 데이터 처리 방식을 숙지해야 합니다. 나아가 이를 신뢰해도 좋을지 점검해야 합니다. 이를 위해서는 서비스가 데이터를 어떻게 사용하거나 저장할 수 있는지에 대해 이해할 필요가 있습니다.
세 번째, API 키를 스크립트에 직접 하드코딩하지 않아야 합니다. 대신 앱스 스크립트의 PropertiesService 등 서비스를 사용하면, API 키를 안전하게 저장할 수 있습니다.
특히 데이터 보안이나 프라이버시가 주요한 문제라면, 클라우드 기반 자동화 서비스가 아닌 다른 방법을 고려해야 합니다. 조금 난이도가 있지만, 직접 해당 AI 모델을 로컬 환경에서 실행하거나, 프라이빗 클라우드처럼 제어할 수 있는 안전한 환경 내에서 운영하는 것이 선택지가 됩니다.
AI와 자동화 기술의 결합은 기업의 생산성을 비약적으로 올려줄 잠재력을 가지고 있습니다. 이 글에서 예제로 사용한 챗GPT API와 앱스 스크립트는 비단 단순한 하나의 예제입니다. 시장의 다양한 생성형 AI 서비스, 자연어 이해(NLU) 또는 자연어 처리(NLP) 및 머신러닝 모델을 사용하면 복잡한 작업을 손쉽게 자동화할 수 있습니다. 창의적인 업무에도 AI의 힘을 더할 수 있죠.
이러한 기술 도입은 수동적이던 기업과 부서, 조직의 프로세스에 활력을 만들어 줍니다. 자동화가 주는 시간 절약과 효율성 향상 효과는 업무 생산성에 직접적인 영향을 미칠 뿐만 아니라, 구성원들이 더 창의적이고 전략적인 업무에 집중할 수 있는 환경을 조성해 줍니다. 특히, 예제처럼 사람의 손을 타는 반복 작업에 할애하던 시간을 절감하면 더 중요한 비즈니스 결정에 집중할 수 있습니다.
이처럼 AI와 자동화는 조직의 경쟁력을 강화하는 핵심 요소로 자리 잡고 있습니다. 새로운 기술을 도입한 기업들 모두 혁신의 물결을 경험하고 있습니다. 다만, 이런 환경이 널리 퍼질수록 기업은 데이터 보안과 프라이버시 관리에 대해 철저히 대비해야 합니다. AI가 제공하는 이점을 최대한 활용하면서도, 데이터 보호와 윤리적 책임을 고려한 신중한 접근이 요구될 것입니다.
[위시켓 AI 컨설팅 무료 이벤트] 요즘IT 독자들을 위해 준비했어요. 챗봇/데이터 자동화/업무 효율화 등 AI 도입을 고민하고 있다면 위시켓의 AI 컨설팅을 무료로 신청해 보세요. 문제 상황 정의부터 성과 추적, 솔루션 구축까지 한 번에 제안 드립니다. |
요즘IT의 모든 콘텐츠는 저작권법의 보호를 받는 바, 무단 전재와 복사, 배포 등을 금합니다.