youtube CodingTheSmartWay - YouTube 를 보면서 해보고 있다.
한국어로 이론적인 설명은 여기 참조
파이썬 OpenAI API 접속하기, text completion create - 파이썬 OpenAI (1) (tistory.com)
파이썬 OpenAI API 접속하기, text completion create - 파이썬 OpenAI (1)
파이썬으로 OpenAI의 API에 접속하는 방법은 다음과 같습니다. 우선 OpenAI 계정(account)를 만들어야 합니다. 계정이 없는 경우 아래 문서의 OpenAI 가입방법을 참고합니다. chatGPT 가입하고 시작하기 / ch
digiconfactory.tistory.com
0. 개발환경 설정
사실 개발환경 설정이 가장 어려운 분야이기도 하다. 어떤 컴에서는 되고 어떤 컴에서는 안되고 하니...
하지만, 자신만의 개발환경을 구축하면 그다음부터는 열심히 코딩만 하면 되니 참 편하다
우선, 좋은 컴퓨터가 있어야 한다. 꼭 비싼 컴퓨터일 필요는 없지만, 윈도우나 맥으로 컴퓨터/마우스/키보드는 필수이다.
다음 파이썬을 설치해야 한다. 사실 여기가 가장 어려울 수 있는데, 챗GPT만을 위한 환경이라면, Anaconda를 추천한다.
다음 편집기를 설치해야 한다. 메모장으로 충분할 수 있지만, 저는 Pycharm을 추천한다. 인텔리제이와 비슷한 환경이라
자바 개발자에게도 친숙한 환경이다. 그밖에 VS Code, 쥬피터 노트북등을 이용할 수 있겠다.
1. OpenAI에 들어가서 키 발급하기
여기는 돈이 든다. 소위 현금질이라고도 할수 있는데, 커피 몇잔 아낀다고 생각하고 과감히 결제한다. 일단 10달러 정도로 시작하면 될 듯 하다. 필자도 현재 9.98달러 남았는데, 예제 2개 돌려보니 이정도 빠지니까, 진짜 열심히 하면 한달내에 아니면 3~4개월은 갈 듯하다.
2. Hello World
import os
API_KEY = os.environ.get('OPENAI_API_KEY')
openai.api_key = API_KEY
# 되는 코드
model_engine = "text-davinci-003"
prompt = "오라클에 대해 설명해줘"
completion = openai.Completion.create(
engine=model_engine,
prompt = prompt,
max_tokens=1024,
n=1,
stop=None,
temperature=0.5,
)
response = completion.choices[0].text
print(response)
오라클은 오라클 코리아에서 개발한 데이터베이스 관리 시스템(DBMS)입니다. 오라클은 관계형 데이터베이스를 사용하여 데이터를 저장하고 관리하는 데 사용됩니다. 오라클은 데이터베이스 관리 시스템 중 가장 널리 사용되는 관계형 데이터베이스 시스템 중 하나입니다. 오라클은 인간이 이해할 수 있는 사용자 친화적인 쿼리 언어를 제공하고, 데이터베이스 백업 및 복구, 보안, 관리 및 관리 등의 기능을 제공합니다. 또한 다양한 플랫폼에서 실행되며, 네트워크 기반의 데이터베이스 관리 시스템을 제공합니다.
Process finished with exit code 0
import json
import sseclient
# import openai
import os
API_KEY = os.environ.get('OPENAI_API_KEY')
# openai.api_key = API_KEY
def performRequestWithStreaming():
reqUrl = 'https://api.openai.com/v1/completions'
reqHeaders = {
'Accept': 'text/event-stream',
'Authorization': 'Bearer ' + API_KEY
}
reqBody = {
"model": "text-davinci-003",
"prompt": "파이썬은 무엇인가?",
"max_tokens": 1024,
"temperature": 0,
"stream": True,
}
request = requests.post(reqUrl, stream=True, headers=reqHeaders, json=reqBody)
client = sseclient.SSEClient(request)
for event in client.events():
if event.data != '[DONE]':
print(json.loads(event.data)['choices'][0]['text'], end="", flush=True)
if __name__ == '__main__':
performRequestWithStreaming()
결과는 다음과 같다.
C:\Users\a\anaconda3\python.exe C:\Users\a\PycharmProjects\pythonProject2\chat2.py
파이썬은 객체지향 프로그래밍 언어로, 인터프리터 언어로 만들어진 고급 프로그래밍 언어입니다. 파이썬은 다양한 응용 분야에서 사용되며, 웹 개발, 시스템 스크립트, 데이터 분석 및 인공 지능 분야에서 널리 사용됩니다. 파이썬은 다양한 플랫폼과 운영 체제에서 실행되며, 다양한 프로그래밍 스타일을 지원합니다.
Process finished with exit code 0
'python' 카테고리의 다른 글
| Chatgpt Completion create 메소드 정리 (0) | 2023.11.16 |
|---|---|
| Python + ChatGPT(gpt-3.5-turbo용으로 변경) (0) | 2023.11.16 |
| FastApi + ElasticSearch로 간단한 영화검색 만들기 (0) | 2023.07.30 |
| 엘라스틱 서치: Nori 토크나이저를 사용한 검색(python 연결) (0) | 2023.07.29 |
| Elastic Search Python 연결 (0) | 2023.07.29 |
