본문 바로가기
AI

OpenAI API로 나만의 AI봇 만드는 간단한 코딩 방법

by 누워서 코딩 2023. 3. 6.

이번 포스팅은 OpenAI API를 사용하여 나만의 AI를 만드는 간단한 코딩 방법을 알아보겠습니다. 실습에 앞서 OpenAI API에 대한 간단한 사용 방법은 이전 포스팅을 먼저 참고해 보세요.

 

OpenAI API 초간단 사용 방법

 

OpenAI API로 나만의 AI봇 만드는 방법

 

Step 1. OpenAI API 사이트 접속

OpenAI API 사이트로 들어가셔서 로그인을 하셔야 합니다. 회원가입 되어있지 않다면 본인의 SNS등으로 간편히 연동도 가능합니다.

로그인하셨으면 다음의 OpenAI API를 바로 사용 가능한 링크로 들어갑니다.

 

OpenAI API 바로 사용하기

또는 Overview - 로그인 후 Get Started로 바로 들어가셔도 됩니다. 자신이 개발자라면 'for developers' 선택하셔도 간단한 예제와 함께 Get started의 내용을 보실 수 있습니다.

openai
openai

실제 예제 코드만 봐도 구조가 매우 간단한거로 보입니다. openai를 import 한 후, 해당 api의 파라미터를 옵션에 따라 세팅하는 구조로 보입니다. 여기서 engine은 'davinci'로 설정이 되었는데, 참고로 현재는 davinci 3이 가장 최신인 2021년 데이터 기반의 가장 성능이 우수한 옵션입니다.

 

Step 2. Example 활용하기

 

Example로 들어가면 여러가지 활용 가능한 예제들이 나오는데요. 이번 포스팅 주제에 맞게 채팅 - AI 비서와 개방형 대화 예제를 활용해 볼게요.

 

Step 3. OPENAI_API_KEY 활용 코딩 하기

다음은 실제로 사용된 샘플 코드입니다.  다음 예제는 간단하게 작성된, 자신만의 OpenAI 채팅봇으로 활용 가능한 코딩 예제입니다. 

model 옵션으로 davinchi-003이 선택되었고, prompt 옵션이 사용되었습니다. prompt는 입력값을 받아오게끔 세팅합니다. temperature옵션은 무작위성을 지정하는 옵션으로 이 값을 변경하면 결과도 무작위성의 속성이 반영되어 내용들이 달라집니다. 그리고 max_tokens는 4000인데, 현재는 3개월 무료이지만 유료로 사용 시에는 API token의 개수에 따라 가격이 책정되는데요. 여기서는 일단 현재 davinci 3의 최대치 값인 4000번까지로 제한해 봤습니다.

 

그리고 주요하게 볼 부분이 "OPENAI_API_KEY" 인데, 이 key값은 OpenAI API 페이지에서 부여받은 고유한 Key를 입력하셔야 합니다. OPENAI_API_KEY 키 부여 받는 방법은 자신의 계정에서 View API keys - Create new secret key를 클릭하셔서 부여받으시면 됩니다.

 

API-keys

참고로 key값의 입력 방법은 하드 코딩으로 직접 넣으시거나, 또는 별도로 환경변수를 만들어 환경변수에 입력하셔야 합니다. 다음은 실제 예제 코드이니 참고해 보세요.

import os
import openai

openai.api_key = "OPENAI_API_KEY"

prompt = input("명령을 하세요 : ")

response = openai.Completion.create(
    model="text-davinci-003",
    prompt=prompt,
    temperature=1,
    max_tokens=4000
)

print("------------------------------------")
print(str(response["choices"][0]["text"]).strip())
print("------------------------------------")

 

Step 4. 실행 결과 보기

실제 예제를 실행한 결과를 볼게요. 예제에서는 Les Brown의 성공 스토리에 대한 요약을 요청 해 봤습니다. 정말 Les Brown의 성공 스토리를 요약해서 써주네요. 하지만 davinci-003 역시 사람이 썼다고 하기에는 아직은 기계적인 어색함은 있는 듯합니다.

 

openai-api
openai-api

블로그의 다른 글 읽기

OpenAI API 초간단 사용 방법

코드 도용 방지 툴: 크리미널IP(CriminalIP)란 무엇?

댓글