nodejs openia-api 使用示例
时间: 2024-01-31 17:04:48 浏览: 28
以下是使用Node.js调用OpenAI API的示例代码:
```javascript
const fetch = require('node-fetch');
const API_KEY = 'YOUR_API_KEY';
const MODEL_ID = 'davinci';
async function generateText(inputText) {
const prompt = inputText.trim();
const url = `https://api.openai.com/v1/models/${MODEL_ID}/completions`;
const headers = {
'Content-Type': 'application/json',
'Authorization': `Bearer ${API_KEY}`,
};
const body = JSON.stringify({
prompt,
max_tokens: 50,
n: 1,
stop: '\n',
});
const response = await fetch(url, { method: 'POST', headers, body });
const data = await response.json();
const text = data.choices[0].text.trim();
return text;
}
async function main() {
const inputText = 'Hello, how are you?';
const outputText = await generateText(inputText);
console.log(outputText);
}
main();
```
在上面的示例中,我们首先导入`node-fetch`库,这是一种用于在Node.js中进行HTTP请求的库。然后,我们定义了我们的OpenAI API密钥和模型ID。
接下来,我们定义了一个名为`generateText`的异步函数,该函数将输入文本作为参数,并返回生成的文本。在函数中,我们使用`fetch`函数向OpenAI API发送POST请求。我们使用`headers`对象设置请求头,并将请求体设置为一个JSON字符串。我们将`max_tokens`设置为50,这表示我们想要生成的文本的最大长度为50个标记。我们将`n`设置为1,这表示我们只希望生成一段文本。我们将`stop`设置为`\n`,这表示生成的文本将在第一个换行符处停止。
最后,我们解析API的响应,并从中提取生成的文本。最后,在`main`函数中,我们调用`generateText`函数并打印输出文本。
请注意,此示例代码仅供参考,并且需要您使用自己的OpenAI API密钥和模型ID来运行。