BadRequestError:400 内容类型无效。 image_url 仅某些型号支持

问题描述 投票:0回答:1

我正在尝试使用 Open ai 的 gpt-4-turbo 模型来生成图像到文本的描述 但我面临这个问题 - BadRequestError: 400 Invalid content type。 image_url 仅受某些型号支持。

app.post('/analyze-image', cors(corsOptions), async (req, res) => {
  try {
    const { image } = req.body;
    const base64Image = await convertBufferToBase64(image);
    // Pass base64Image to OpenAI API
    const response = await openai.chat.completions.create({
      model: "gpt-4-turbo",
      messages: [
        {
          role: "user",
          content: [
            { type: "text", text: "What's in this image?" },
            { type: "image_url", url: `data:image/jpeg;base64,${base64Image}` },

          ],
        },
      ],
    });
    res.json(response.choices[0]);
  } catch (error) {
    console.error(error);
    res.status(500).send('Error analyzing image');
  }
});

即使我尝试使用网址,但该网址也出现同样的错误 如何解决这个问题?

node.js openai-api
1个回答
0
投票

发生这种情况是因为

GPT-4 turbo
模型不支持图像处理。如果您想将 GPT-4 与图像一起使用,请使用 GPT-4 Vision

编辑后的代码:

app.post('/analyze-image', cors(corsOptions), async (req, res) => {
  try {
    const { image } = req.body;
    const base64Image = await convertBufferToBase64(image);
    // Pass base64Image to OpenAI API
    const response = await openai.chat.completions.create({
      model: "gpt-4-vision-preview",
      messages: [
        {
          role: "user",
          content: [
            { type: "text", text: "What's in this image?" },
            { type: "image_url", url: `data:image/jpeg;base64,${base64Image}` },

          ],
        },
      ],
    });
    res.json(response.choices[0]);
  } catch (error) {
    console.error(error);
    res.status(500).send('Error analyzing image');
  }
});

注意:我没有测试代码,但它应该可以工作。

© www.soinside.com 2019 - 2024. All rights reserved.