ChatGPT공개 이후 정말 많은 주목을 받고 있죠.
실제로 저도 사용해 보았는데, 블로그 스크립트는 물론이고 코드 작성, 틀린 코드 수정까지 '정말 이런 모델이 나온다고?'하고 많이 놀랐던 것 같습니다.
오늘은 이 ChatGPT API를 직접 호출해서 사용해 보도록 하겠습니다.
ChatGPT 요금
아시는 분들도 계시겠지만 일반 ChatGPT 공개버전은 무료이나, API나 ChatGPT plus는 유료입니다.
1K 토큰당 0.002달러이니, 토큰 1개당은 약 0.000002달러네요.
더 많은 정보가 필요하신 분들은 여기를 참고해주세요.
비록 ChatGPT 사용에는 돈이 들지만, OpenAI에 가입을 하면 18달러의 크레딧을 제공해 줍니다.
즉, 18달러 까지는 무료로 사용해 볼 수 있다는 이야기죠. 오늘은 이 크레딧을 이용해서 실습해볼 예정입니다.
여기에 접속하셔서 확인해 보시면 됩니다.
과거에는 기간제한이 있는 크레딧을 주었는데, 현재는 돈을 내야만 사용하실 수 있습니다.
ChatGPT API 사용법
이제 본격적으로 API를 사용해보겠습니다.
이 과정을 시작하기전에 OpenAI에 먼저 가입이 되어있으셔야합니다.
gmail이 있으시다면 쉽게 가입이 가능하니 가입을 먼저 진행해 주세요!
(1) API Key발급
OpenAI 플랫폼 페이지에 접속해주세요.
상단 제 아이디를 누르면 드롭다운으로 메뉴가 뜨는데, View API keys를 클릭해주세요.
이후 나오는 페이지에서 "Create new secret key"를 클릭해줍니다.
이후 뜨는 창에 key이름을 입력해 주세요.
이후 secret key가 뜰텐데요.
코드 내에서 API를 호출할 때 사용해야하기 때문에, 메모장에 잘 복사해 두세요!
완료 창을 닫으면 KEY가 다음과 같이 생략되어 나타납니다. 다시 볼 수 없으니 반드시!!!! 복사해두세요.
(2) 코드 작성
이제 위에서 발급받은 secret key로 api를 날려 볼 것인데요. openapi문서를 참고해 보면 아래의 기본 코드를 알 수 있습니다.
import openai
openai.api_key = "YOUR_SECRET_KEY"
completion = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=[{"role": "user", "content": "What is the OpenAI mission?"}]
)
print(completion)
위의 content부분에 질문을 작성해서 코드를 실행해 주시면 됩니다.
그럼 role은 뭘까요? role에 대해 한번 자세히 알아보겠습니다.
import openai
openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Who won the world series in 2020?"},
{"role": "assistant", "content": "The Los Angeles Dodgers won the World Series in 2020."},
{"role": "user", "content": "Where was it played?"}
]
)
chatgptapi에서는 총 3개의 role이 있습니다. 바로 system, user, assistant인데요.
한번 알아보겠습니다.
- system
- assistant의 동작을 설정하는 데 도움을 줍니다. assistant의 성격을 수정하거나 대화 전체에서 어떻게 행동해야하는지에 대한 구체적인 지침을 줍니다.
- user
- assistant가 응답할 요청을 정의해줍니다. 즉, 질문을 한다는 의미입니다.
- assistant
- gpt라고 생각하시면 됩니다.
위의 예시는 대화 flow를 넣어준 코드라고 할 수 있습니다. 대화의 flow를 넣어서 또 chatgpt에 넣어 주면 그 대화를 기반으로 응답을 생성해 줍니다.
위의 코드를 실행하면 아래와 같은 응답을 얻을 수 있습니다.
{
'id': 'chatcmpl-6p9XYPYSTTRi0xEviKjjilqrWU2Ve',
'object': 'chat.completion',
'created': 1677649420,
'model': 'gpt-3.5-turbo',
'usage': {'prompt_tokens': 56, 'completion_tokens': 31, 'total_tokens': 87},
'choices': [
{
'message': {
'role': 'assistant',
'content': 'The 2020 World Series was played in Arlington, Texas at the Globe Life Field, which was the new home stadium for the Texas Rangers.'},
'finish_reason': 'stop',
'index': 0
}
]
}
생각보다 엄청 간단하죠?
다음 포스팅으로는 구글 바드를 API로 호출하는 방법을 배워보겠습니다.
'꿀팁 > 소소한 팁' 카테고리의 다른 글
bardapi를 사용해보자 (0) | 2023.06.10 |
---|---|
ray를 사용해보자 (0) | 2023.06.08 |
github 특정 branch clone하기 (0) | 2023.04.04 |
대용량 데이터의 유사도 검색 라이브러리 faiss 사용하기 (2) | 2023.03.14 |
googledrive 파일 명령어로 받기 (0) | 2022.10.20 |