반응형
요즘 AI 챗봇이 큰 인기를 끌고 있습니다. 그런데 생각보다 간단한 코드만으로 나만의 AI 챗봇을 만들 수 있다는 사실, 알고 계셨나요? 오늘은 OpenAI의 GPT API를 활용해 파이썬으로 직접 인공지능 챗봇을 만드는 방법을 소개합니다.
GPT API란?
GPT API는 OpenAI가 제공하는 인공지능 모델 접속 인터페이스입니다. 간단한 HTTP 요청만으로 대화형 AI, 글쓰기 보조, 문서 요약, 코드 생성 등 다양한 작업을 처리할 수 있습니다.
활용 예시
- 질문 답변 챗봇
- 아이디어 브레인스토밍 도우미
- 코딩 헬퍼(코드 생성 및 수정)
- 영어 학습 파트너
GPT API를 사용하기 위해 준비할 것
1. OpenAI 회원가입 및 API 키 발급
- OpenAI 가입하기
- 결제 카드 등록 후, API Key 발급받기
2. 파이썬 라이브러리 설치
GPT API를 쉽게 호출하려면 openai 라이브러리를 설치해야 합니다.
pip install openai
GPT API 기본 사용법
챗봇 코드 예제
import openai
# API 키 설정
openai.api_key = '여기에_본인_API_키를_입력하세요'
def ask_gpt(prompt):
response = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=[
{"role": "system", "content": "당신은 친절한 AI 도우미입니다."},
{"role": "user", "content": prompt}
]
)
return response['choices'][0]['message']['content']
# 사용자 입력
while True:
user_input = input("질문하세요 (종료하려면 'exit' 입력): ")
if user_input.lower() == 'exit':
break
answer = ask_gpt(user_input)
print(f"GPT의 답변: {answer}")
코드 설명
- openai.ChatCompletion.create() : 챗봇 대화 API 호출
- system 메시지 : AI의 전체 성격 설정 (예: 친절한 도우미)
- user 메시지 : 실제 사용자의 질문 입력
챗봇 기능 확장하기
1. 대화 기록 유지하기
기존 대화 내용을 기억하도록 메시지 목록을 쌓아가면 자연스러운 대화를 만들 수 있습니다.
messages = [
{"role": "system", "content": "당신은 친절한 AI 도우미입니다."}
]
while True:
user_input = input("질문하세요: ")
if user_input.lower() == 'exit':
break
messages.append({"role": "user", "content": user_input})
response = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=messages
)
answer = response['choices'][0]['message']['content']
messages.append({"role": "assistant", "content": answer})
print(f"GPT의 답변: {answer}")
2. 다양한 스타일의 챗봇 만들기
system 메시지를 변경하면 AI의 성격을 자유롭게 설정할 수 있습니다.
- 코딩 전담 도우미
- 여행 가이드
- 건강 상담 봇
- 영어 회화 선생님
{"role": "system", "content": "당신은 전문 여행 가이드입니다. 세계 여행에 대해 친절하고 상세하게 답하세요."}
주의사항
- API 사용량 요금 : GPT API는 사용량에 따라 요금이 부과됩니다. (무료 크레딧 소진 후 주의!)
- API Key 보안 : 절대 깃허브나 공개 저장소에 API 키를 올리지 마세요.
- 쿼리 제한 : 초당 요청 수 제한이 있으므로, 너무 자주 호출하면 에러가 발생할 수 있습니다.
한눈에 정리
파이썬으로 GPT API를 연결하면, 누구나 쉽게 나만의 인공지능 챗봇을 만들 수 있습니다. 처음에는 간단한 Q&A 챗봇부터 시작해, 점차 대화 기억 기능, 역할 전환, 다양한 응용 프로그램으로 확장해 나갈 수 있습니다.
나만의 챗봇을 통해 일상생활, 공부, 업무 효율을 모두 업그레이드해보세요!
반응형