ChatGPT API Perl版

ChatGPT API メモ。
OpenAI API Reference
エンドポイント
Chatエンドポイント
画像生成エンドポイント
ドキュメントにあるCURLのリクエストとレスポンス
Chat
デフォルトChatリクエスト
curl https://api.openai.com/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-d '{
"model": "gpt-4o",
"messages": [
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "Hello!"
}
]
}'
デフォルトChatレスポンス
{
"id": "chatcmpl-123",
"object": "chat.completion",
"created": 1677652288,
"model": "gpt-3.5-turbo-0125",
"system_fingerprint": "fp_44709d6fcb",
"choices": [{
"index": 0,
"message": {
"role": "assistant",
"content": "\n\nHello there, how may I assist you today?",
},
"logprobs": null,
"finish_reason": "stop"
}],
"usage": {
"prompt_tokens": 9,
"completion_tokens": 12,
"total_tokens": 21
}
}
Image Inputリクエスト
curl https://api.openai.com/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-d '{
"model": "gpt-4-turbo",
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "What'\''s in this image?"
},
{
"type": "image_url",
"image_url": {
"url": "https://upload.wikimedia.org/wikipedia/commons/thumb/d/dd/Gfp-wisconsin-madison-the-nature-boardwalk.jpg/2560px-Gfp-wisconsin-madison-the-nature-boardwalk.jpg"
}
}
]
}
],
"max_tokens": 300
}'
Image Inputレスポンス
{
"id": "chatcmpl-123",
"object": "chat.completion",
"created": 1677652288,
"model": "gpt-3.5-turbo-0125",
"system_fingerprint": "fp_44709d6fcb",
"choices": [{
"index": 0,
"message": {
"role": "assistant",
"content": "\n\nThis image shows a wooden boardwalk extending through a lush green marshland.",
},
"logprobs": null,
"finish_reason": "stop"
}],
"usage": {
"prompt_tokens": 9,
"completion_tokens": 12,
"total_tokens": 21
}
}
画像生成
リクエスト
curl https://api.openai.com/v1/images/generations \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-d '{
"model": "dall-e-3",
"prompt": "A cute baby sea otter",
"n": 1,
"size": "1024x1024"
}'
| prompt | dall-e-3は、最大4000文字 |
|---|---|
| model | dall-e-2、dall-e-3 デフォルトはdall-e-2 |
| n | 生成枚数。dall-e-3は、1枚のみ |
| quality | 画像のクオリティをstandardかhdで指定(dall-e-3のみ)デフォルトはstandard |
| response_format | 生成画像タイプをURLかb64_jsonで指定。デフォルトはURL(URLの場合、画像生成後60分で消滅) |
| size | 生成画像のサイズ指定。dall-e-3は、1024x1024 1792x1024 1024x1792 の3種類 |
| style | vivid naturalがある。デフォルトはvivid。vivid を使用すると、超リアルでドラマチックな画像を生成。Natural を選択すると、より自然で、あまり現実的ではない画像を生成。 |
| user | 不正利用対策に利用できる |
レスポンス
{
"created": 1589478378,
"data": [
{
"url": "https://..."
},
{
"url": "https://..."
}
]
}
Perl サブルーチン
続きを読むにはパスワードを入力してください。