금융퀀트/프로그램기초

(OpenAPI)ChatGPT OpenAPI 사용: 기본활용 예제(python)

문송한투자자 2023. 3. 24. 13:11
반응형

기본정보 확인

API 키 확인

API 키는 OpenAI 사이트(https://platform.openai.com/) 사용자 메뉴에서 발급 가능하다. 아래 그림 1에 표시된 "Create new secretkey"를 누르면 팝업이 뜨면서 발급되는데, 다시 확인하기가 힘드니 처음 팝업이 뜰 때 잘 저장해 두어야 한다.

그림1: " https://platform.openai.com/ " 사이트 API 키 생성

엔진확인

API 사용을 위해서는 AI 엔진 정보도 알아야 하는데, OpenAI 사이트(https://platform.openai.com/) Documentation -> Models 부분을 확인하면 된다. OpenAPI 에 지원되는 대화형 AI 모델은 아래 그림 2에 표시된 "text-davinci-003" 나 "text-davinci-002"이다.

그림2: " https://platform.openai.com/ " 모델 확인

API 실행 예제: "오늘 아침 뭐 먹을까?" 물어보기

설치된 라이브러리를 활용해서 python으로 간단하게 API를 이용해서 "오늘 아침 뭐 먹을까?"를 물어보자. 아래 그림 3에 캡처된 introduction 대로 python에서 활용하려면 에디터나 명령어 창에서 "pip install openai"로 라이브러리를 설치해야 한다. 

그림3: 라이브러리 사용 Introduction

라이브러리 설치 후 openai 라이브러리의 Completion의 create 함수를 사용해서 아래와 같이 한국인의 아침메뉴를 추천해 달라는 질문을 할 수 있다.("text-davinci-003" 엔진의 경우 한국어는 잘 인식 못하니 영어로 질문하는 것이 좋다.)

import openai

# OpenAPI 키
openai.api_key = "나의 API 키"

# 모델 엔진
model_engine = "text-davinci-003"

# 질문내용을 prompt 에 저장
prompt = "Recommend me a breakfast menu, considering I am Korean."

# OpenAI API 를 이용한 질문요청
response = openai.Completion.create(
  # 위에서 설정한 모델엔진
  engine=model_engine,
  # 질문내용
  prompt=prompt,
  # 답변의 최대 구절 수
  max_tokens=200,
  # 답변의 개수
  n=1,
  # 응답 생성을 중단할 문자열
  stop=None,
  # 창의성: 작을수록 보수적이고 클수록 창의적
  temperature=0.7,
)

# 답변 출력
print(response.choices[0].text)

함수에 들어갈 각 변수들의 상세 설명은 위 코드 안에 주석으로 달아놓았다. "나의 API키" 자리에 내가 발급받은 API 키를 넣고 실행을 하니 아래와 같은 결과가 나왔다.

그림4: API 실행 결과

나는 김치볶음밥, 순두부찌개 등을 추천받았는데, 요리를 못하니 빵만 먹도록 하겠다.

반응형