javascript - 聊天 GPT API key 故障排除

标签 javascript office-scripts chatgpt-api chatgpt-plugin

我目前正在尝试在 Excel 中制作一个仪表板,使我能够利用 Chat GPT 为同事回答基本的 Excel 问题。它不断返回的问题表明我无法使用从 Chat GPT API 获得的 API key ,但我确实有一个付费帐户。我根据下面列出的视频链接编写了这个 Office 脚本。由于 Excel 中不断出现错误,我确实更改了视频中可用的代码。我也删除了我的 API key 。你们对我应该做什么有什么想法吗?

视频链接:https://youtu.be/kQPUWryXwag

Code:async function main(workbook: ExcelScript.Workbook) {
  const apiKey: string = "API Key Insert";
    const endpoint: string = "https://api.openai.com/v1/completions";

    const sheet: ExcelScript.Worksheet = workbook.getWorksheet("Prompt");
    const mytext: string = sheet.getRange("B2").getValue();

    const result: ExcelScript.Worksheet = workbook.getWorksheet("Result");
    result.getRange("A1:D1000").clear();
    sheet.getRange("B3").setValue(" ");

    const model: string = "text-davinci-002";
    const prompt: string = mytext.toString();

    const headers: Headers = new Headers();
    headers.append("Content-Type", "application/json");
    headers.append("Authorization", `Bearer ${apiKey}`);

    const body: string = JSON.stringify({
        model: model,
        prompt: prompt,
        max_tokens: 1024,
        n: 1,
        temperature: 0.5,
    });

    console.log("Request body:", body);

    const response: Response = await fetch(endpoint, {
        method: "POST",
        headers: headers,
        body: body,
    });

    const jsonResponse: { choices: { text: string | boolean | number }[] } = await response.json();
    console.log("Response:", jsonResponse);

    const json: { choices: { text: string | boolean | number }[] } = jsonResponse;

    let text: string | boolean | number = "";

    if (json.choices && json.choices.length > 0) {
        text = json.choices[0].text;
    }

    console.log("Generated text:", text);

    const output: ExcelScript.Range = sheet.getRange("B4");
    output.setValue(text);

    const cell: ExcelScript.Range = sheet.getRange("B4");
    const arr: string[] = cell.getValue().toString().split("\n");
    const newcell: ExcelScript.Range = result.getRange("A1");
    var offset: number = 0;

    for (let i = 0; i < arr.length; i++) {
        if (arr[i].length > 0) {
            newcell.getOffsetRange(offset, 0).setValue(arr[i]);
            offset++;
        }
    }

    if (offset > 1) {
        sheet.getRange("B3").setValue("Check 'Result' sheet to get answers separated by multiple rows");
    }
}

错误消息:

请求正文:{"model":"text-davinci-002","prompt":"美国最大的建筑是什么?","max_tokens":1024,"n":1,"温度”:0.5}响应:{错误:对象}错误:对象消息:“您超出了当前配额,请检查您的计划和账单详细信息。”类型:“insufficient_quota” 参数:null 代码:null 生成的文本:

故障排除:我已尝试使用新的 API key 。我使用 Chat GPT API 购买了付费帐户。老实说,我认为如果我获得了付费帐户,那么当我创建新的 API key 时,错误消息就会消失。

最佳答案

该错误表明您已用完配额。因此,如果您使用的是免费计划,则需要升级到付费计划。如果您已经使用付费套餐,则需要升级才能增加限额。

关于javascript - 聊天 GPT API key 故障排除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76533895/

相关文章:

javascript - 在表格 HTML 的另一页上显示表格数据

excel - 如何在 ExcelScript for web 上对单元格颜色进行排序?

python - Python 中的 ChatGPT 包装器作为命令行解释器

javascript - 如何将 map 插入数组并清除原始 map 以存储更多数据

javascript - 为什么这个页面在 Firefox 上这么慢?

javascript - 如何将函数应用于具有同一类的多个元素?

excel - Excel 中的 Office 脚本 "Delete All Rows Except The First Header Row"

excel - Office 脚本,忽略删除范围名称,没有错误

chatbot - 如何使用 langchain 创建多用户聊天机器人

php - ChatGPT OpenAI 与 API 中的问题