티스토리 뷰
[chatGPT] 파이썬으로 chatGPT API 호출하기
1. 인증키 발급
chatGPT를 API로 호출하기 위해서는 여느 openAPI와 동일하게, 인증키를 발급받아야 합니다.
chatGPT API 키를 발급받을 수 있는 openai 페이지로 들어갑니다.
https://platform.openai.com/account/api-keys
Create new secret key 버튼을 눌러 새로운 API 인증키를 발급받습니다.
별다른 발급절차 없이 버튼만 누르면 인증키가 생성됩니다.
새 인증키를 발급받은 후 Usage 탭에 들어가면 발급받은 키에 대해서 API를 얼마나 호출했는지 조회할 수 있는데,
$18.00 만큼을 무료로 이용할 수 있게 해준 것을 볼 수 있습니다.
사용량을 초과하면 유료버전으로 넘어가게 됩니다.
2. openai 설치 및 호출하기
chatGPT를 파이썬에서 사용하는 방법에 대해서도 openai 사이트에 작성되어 있습니다.
https://platform.openai.com/docs/api-reference
먼저 openai 라이브러리를 설치해줍니다.
pip install openai
엄청 쉽게 설치가 끝났습니다.. 이제 파이썬으로 API를 사용해봅시다.
인증키를 입력해주고 모델리스트를 출력해보면, GPT API는 다양한 모델을 제공하고 있는 것을 알 수 있습니다.
각 모델은 서로 다른 크기와 학습 데이터셋을 기반하므로, 어떤 모델을 사용해야 하는지는 입력 데이터와 원하는 결과에 따라 달라집니다.
모델을 선택할 때는 주어진 작업에 가장 적합한 모델을 선택하는 것이 중요합니다. 가장 큰 모델인 "Davinci"를 사용하면 대부분의 작업을 처리할 수 있습니다. "Davinci" 이외의 모델은 작업에 따라 더 높은 효율성을 보일 수 있습니다.
모델 선택에 대한 자세한 내용은 OpenAI GPT-3 API 공식 문서를 참조하시기 바랍니다.
import openai
openai.api_key = "YOUR_API_KEY"
openai.Model.list()
Davinci 모델을 선택하여 응답을 받아보도록 하겠습니다.
API를 호출할 때, max_tokens을 지정하게 되는데, OpenAI GPT-3 API는 기본적으로 max_tokens 매개변수를 사용하여 모델이 반환하는 텍스트 길이를 제어합니다.
이 매개변수를 지정하지 않으면 기본값으로 2048이 설정되며, 이는 대부분의 경우 충분한 길이를 제공합니다.
전체 텍스트를 받는 것이 필수적이지 않은 경우, max_tokens 매개변수를 적절히 조절하여 모델이 반환하는 텍스트 길이를 제어하는 것이 좋습니다.
model_engine = "text-davinci-003" # "Davinci" 모델 엔진 ID
prompt = "오늘 서울시 강남구의 날씨가 어때?" # 모델에 입력할 프롬프트
# API 호출
completions = openai.Completion.create(
engine=model_engine,
prompt=prompt,
max_tokens=2048
)
# 결과 출력
for choice in completions.choices:
print(choice.text)
질문을 넣으면 바로 대답을 받을 수 있도록 chat 함수를 만들어 사용해봅니다.
def chat(prompt):
completions = openai.Completion.create(
engine="text-davinci-003", # "Davinci" 모델 엔진 ID
prompt=prompt,
max_tokens=2048
)
return completions.choices[0].text.strip()
끝.
[chatGPT] GPT 3버전 fine-tuning으로 데이터 학습 및 사용 방법
'프로그래밍 > Python' 카테고리의 다른 글
[chatGPT] GPT 3버전 fine-tuning으로 데이터 학습 및 사용 방법 (0) | 2023.03.31 |
---|---|
[geopandas] 파이썬에서 shp형식의 파일을 geojson 파일로 변환하기 (0) | 2023.03.30 |
[geopandas] 윈도우에서 파이썬 GeoPandas 에러없이 설치하기 (0) | 2023.03.11 |
[Python] AWS CLI(Command Line Interface) 사용법 (0) | 2023.03.04 |
[Python] requests 모듈에서 프록시 설정하는 방법 (0) | 2023.02.24 |