In [ ]:
!pip install openai
Collecting openai
  Downloading openai-1.42.0-py3-none-any.whl.metadata (22 kB)
Requirement already satisfied: anyio<5,>=3.5.0 in /usr/local/lib/python3.10/dist-packages (from openai) (3.7.1)
Requirement already satisfied: distro<2,>=1.7.0 in /usr/lib/python3/dist-packages (from openai) (1.7.0)
Collecting httpx<1,>=0.23.0 (from openai)
  Downloading httpx-0.27.0-py3-none-any.whl.metadata (7.2 kB)
Collecting jiter<1,>=0.4.0 (from openai)
  Downloading jiter-0.5.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (3.6 kB)
Requirement already satisfied: pydantic<3,>=1.9.0 in /usr/local/lib/python3.10/dist-packages (from openai) (2.8.2)
Requirement already satisfied: sniffio in /usr/local/lib/python3.10/dist-packages (from openai) (1.3.1)
Requirement already satisfied: tqdm>4 in /usr/local/lib/python3.10/dist-packages (from openai) (4.66.5)
Requirement already satisfied: typing-extensions<5,>=4.11 in /usr/local/lib/python3.10/dist-packages (from openai) (4.12.2)
Requirement already satisfied: idna>=2.8 in /usr/local/lib/python3.10/dist-packages (from anyio<5,>=3.5.0->openai) (3.7)
Requirement already satisfied: exceptiongroup in /usr/local/lib/python3.10/dist-packages (from anyio<5,>=3.5.0->openai) (1.2.2)
Requirement already satisfied: certifi in /usr/local/lib/python3.10/dist-packages (from httpx<1,>=0.23.0->openai) (2024.7.4)
Collecting httpcore==1.* (from httpx<1,>=0.23.0->openai)
  Downloading httpcore-1.0.5-py3-none-any.whl.metadata (20 kB)
Collecting h11<0.15,>=0.13 (from httpcore==1.*->httpx<1,>=0.23.0->openai)
  Downloading h11-0.14.0-py3-none-any.whl.metadata (8.2 kB)
