더보기
* 과정 목표
① OpenAI API를 통해 파이썬 코드로 직접 ChatGPT 질문을 던지고 답변을 받을 수 있다.
② 언어 모델에 대한 최신 모델 방향을 파악한다.
③ LangChain과 RAG를 이용하여 손쉽게 나만의 챗봇을 만들 수 있다.
1. 언어모델 이해
1) API란?

- 손님이 점원에게 주문을 하면 점원은 요리사에게 그 주문을 전달
- 요리사는 요리를 만들어 점원에게 전달하면 점원은 요리를 손님에게 가져다 줌.
- 여기서 점원이 바로 API
- API는 클라이언트에게 요청을 받아 서버로 전달
- 서버는 요청을 처리한 후 결과 데이터를 API에 전달하면 API가 다시 데이터를 클라이언트로 전달
"소프트웨어 간에 데이터를 교환하고 통신할 수 있도록 하는 인터페이스를 제공"
2) API를 사용하기 위해서

① 우선 API 가장 기본적인 구성 요소 3가지
| KEY | 양식을 맞춰야 함 | 결과 형태를 알아야 함 |
② Request - Response
- Request(요청양식) : API 주소 + API Key
- Response(결과 양식)
2. ChatGPT API로 연결하기
1) ChatGPT API - 발급받기
- 감사하게도 에이블스쿨에서 API를 발급받아주었지만, 어케 발급받는지 과정은 알아두어야 할 것 같아서..!
(1) OpenAI로 접속 > 로그인 > API 선택

(2) API Key 생성
![]() |
![]() |
키 생성 후 API 키 복사해서 따로 저장 (잊어버리면, 다시 발급 필요) |
2) ChatGPT API 사용하기
(1) 환경 준비
① 라이브러리 설치
!pip install openai
② 라이브러리 Import
import pandas as pd
import numpy as np
import os
import openai
from openai import OpenAI
api_key = '발급받은 키' # 위에서 발급받은 API 키
os.environ['OPENAI_API_KEY']= api_key # os.environ : 환경 변수 생성
openai.api_key = os.getenv('OPEN_API_JEY')
# 코랩에 가상환경 변수로 등록,
# os.getenv('OPEN_API_JEY') 환경 변수에서 키 값 가져옴
# openai.api_key에 할당하여, OpenAI API 사용할 때 이 키를 사용하도록 설정
(2) API 사용하기
▶ 역할을 부여한 ChatGPT에게 질문하기
def ask_chatgpt2(sys_role, question):
response = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=[
{"role": "system", "content": sys_role}, # 역할 부여
{"role": "user", "content": question}, # 질문하기
]
)
return response.choices[0].message.content
# 원하는 역할 부여
sys_role = '당신은 아름답고 감동적인 시를 창작하는 데 영감을 주는 시적인 천재입니다. 당신의 시는 감정의 깊이, 자연의 아름다움, 인간 경험의 복잡성을 탐구하는 작품이며, 당신의 시를 읽는 이들의 마음을 움직입니다.'
# 원하는 질문 입력
question = "생성형 AI란 주제로 시를 지어줘. 운율에 맞춰서 작성해줘야 해."
response = ask_chatgpt2(sys_role, question)
print(response)
'딥러닝' 카테고리의 다른 글
| [딥러닝] 언어모델 이해 (3) Tokenizing & Embedding _ 20241105 (10) | 2024.11.05 |
|---|---|
| [딥러닝] 언어모델 이해 (2) Transformer _ 20241105 (17) | 2024.11.05 |
| [딥러닝] CNN _ 20241104 (0) | 2024.11.04 |
| [딥러닝] 딥러닝 모델 저장하기 _ 20241101 (2) | 2024.11.01 |
| [딥러닝] 딥러닝 성능관리 _ 20241101 (2) | 2024.11.01 |

