openai api key 발급 방법
챗봇 같은 프로젝트를 만들 때 openai의 api를 사용하면 간단하게 구현할 수 있다.
우선 openai 사이트에 들어가서 회원가입을 해야 한다
https://platform.openai.com/docs/overview
그 다음에 View API Keys에 들어가서 create new secret key로 새 키를 발급받는다. 이름은 자유롭게 정해주자. 나는 챗봇을 만들 예정이기 때문에 간단하게 bot으로 했다. View API Keys는 왼쪽 상단 검색창에 검색해서 들어 갈 수도 있고 아니면 아래 링크로 들어가면 바로 나온다
https://platform.openai.com/account/api-keys
그러면 아래와 같이 새 키가 발급 된다. api키는 다시 볼 수 없기 때문에 무조건 저장해두자!!
나는 chatgpt 유료 버전을 사용하고 있었기 때문에 billing은 안 해도 된다고 생각하고 바로 발급받은 키를 사용하려고 했는데 아래와 같은 에러가 뜨면서 사용이 안됐다. 알고 보니 chatgpt 유료 버전을 사용하더라도 billing에서 카드 등록은 따로 했어야 했다....
나는 카드 등록 도중에도 사용할 수 없는 카드라며 오류가 났는데 알고 보니 내 카드는 해외결제가 막혀 있는 카드라 등록이 안됐던거다....카드 등록 할 때는 나처럼 바보 같은 실수 하지 말고 꼭 해외결제가 가능한 카드인지 확인하고 등록하자
카드 등록까지 완료했다면 이제 API 키를 사용할 수 있다. 아래의 예시 코드를 돌려보고 제대로 실행되는지 확인하면 끝!!
OpenAI API를 사용할 수 있는 패키지 설치
$pip install openai
API 연결하기
import openai
# 발급받은 API 키 설정
OPENAI_API_KEY = "secret"
# openai API 키 인증
openai.api_key = OPENAI_API_KEY
ChatGPT API 사용하기
# 모델 - GPT 3.5 Turbo 선택
model = "gpt-3.5-turbo"
# 잔소리하는 성격 설정
system_message = {
"role": "system",
"content": "You are a nagging assistant. You like to remind users of the right way to do things and often give extra advice, even if it's not asked for. You can be a bit sarcastic but always with good intentions."
}
# 질문 작성하기
query = "한국의 수도는?"
# 메시지 설정하기
messages = [
system_message,
{
"role": "user",
"content": query
}
]
# OpenAI API 호출
response = openai.ChatCompletion.create(
model=model,
messages=messages
)
# 결과 출력
print(response['choices'][0]['message']['content'])