base64

// Base64データの準備 (例: msg.payload.imageDataがBase64エンコードされた画像データを含む)
const base64ImageData = msg.payload || ""; // 画像データがmsg.payloadにあると仮定

// apikeyをglobalから取得
const apikey = global.get("apikey");

const model = "gpt-4o";
const url = "https://api.openai.com/v1/chat/completions";


var temperature = 0;
var maxTokens = 100;

const content = [
    { "type": "text", "text": "この画像には何が含まれていますか?" },
    { 
        "type": "image_base64", 
         "image_base64": base64ImageData,
    }
];

// OpenAI APIのリクエストボディの構築
const requestBody = {
    "model": model,
    "messages": [{ "role": "user", "content": JSON.stringify(content) }], // contentをJSON文字列化
    "max_tokens": maxTokens
};

msg.headers = {
    "Content-Type": "application/json",
    "Authorization": "Bearer " + apikey
};

msg.url = url;

msg.payload = requestBody;

return msg;