Pythonでライブラリを使わずにOpenAI APIを使う方法
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()
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 | タグ: API , ChatGPT , OpenAI ]
« 自作ライブラリのセットアップの方法 | PythonでDALL·E 3を使う方法 »
コメントを残す