Pythonでライブラリを使わずにOpenAI APIを使う方法

Pocket

PythonでOpenAIのAPIを使う場合、通常はライブラリのopenaiを使います。
しかし最近、次のようなエラーが出て使えません。
ImportError: cannot import name 'OpenAI' from 'openai'
そこでライブラリを使わずにAPIを直接使うことを思いつきました。
実際、PHPはライブラリなしで、APIを使っているので、それを応用します。

get_answer_chatgptという関数を作りました。
api_keyに自分のキーをセットします。
引数にプロンプトをセットして実行するとテキストが返ります。

import json
import requests

def main():
  req_question = "日本の歴史上最も有名な人を教えて"
  result = get_answer_chatgpt(req_question)
  print(result)

def get_answer_chatgpt(req_question):
  api_key = "sk-xxxxx"
  endpoint = "https://api.openai.com/v1/chat/completions"
  headers = {
    "Content-Type": "application/json",
    "Authorization": f"Bearer {api_key}"
  }
  data = {
    "model": "gpt-4-0125-preview",
    "messages": [{
      "role": "user",
      "content": req_question
    }]
  }
  response = requests.post(
    endpoint,
    data=json.dumps(data),
    headers=headers
  )
  result = response.json()
  text = result["choices"][0]["message"]["content"]
  return text

if __name__ == "__main__":
  main()

[ 2024年3月6日 | カテゴリー: Python | タグ: , , ]

« | »

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

送信してください。


タグ

カテゴリー

最近の投稿

最近のコメント

固定ページ

アーカイブ

stabucky

写真

メタ情報