Requirement already satisfied: annotated-types>=0.4.0 in /usr/local/lib/python3.10/dist-packages (from pydantic<3,>=1.9.0->openai) (0.7.0)
Requirement already satisfied: pydantic-core==2.20.1 in /usr/local/lib/python3.10/dist-packages (from pydantic<3,>=1.9.0->openai) (2.20.1)
Downloading openai-1.42.0-py3-none-any.whl (362 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 362.9/362.9 kB 6.4 MB/s eta 0:00:00
Downloading httpx-0.27.0-py3-none-any.whl (75 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 75.6/75.6 kB 3.9 MB/s eta 0:00:00
Downloading httpcore-1.0.5-py3-none-any.whl (77 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 77.9/77.9 kB 4.0 MB/s eta 0:00:00
Downloading jiter-0.5.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (318 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 318.9/318.9 kB 12.4 MB/s eta 0:00:00
Downloading h11-0.14.0-py3-none-any.whl (58 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 58.3/58.3 kB 2.3 MB/s eta 0:00:00
Installing collected packages: jiter, h11, httpcore, httpx, openai
Successfully installed h11-0.14.0 httpcore-1.0.5 httpx-0.27.0 jiter-0.5.0 openai-1.42.0
In [ ]:
import os
from openai import OpenAI

def init_api():
    with open("chatgpt.env") as env:
       for line in env:
           key, value = line.strip().split("=")
           os.environ[key] = value

init_api()
client = OpenAI(api_key  = os.environ.get("API_KEY"))

print(client)
<openai.OpenAI object at 0x7878c879fd00>
In [ ]:
model = "gpt-4"
# First prompt to hashtags into a Python list
messages = [
    {
        "role": "system",
        "content":
            "당신은 사람들이 여행정보를 제공하는 챗봇입니다. "
            "친절한 설명을 해 주세요."
    },
    {
        "role": "user",
        "content":
            "한국여행을 하려고 해. 서울의 여행지를 몇군데 추천해주렴."
    },
]


response = client.chat.completions.create(
  model=model,
  messages=messages,
  max_tokens=500,
  temperature=0,
)
answer = response.choices[0].message.content
print(answer)
물론이죠, 한국의 수도인 서울에는 다양한 여행지가 있습니다. 

1. 경복궁: 조선 시대의 궁궐로, 한복을 입고 방문하면 입장료가 무료입니다. 궁 내부에는 국립민속박물관도 있어 한국의 역사와 문화를 한번에 체험할 수 있습니다.

2. 명동: 쇼핑과 먹거리가 가득한 곳으로, 특히 화장품 쇼핑에 관심이 있다면 명동을 빼놓을 수 없습니다.

3. 남산타워: 서울의 랜드마크로, 타워의 전망대에서는 서울의 전경을 한눈에 볼 수 있습니다. 

4. 북촌한옥마을: 고즈넉한 분위기의 한옥들이 즐비한 곳으로, 한국의 전통적인 건축물을 감상할 수 있습니다.

5. 청계천: 도심 속에서 힐링을 즐길 수 있는 곳으로, 밤에는 아름다운 조명이 켜져 더욱 분위기가 좋습니다.

6. 이태원: 다양한 나라의 음식과 문화를 체험할 수 있는 곳으로, 외국인들이 많이 찾는 지역입니다.

이 외에도 서울에는 많은 관광지가 있으니, 여행 계획에 따라 선택하시면 좋을 것 같습니다. 즐거운 여행 되세요!
In [ ]:
model = "gpt-4"
messages = [
    {
        "role": "system",
        "content":
            "당신은 사람들이 텍스트에서 키워드를 추출하도록 돕는 "
            "도움이 되는 봇입니다. 키워드는 텍스트에서 중요한 단어들입니다. "
    },
    {
        "role": "user",
        "content":
            "기발한 상상력이 넘치는 마을에서, 늙은 거북이 오리온이 "
            "언덕 위에 해바라기 씨를 뿌렸습니다 "
            "그 씨앗들이 별들에게 소원을 전달한다고 믿으면서 "
            "그가 모르는 사이에, 아래에 있던 아이들은 기뻐했습니다, "
            "이 씨앗들이 하늘에서 내린 축복이라고 믿으며 "
            "때때로, 단순한 행동이 마법을 만들어냅니다. "
    },
    {
        "role": "assistant",
        "content":
            "[\"기발한 마을\", \"오래된 거북이\", "
            "\"오리온\", \"해바라기 씨앗\", "
            "\"언덕\", \"소원\", \"별\", "
            "\"아이들\", \"축복\", \"하늘\", "
            "\"간단한 행동\", \"마법\"]"
    },
    {
        "role": "user",
        "content":
            "양자 컴퓨팅 세계에서, 하드론 처리 장치(HPU)가 돋보입니다. "
            "큐비트 중첩을 활용하여 탁월한 속도를 제공합니다. "
            "나노포토닉 회로와 결합되어 빠른 큐비트 통신을 보장하며, "
            "양자 터널링은 오류 정정에 도움을 줍니다. "
            "양자 어닐링 알고리즘을 통해 HPU는 "
            "우리를 양자 우위 달성에 한 걸음 더 가깝게 만듭니다. "
    },
    {
        "role": "assistant",
        "content":
            "[\"양자 컴퓨팅\", \"하드론 처리 장치\", "
            "\"HPU\", \"큐비트 중첩\", \"속도\", "
            "\"나노포토닉 회로\", \"큐비트 통신\", "
            "\"양자 터널링\", \"오류 수정\", "
            "\"양자 어닐링 알고리즘\", "
            "\"양자 우월성\"]"
    },
    {
        "role": "user",
        "content":
            "처음으로 발명된 프로그래밍 언어는 플란칼큘(Plankalkül)로, "
            "1940년대 콘라드 추제가 설계했으나 1972년까지 공개되지 않았고 "
            "1998년에야 구현되었습니다. 처음으로 널리 알려지고 성공한 "
            "고급 프로그래밍 언어는 포트란(Fortran)으로, 1954년부터 1957년까지 존 백우스가 이끄는 "
            "IBM 연구팀이 개발했습니다. 포트란의 성공으로 과학자들로 구성된 위원회가 "
            "\"범용\" 컴퓨터 언어를 개발하게 되었고, 그 결과는 알골 58(ALGOL 58)이었습니다. "
            "별도로 MIT의 존 매카시가 학계에서 기원하여 성공한 최초의 언어인 리습(Lisp)을 "
            "개발했습니다. 이러한 초기 노력들의 성공으로 1960년대 이후 프로그래밍 언어는 "
            "활발한 연구 주제가 되었습니다."
    },
]
In [ ]:
response = client.chat.completions.create(
  model=model,
  messages=messages,
  max_tokens=100,
  temperature=0,
)
print(response.choices[0].message.content)
["프로그래밍 언어", "플란칼큘", "1940년대", "콘라드 추제", "1972년", "1998년", "포트란", "1954년", "1957년", "존 백우스", "IBM", "범용 컴퓨터 언어", "알골
In [ ]:
answer
Out[ ]:
'물론이죠, 한국의 수도인 서울은 다양한 관광지가 있어서 여행하기 좋은 도시입니다. '
In [ ]: