ChatGPT API 연결하기

정현·2023년 3월 29일
0

Capstone

목록 보기
1/2
post-thumbnail

졸업 프로젝트에서 openai에서 제공하는 ChatGPT API를 이용해 기능을 추가해보기로 결정했다.

원래는 GPT3 API만 제공되고 ChatGPT가 사용하는 GPT3.5를 쓰는 API는 제공되지 않았었는데, 올해 3월 초부터는 GPT3.5 버젼의 API가 공개되며 다양한 방식으로 사용해볼 수 있게 되었다.
(API는 없지만, 모델은 GPT4까지 출시된 상태!)

API 이용하기

정말 초간단했다!

1. 패키지 설치하기

pip install openai

2. API Key 발급받기

https://openai.com/ 에서
내 계정 > View API keys > Create new secret key

이 API Key를 이용해 이용량을 파악하고 요금이 부과되니 공개되지 않게 조심할 것!

깃허브에 올라가지 않도록 .env 파일을 이용해 관리하였다.

# settings.py
OPENAI_KEY = env('OPENAI_KEY')

# chatgpt_views.py
import openai
from tripfriend.settings import OPENAI_KEY

환경 변수를 불러오는 코드이다.
이미 다른 변수들을 .env파일에서 불러오고 있고, .env를 읽어오는 코드가 settings.py에 있었기 때문에 OPENAI_KEY도 settings.py에 추가한 후, 실제 API 요청을 보낼 파일에서 OPENAI_KEY를 import했다.

아, 그리고 나는 바로 API Key를 넣고 테스트했을 때

openai.error.ratelimiterror: you exceeded your current quota, please check your plan and billing details.

이런 에러가 나서 확인해보니,
내가 paid account가 아니라 free trial account여서 발생한 에러였고,
결제용 카드를 등록하고 API Key를 재발급 받아 테스트했더니 해결이 되었다!

3. 코드 작성

Completion, Chat, Edit 등의 기능을 활용할 수 있다.
결과값을 조정하기 위한 다양한 인자가 존재하는데, openai 홈페이지에 있는 api-reference에 자세한 설명이 나와있다.

ex)
https://platform.openai.com/docs/api-reference/completions
https://platform.openai.com/docs/api-reference/chat
https://platform.openai.com/docs/api-reference/edits

이 인자들 조정테스트를 위해
https://platform.openai.com/playground
에서 다양한 값을 넣어보면서 간단하게 테스트해볼 수 있다.

# 테스트용 코드
openai.api_key = OPENAI_KEY

response = openai.Completion.create(
    model="text-davinci-003",
    prompt="{들어갈 내용 구상...}"
    # playground에서 테스트 후 인자 적절히 추가
)

print(response)

결과에 영향을 주는 temperature, top_p등의 인자 말고도 어떤 user가 요청을 보내는지 구분하는 user parameter도 존재한다.

0개의 댓글