### 错误400:无效的JSON负载,AI API上的未知名称generationConfig Curl命令

我在尝试在React Native中使用生成语言API(Gemini API),所以我首先尝试使用curl。有人给了我这个命令:

`

API_KEY="YOUR_API_KEY"# 在下面的generationConfig中调整安全设置。# 请参阅 https://ai.google.dev/gemini-api/docs/safety-settingscurl \  -X POST https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash:generateContent?key=${API_KEY} \  -H 'Content-Type: application/json' \  -d @<(echo '{  "contents": [    {      "role": "user",      "parts": [        {          "text": "input: "        },        {          "text": "output: "        }      ]    }  ],  "generationConfig": {    "temperature": 1,    "topK": 64,    "topP": 0.95,    "maxOutputTokens": 8192,    "responseMimeType": "text/plain"  }}')

`

但我得到了这个错误:

"error": { "code": 400, "message": "接收到无效的JSON负载。未知名称\"generationConfig\":无法找到字段。", "status": "INVALID_ARGUMENT", "details": [ { "@type": "type.googleapis.com/google.rpc.BadRequest", "fieldViolations": [ { "description": "接收到无效的JSON负载。未知名称\"generationConfig\":无法找到字段。" } ] } ] } }'

除了API密钥之外,还有什么需要调整的吗?我正在尝试在React Native中使用生成语言API(Gemini API),所以我首先尝试使用curl。我希望能得到AI的响应。


回答:

将curl转换为使用Axios或Fetch会更容易也更好:

使用Axios:

npm install axios

import axios from 'axios';const API_KEY = 'YOUR_API_KEY';const url = `https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash:generateContent?key=${API_KEY}`;const requestData = {  contents: [    {      role: 'user',      parts: [        { text: 'input: ' },        { text: 'output: ' }      ]    }  ],  generationConfig: {    temperature: 1,    topK: 64,    topP: 0.95,    maxOutputTokens: 8192,    responseMimeType: 'text/plain'  }};axios.post(url, requestData, {  headers: {    'Content-Type': 'application/json'  }}).then(response => {  console.log(response.data);}).catch(error => {  console.error('Error:', error);});

使用标准Fetch:

const API_KEY = 'YOUR_API_KEY';const url = `https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash:generateContent?key=${API_KEY}`;const requestData = {  contents: [    {      role: 'user',      parts: [        { text: 'input: ' },        { text: 'output: ' }      ]    }  ],  generationConfig: {    temperature: 1,    topK: 64,    topP: 0.95,    maxOutputTokens: 8192,    responseMimeType: 'text/plain'  }};fetch(url, {  method: 'POST',  headers: {    'Content-Type': 'application/json'  },  body: JSON.stringify(requestData)})  .then(response => response.json())  .then(data => console.log(data))  .catch(error => console.error('Error:', error));

Related Posts

Keras Dense层输入未被展平

这是我的测试代码: from keras import…

无法将分类变量输入随机森林

我有10个分类变量和3个数值变量。我在分割后直接将它们…

如何在Keras中对每个输出应用Sigmoid函数?

这是我代码的一部分。 model = Sequenti…

如何选择类概率的最佳阈值?

我的神经网络输出是一个用于多标签分类的预测类概率表: …

在Keras中使用深度学习得到不同的结果

我按照一个教程使用Keras中的深度神经网络进行文本分…

‘MatMul’操作的输入’b’类型为float32,与参数’a’的类型float64不匹配

我写了一个简单的TensorFlow代码,但不断遇到T…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注