[코드포함] ChatGPT를 구글독스에 3분만에 붙여서 블로그 쓰기

이 글을 보시면 구글 독스를 ChatGPT처럼 쓸 수 있습니다. GPT3는 ChatGPT의 엔진역할을 하는 인공지능이라고 보시면 됩니다 아래 튜토리얼 영상을 참고해서 사용하시면 조금 더 빨리 이해하실 수 있을 겁니다. 설치부터 구동까지 3분이면 됩니다.

[코드포함] ChatGPT를 구글독스에 3분만에 붙여서 블로그 쓰기

지난 웨비나에서 많은 분들이 상세한 설명을 요청하셔서 글과 영상으로 남깁니다.

  • 이 글을 보시면 구글 독스를 ChatGPT처럼 쓸 수 있습니다.
  • GPT3는 ChatGPT의 엔진역할을 하는 인공지능이라고 보시면 됩니다
  • 아래 튜토리얼 영상을 참고해서 사용하시면 조금 더 빨리 이해하실 수 있을 겁니다.
  • 설치부터 구동까지 3분이면 됩니다.

아래 순서대로 따라하세요

  1. 구글 독스 새파일 만들기
  2. 구글 독스 상단의 확장프로그램> Apps Script 클릭
  3. 앱스 스크립트 탭이 열리면 아래의 블로그 지니 코드 복사 붙여 넣기
  4. 오픈AI의 API 복사해 코드내에 API 붙여 넣기(오픈AI 가기)
    var apiKey = "xxxxxxxxxxxxx"; 의 xxx 부분에 오픈에이아이 Api 키를 넣어주세요
  5. 저장 클릭
  6. 다시 구글 독스와 돌아와서 원하는 내용 한글 또는 영어로 작성하기(영어 추천)
  7. 작성한 글을 마우스로 드래그 해서 선택하기
  8. 상단 메뉴의 "블로그 작성" 버튼 클릭
  9. 잠시 기다리면 짜잔 블로그가 써집니다

블로그 지니 코드

// DROP DOWN MENU
// 구글 독스 상단에 메뉴 UI 생성
function onOpen() {
DocumentApp.getUi().createMenu("블로그지니")
.addItem("블로그 작성", "generateBlog")
.addItem("이미지 생성", "generateImage")
.addToUi();
}
// END MENU
// 구글 독스 상단에 "블로그 작성"과 "이미지 작성" 메뉴 UI 생성

// FIXED VARIABLES. Your API and Model Type
//아래 var apiKey = "xxxxxxxxxxxxx"; 의 xxx 부분에 오픈에이아이 Api 키를 넣어주세요
var apiKey = "xxxxxxxxxxxxx";
var model = "text-davinci-003"
// END VARIABLES

// GENERATE PROMPT
//블로그 본문을 쓰는 코드입니다. 이 곳은 손대지 않으셔도 됩니다
function generateBlog() {
var doc = DocumentApp.getActiveDocument()
var selectedText = doc.getSelection().getRangeElements()[0].getElement().asText().getText()
var body = doc.getBody()
var prompt = "Write a comprehensive 500 words blog with eye-catching creative title about " + selectedText;
temperature= 0
maxTokens = 2060
const requestBody = {
"model": model,
"prompt": prompt,
"temperature": temperature,
"max_tokens": maxTokens,
};
const requestOptions = {
"method": "POST",
"headers": {
"Content-Type": "application/json",
"Authorization": "Bearer "+apiKey
},
"payload": JSON.stringify(requestBody)
}
const response = UrlFetchApp.fetch("https://api.openai.com/v1/completions", requestOptions);
var responseText = response.getContentText();
var json = JSON.parse(responseText);
Logger.log(json['choices'][0]['text'])
para = body.appendParagraph(json['choices'][0]['text'])
}
// END PROMPT
// 블로그 생성 코드의 끝입니다

// GENERATE IMAGE - SIZE CAN BE 256x256', '512x512', '1024x1024
//이 코드는 오픈 Ai Dalle 2를 이용해 이미지를 생성하는 코드입니다
//사용하지 않을 때는 아래와 같이 /*와 */로 코드블록 전후에 입력해 주석 처리 하시면 됩니다

/*
function generateImage() {
var doc = DocumentApp.getActiveDocument()
var selectedText = doc.getSelection().getRangeElements()[0].getElement().asText().getText()
var body = doc.getBody()
temperature= 0
maxTokens = 2000
var prompt2 = "Generate images for " + selectedText;
const requestBody2 = {
"prompt": prompt2,
"n": 1,
"size": "512x512"
};
const requestOptions2 = {
"method": "POST",
"headers": {
"Content-Type": "application/json",
"Authorization": "Bearer "+apiKey
},
"payload": JSON.stringify(requestBody2)
}
const response2 = UrlFetchApp.fetch("https://api.openai.com/v1/images/generations", requestOptions2);
var responseText = response2.getContentText();
var json = JSON.parse(responseText);
var url1=json['data'][0]['url']
body.appendImage(UrlFetchApp.fetch(url1).getBlob());
}
*/

// END IMAGE
// 블로그 지니 코드의 끝입니다

// 더 많은 최신 프롬프트 활용 사례는 www.andysong.live 블로그를 살펴주시기 바랍니다.