こちらのプログラムを Node.js の https モジュールを使って書きました。
Curl: ChatGPT API の使い方
プログラム
node_fuji.sh
export OPENAI_API_KEY="sk-****************'
./node_fuji.js > out01.json
#
jq .choices[0].message out01.json
node_fuji.js
#! /usr/bin/node
// ---------------------------------------------------------------
// node_fuji.js
//
// Apr/08/2023
//
// ---------------------------------------------------------------
console.error ("*** 開始 ***")
const https = require('https')
const options = {
hostname: 'api.openai.com',
path: '/v1/chat/completions',
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': `Bearer ${process.env.OPENAI_API_KEY}`
}
}
const data = JSON.stringify({
"model": "gpt-3.5-turbo",
"messages": [{"role": "user", "content": "富士山の高さは"}]
})
const req = https.request(options, res => {
let responseBody = ''
res.on('data', chunk => {
responseBody += chunk
})
res.on('end', () => {
console.log(responseBody)
console.error ("*** 終了 ***")
})
})
req.on('error', error => {
console.error(error)
})
req.write(data)
req.end()
// ---------------------------------------------------------------
実行結果
$ ./node_fuji.sh
*** 開始 ***
*** 終了 ***
{
"role": "assistant",
"content": "3776メートルです。"
}