BIGDATA/ETC

ChatGPT API 사용방법

옥토캣 2023. 4. 13. 14:48

 

ChatGPT는 api를 제공하며 가입을 하게되면 $18만큼 무료로 사용 가능하다

 

 

1. https://platform.openai.com/account/api-keys 에서 key 발급

 

2. python에 openai 라이브러리 설치

$ pip3 install openai
Collecting openai
  Downloading openai-0.27.4-py3-none-any.whl (70 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 70.3/70.3 kB 2.3 MB/s eta 0:00:00
Requirement already satisfied: requests>=2.20 in /Users/jeongjinhye/.pyenv/versions/3.11.2/lib/python3.11/site-packages (from openai) (2.28.2)
Collecting tqdm
  Downloading tqdm-4.65.0-py3-none-any.whl (77 kB)
  1 import openai
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 77.1/77.1 kB 2.0 MB/s eta 0:00:00
Collecting aiohttp
  Downloading aiohttp-3.8.4-cp311-cp311-macosx_11_0_arm64.whl (332 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 332.9/332.9 kB 3.1 MB/s eta 0:00:00
Requirement already satisfied: charset-normalizer<4,>=2 in /Users/jeongjinhye/.pyenv/versions/3.11.2/lib/python3.11/site-packages (from requests>=2.20->openai) (3.1.0)
Requirement already satisfied: idna<4,>=2.5 in /Users/jeongjinhye/.pyenv/versions/3.11.2/lib/python3.11/site-packages (from requests>=2.20->openai) (3.4)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in /Users/jeongjinhye/.pyenv/versions/3.11.2/lib/python3.11/site-packages (from requests>=2.20->openai) (1.26.15)
Requirement already satisfied: certifi>=2017.4.17 in /Users/jeongjinhye/.pyenv/versions/3.11.2/lib/python3.11/site-packages (from requests>=2.20->openai) (2022.12.7)
Requirement already satisfied: attrs>=17.3.0 in /Users/jeongjinhye/.pyenv/versions/3.11.2/lib/python3.11/site-packages (from aiohttp->openai) (22.2.0)
Collecting multidict<7.0,>=4.5
  Downloading multidict-6.0.4-cp311-cp311-macosx_11_0_arm64.whl (29 kB)
Collecting async-timeout<5.0,>=4.0.0a3
  Downloading async_timeout-4.0.2-py3-none-any.whl (5.8 kB)
Collecting yarl<2.0,>=1.0
  Downloading yarl-1.8.2-cp311-cp311-macosx_11_0_arm64.whl (56 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 56.5/56.5 kB 1.8 MB/s eta 0:00:00
Collecting frozenlist>=1.1.1
  Downloading frozenlist-1.3.3-cp311-cp311-macosx_11_0_arm64.whl (34 kB)
Collecting aiosignal>=1.1.2
  Downloading aiosignal-1.3.1-py3-none-any.whl (7.6 kB)
Installing collected packages: tqdm, multidict, frozenlist, async-timeout, yarl, aiosignal, aiohttp, openai
Successfully installed aiohttp-3.8.4 aiosignal-1.3.1 async-timeout-4.0.2 frozenlist-1.3.3 multidict-6.0.4 openai-0.27.4 tqdm-4.65.0 yarl-1.8.2

[notice] A new release of pip available: 22.3.1 -> 23.0.1
[notice] To update, run: pip install --upgrade pip

 

3. openai를 사용한 코드 작성

import openai

gkey = '생성한 KEY값'

openai.api_key = gkey

messages = [{'role': 'user', 'content': '한국의 수도'}]

gpt_obj = openai.ChatCompletion.create(model='gpt-3.5-turbo', messages=messages)
res = gpt_obj['choices'][0]['message']['content']

print(res)

 

4. python 실행

$ python3 gpt_test.py
한국의 수도는 서울입니다.

 

* ChatGPT API 사용량 확인 

https://platform.openai.com/account/usage