LoginSignup
1
1

More than 1 year has passed since last update.

Azure OpenAIのGPT-4にてChatCompletionをcurlする方法

Posted at

はじめに

Azure OpenAIのGPT-4についてChatCompletionパラメータの作り方のメモです。
OpenAI Python SDKについてはAzureで詳細な解説がありますのでこちらを参照してください。

パラメータ説明

使用者固有になる部分の設定内容です。

最初のXXXXX部分はAzure管理画面のキーとエンドポイントに表示されているエンドポイントを設定しましょう。このような表示になっていると思います。

次のXXXXX部分はAzure管理画面のモデル デプロイに表示されているモデル デプロイ名を設定しましょう。

次のXXXXX部分はAzure管理画面のキーとエンドポイントに表示されているキー 1を設定しましょう。

curlサンプル

curl "https://XXXXX.openai.azure.com/openai/deployments/XXXXX/chat/completions?api-version=2023-03-15-preview" \
  -H "Content-Type: application/json" \
  -H "api-key: XXXXX" \
  -d '{"messages":[{"role":"user","content":"令和元年の西暦を教えてください"}]}' | jq

返却サンプル

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   477  100   389  100    88    135     30  0:00:02  0:00:02 --:--:--   166
{
  "id": "chatcmpl-7FFh3wod1zWl8PsQWHAeGv42MlZVi",
  "object": "chat.completion",
  "created": 1683869601,
  "model": "gpt-4-32k",
  "choices": [
    {
      "index": 0,
      "finish_reason": "stop",
      "message": {
        "role": "assistant",
        "content": "令和元年は、2019年です。令和は、2019年5月1日から始まった日本の新しい年号です。"
      }
    }
  ],
  "usage": {
    "completion_tokens": 40,
    "prompt_tokens": 21,
    "total_tokens": 61
  }
}

gasサンプル

  var chat_seq = [];
  chat_seq.push({"role": "user", "content": "令和元年の西暦を教えてください"});

  var params = {
    'messages': chat_seq,
  };
  var headers = {
    'Content-Type': 'application/json',
    'api-key': 'XXXXX',
  };
  var data = JSON.stringify(params);
  var options = {
     "method" : "post",
     "payload" : data,
     "headers" : headers,
  };

  var response = UrlFetchApp.fetch("https://XXXXX.openai.azure.com/openai/deployments/XXXXX/chat/completions?api-version=2023-03-15-preview", options);
  let json = JSON.parse(response);
  const answer = json.choices[0].message.content;
1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1