
GAS로 학무 메모를 AI에게 전달하기 전에 정리하는 작은 전처리
요약
Google Apps Script(GAS)를 활용하여 AI에게 전달할 학무 메모를 전처리하는 방법을 소개합니다. 빈 줄 제거, 공백 정리, 개인정보 마스킹을 통해 데이터의 품질을 높이고 보안을 강화하는 실용적인 가이드를 제공합니다.
핵심 포인트
- GAS를 이용한 텍txt 전처리로 AI 입력 데이터 최적화
- 빈 줄 및 불필요한 공백 제거를 통한 데이터 정제
- 이메일, 성명 등 개인정보 마스킹을 통한 보안 강화
- 스크립트 속성을 활용한 안전한 API 키 관리 방법
학무(校務)에서 AI를 사용할 때, 갑자기 긴 문장을 던지기보다 먼저 Google Apps Script (GAS)로 '취급하기 쉬운 형태'로 정리해 두면 운용하기가 수월해집니다.
이 기사에서는 스프레드시트 상의 메모를 대상으로, AI에게 전달하기 전의 전처리로서 다음 3가지를 수행하는 GAS의 예를 소개합니다.
- 빈 줄 제외
- 앞뒤의 불필요한 공백 제거
- 성명이나 이메일 주소와 같이 개인정보가 되기 쉬운 문자열을 마스킹(伏せる)
AI API 그 자체를 호출하기 전 단계의 처리이므로, 외부 서비스로 보내는 내용을 한 번 확인하기 쉬운 용도로 사용할 수 있습니다.
스프레드시트에 다음과 같은 열이 있다고 가정합니다.
| A열 | B열 |
|---|---|
| 원본 메모 | 정리 후 메모 |
A열에 학무 메모를 넣고, B열에 AI에게 전달하기 쉬운 형태로 정리된 텍스트를 써 내려갑니다.
스프레드시트의 '확장 프로그램'에서 Apps Script를 열고, 다음을 붙여넣습니다.
function normalizeSchoolNotes() {
const sheet = SpreadsheetApp.getActiveSheet();
const lastRow = sheet.getLastRow();
...
- A열의 2행 이후에 정리하고 싶은 메모를 넣습니다.
- Apps Script에서
normalizeSchoolNotes를 실행합니다. - B열에 정리된 텍스트가 출력됩니다.
예를 들어, A열에 다음과 같은 메모가 있다고 가정합니다.
山田先生へ確認。
欠席連絡は sample@example.com に送付済み。
来週の面談日程を再調整する。
실행 후에는 B열에 다음과 같이 출력됩니다.
[name]へ確認。
欠席連絡は [email] に送付済み。
来週の面談日程を再調整する。
전처리를 넣더라도, 마스킹 규칙만으로 모든 개인정보를 검출할 수 있는 것은 아닙니다.
따라서 AI API로 보내는 처리를 추가할 경우에도, 우선 B열의 내용을 사람이 확인할 수 있는 상태로 만들어 두면 취급하기 쉬워집니다. 학무 문장은 문맥으로부터 개인을 추측할 수 있는 경우도 있으므로, 이메일 주소나 성명뿐만 아니라 소속, 날짜, 사건의 조합에도 주의해야 합니다.
AI API를 호출하는 처리를 추가할 경우, API 키를 코드에 직접 쓰지 않고 Apps Script의 스크립트 속성(Script Properties)에 저장합니다.
function getApiKey() {
const apiKey = PropertiesService.getScriptProperties().getProperty("AI_API_KEY");
if (!apiKey) {
...
스크립트 속성은 Apps Script 에디터의 '프로젝트 설정'에서 추가할 수 있습니다.
AI 활용은 프롬프트를 작성하기 전의 '입력을 정리하는' 공정에서 취급 용이성이 달라집니다.
GAS로 빈 줄이나 공백을 정리하고, 개인정보가 되기 쉬운 문자열을 마스킹하여, 확인하기 쉬운 열에 출력한 뒤 AI에게 전달한다. 작은 전처리이지만, 학무 메모를 다룰 때의 기본 형태로서 사용하기 좋은 패턴입니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Qiita AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기