챗지피티 API (ChatGPT API) 사용 방법, 가격 알아보기

2023. 8. 9. 07:20·Minding's Programming/Knowledge
728x90
반응형

OpenAI의 대규모 언어 모델 ChatGPT의 API를 활용해 더 다양하게 활용해보고자 한다. ChatGPT의 API는 어떻게 사용할 수 있을까?

 

1. API키 발급 / 엔드포인트 설정하기

OpenAI 웹사이트 로그인 및 API 발급

OpenAI의 홈페이지(링크)에 접속해 로그인하자.

 

로그인하고 나면 세 가지 항목을 선택할 수 있는데, 제일 오른쪽에 있는 'API'버튼을 누르면 된다.

 

이후 오른쪽 상단에 내 계정을 누르면, 퀵메뉴가 나온다. 그 중 'View API keys' 메뉴를 선택한다.

 

이후 'Create new secret key'를 선택해 새로운 API key를 만들거나, 기존 API key를 살펴볼 수 있다.

 

API 코드를 발급 받았다면, 아래 코드를 이용해 chat gpt api를 활용해볼 수 있다.

import requests

# 2. HTTP request 구성
API_KEY = 'your_api_key'
API_ENDPOINT = 'https://api.openai.com/v1/chat/completions'

headers = {
    'Content-Type': 'application/json',
    'Authorization': f'Bearer {API_KEY}'
}

# 3. 대화 메시지 구성
data = {
    'messages': [
        {'role': 'system', 'content': 'You are a helpful assistant.'},
        {'role': 'user', 'content': 'Tell me a joke.'}
    ]
}

# 4. API 호출 및 답변처리
response = requests.post(API_ENDPOINT, json=data, headers=headers)
response_data = response.json()

# 5. 대화 추출 및 유지
model_response = response_data['choices'][0]['message']['content']
print("모델 응답:", model_response)

코드에 대한 자세한 설명은 아래에!

2. HTTP request 구성

- API를 호출하기 위해 HTTP POST request를 사용한다.

- request 코드에는 Json 형식의 데이터 포함된다.

- request header에는 'Content-Type'(데이터 형식) / 'Authorization'(인증방법 / API키) 정보가 포함된다.

 

3. 대화 메시지 구성

- 대화 메시지의 data는 dict형태로 구성된다.

- message 자체는 list형태로 구성된다.

- 각 list는 'role'과 'content'라는 key를 가지고 있다.

- 'role'은 'system', 'user', 'assistant'등의 역할을 나타낸다.

- 'content'는 해당 역할의 메시지 내용이 들어간다.

- 과거 메시지도 'messages' list에 포함된다. (대화의 흐름 유지 위해)

 

4. API 호출 및 응답 처리

- 구성한 request를 API Endpoint로 전송한다.

- API 응답은 Json 형식으로 받는다.

 

5. 대화 추출 및 유지

- 'choices' list에서 chatGPT 모델의 이전 응답 메시지를 추출할 수 있다.

- 이전 메시지 및 모델의 답변을 기반으로 계속 메시지를 생성할 수 있고, 이를 API에 전달해 대화를 유지할 수 있다.

 

+) Chatgpt API의 최초 무료로 활용할 수 있는 크레딧은 18달러라고 한다. 마음껏 사용할 수는 없지만, 이것저것 실험하기엔 충분하다. 먼저 활용해본 뒤 유료 전환에 대해 고민해보자.

 

이런 방법으로 ChatGPT API를 활용할 수 있다. 이 API를 통해 활용할 수 있는 점들이 무궁무진하다고 생각한다. 시간날 때 API의 구조에 대해서 좀 더 공부해보고 새로운 프로그램을 한 번 만들어 볼 예정이다. 알면 알수록 신기하다.

 

728x90

'Minding's Programming > Knowledge' 카테고리의 다른 글

[Python] OpenCV를 이용해 자동 카톡 메시지 보내기  (0) 2023.08.19
[LLAMA2] LLAMA2 Custom Data로 학습시켜보기 (무료 Colab 사용)  (6) 2023.08.14
OpenAI 공식 ChatGPT 앱 출시, 사용방법, 기능, 유료버전(GPT4)  (0) 2023.07.31
[NYPC] 청소년들의 프로그래밍 축제, NYPC 알아보기  (0) 2023.07.24
[Windows] WinMD5Free 설치, md5sum 설치, 확인  (0) 2023.07.21
'Minding's Programming/Knowledge' 카테고리의 다른 글
  • [Python] OpenCV를 이용해 자동 카톡 메시지 보내기
  • [LLAMA2] LLAMA2 Custom Data로 학습시켜보기 (무료 Colab 사용)
  • OpenAI 공식 ChatGPT 앱 출시, 사용방법, 기능, 유료버전(GPT4)
  • [NYPC] 청소년들의 프로그래밍 축제, NYPC 알아보기
Minding
Minding
  • Minding
    Today's Minding
    Minding
  • 전체
    오늘
    어제
    • 울고넘는 딥러닝 (278)
      • Minding's Baseball (57)
        • MLB Statcast (29)
        • 머신러닝으로 홈런왕 예측하기 (3)
        • 야구칼럼 (12)
        • 야구 규칙, 용어 (1)
        • 2022-23 질롱 코리아 (8)
        • 류현진 등판경기 (4)
      • Minding's Programming (185)
        • 프로그래머스 코딩테스트 (21)
        • Knowledge (44)
        • Numpy & Pandas (6)
        • Excel (3)
        • Git (1)
        • Pygame (11)
        • CV (3)
        • Tensorflow tutorial (4)
        • Kaggle and Dacon (4)
        • 에러 코드 (8)
        • FastAPI (8)
        • Airflow (29)
        • Crawling (6)
        • Django (14)
        • AWS (18)
        • Spark (5)
      • Minding's Reading (30)
        • 머신러닝 딥러닝에 필요한 기초 수학 with 파이.. (2)
        • 칼만필터는 어렵지 않아 (11)
        • 밑바닥부터 시작하는 딥러닝 (6)
        • 메이저리그 야구 통계학 2e (8)
        • 논문읽기 (2)
        • 빅데이터를 지탱하는 기술 (1)
      • Minding's Life (5)
        • 주식 (4)
        • 각종 소식 (1)
  • 블로그 메뉴

    • 홈
    • Baseball
    • Programming
    • Reading
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    파이게임
    칼만필터는어렵지않아파이썬
    딥러닝
    pygame
    django python
    에어플로우
    KBO
    데이터 엔지니어
    메이저리그
    머신러닝
    KalmanFilter
    mlb stats api
    Airflow
    파이썬
    칼만필터
    질롱코리아
    코딩테스트
    프로그래머스
    django
    데이터분석
    게임개발
    MLB
    파이썬게임개발
    FastAPI
    칼만필터는어렵지않아python
    칼만필터는어렵지않아
    넘파이
    AWS
    야구
    Python
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
Minding
챗지피티 API (ChatGPT API) 사용 방법, 가격 알아보기
상단으로

티스토리툴바