본문 바로가기

ChatGPT

초보자를 위한 Google 스프레드시트에서 ChatGPT 함수 만들기

 

이번에는 Google Sheets와 OpenAI의 ChatGPT를 결합하여, 코딩 경험이 없는 분들도 쉽게 사용할 수 있는 방법을 소개하려고 합니다. Google Sheets는 데이터를 관리하고 분석하는 데 널리 사용되는 도구이며, ChatGPT는 자연어 처리에서 놀라운 성과를 보이고 있는 인공지능입니다. 이 두 도구를 통합하면, 데이터 분석, 자동화된 보고서 작성, 심지어는 일상 업무 자동화까지 가능해집니다.

 

자 이제부터 시작해 보겠습니다. 

[필요한 사전 준비]

  • Google 계정
  • ChatGPT 계정(유료) 또는 Bard(무료)
  • OpenAI 계정 및 API 키(유료)
  • 기본적인 Google Sheets 사용 능력

 

1. ChatGPT를 사용하여 Apps Script 코드 생성하기

 

ChatGPT(또는 Bard)와 같은 생성형 AI를 활용하여 우리가 원하는 코드를 아주 쉽게 만들 수 있습니다. 

다음은 ChatGPT에서 사용한 프롬프트입니다. 

구글시트에서 apps script로 chatgpt를 호출하는 함수를 작성해 주세요.

 

ChatGPT 4 모델(유료)을 선택하고, 이 프롬프트를 사용하면 다음과 같은 코드를 작성해 줍니다. 

function myGPT(prompt, temperature) {
  // prompt가 없는 경우 오류 메시지 출력
  if (!prompt) {
    throw new Error('prompt가 필요합니다.');
  }

  // temperature 기본값 설정
  if (typeof temperature === 'undefined') {
    temperature = 0.5; // 기본값으로 0.5 사용
  }

  // API 키 가져오기
  var apiKey = PropertiesService.getScriptProperties().getProperty('OpenAI_API_Key');
  if (!apiKey) {
    throw new Error('API 키가 설정되지 않았습니다.');
  }

  // API 요청 설정
  var url = 'https://api.openai.com/v1/chat/completions';
  var payload = {
    model: 'gpt-3.5-turbo-1106',
    max_tokens: 500,
    temperature: temperature,
    messages: [{
      role: 'user',
      content: prompt
    }]
  };

  var options = {
    method: 'post',
    contentType: 'application/json',
    payload: JSON.stringify(payload),
    headers: {
      'Authorization': 'Bearer ' + apiKey
    },
    muteHttpExceptions: true
  };

  // API 요청
  var response = UrlFetchApp.fetch(url, options);
  
  // 응답 처리
  if (response.getResponseCode() === 200) {
    var responseJson = JSON.parse(response.getContentText());
    return responseJson.choices[0].message.content;
  } else {
    throw new Error('API 요청에 실패했습니다. 상태 코드: ' + response.getResponseCode());
  }
}

 

혹시 ChatGPT 유료 버전을 사용하고 있지 않다면, Bard(https://bard.google.com/chat)를 사용하실 것을 추천합니다. 

 

Bard에서 동일한 프롬프트를 입력하면 좋은 결과를 얻으실 수 있습니다. 

 

2. Google Sheets 열기 및 새 스크립트 만들기

 

먼저, Google Sheets를 열고, 상단 메뉴에서 '확장 프로그램 > Apps Script'를 선택합니다. 

 

 

3. 코드 복사 및 붙여넣기

위에서 ChatGPT(또는 Bard)가 생성해 준 코드를 복사하여 Apps Script 편집기에 붙여 놓습니다. 혹시 모르니, 꼭 저장을 하시기 바랍니다. 

 

ChatGPT가 생성해 준 코드를 복사&붙여넣기

 

 

 

4. API 키 설정

 

  • 먼저, 스크립트 편집기의 '프로젝트 설정' 선택.
  • '스크립트 속성 > 스크립트 속성 추가'를 선택.
  • 스크립트 속성에서 1) 'OpenAI_API_Key' 입력, 2) API Key 입력(OpenAI api 사이트에서 확인), 3) 저장
  • (주의) OpenAI api Key는 절대 보안을 유지해서 사용하시기 바랍니다. 

 

 

 

 

 

4. 실제 사용하기 전 권한 승인 받기

Apps Script 편집기에서 "실행" 버튼을 누르면, "승인 필요"라는 메세지가 뜰 수 있습니다. 이 경우 권한 승인 절차를 진행하시면 됩니다. 

 

5. 함수 사용하기

 

이제 스프레드시트에서 만든 'myGPT()' 함수를 사용합니다. 

 

 

 

※ 주의 사항

  • API 요금 주의 : OpenAI API 사용은 비용이 발생하는 서비스이므로, 사용량을 주의해서 관리해야 합니다. API 요금제는 OpenAI 요금제를 참고하세요. 
  • 보안 관리 : API key는 민감한 정보이므로, 외부에 절대 노출되지 않도록 주의하세요. 

 

마무리

 

위의 방법을 통해서 코딩 경험이 없어도 쉽게(?) Google Sheets에서 ChatGPT를 호출하여 사용할 수 있습니다. 이 기능을 사용하여 구글 스프레드시트 내에서 데이터 분석, 개인화된 보고서 작성  등 다양한 작업을 자동화 해 보시기 바랍니다. 

 

반응형