unity3d - OpenAI Unity - POST 请求无法正常工作(400 状态)

标签 unity3d httprequest openai-api gpt-3

我正在连接 GPT3 OpenAI但我无法设法向它发出正确的 POST 请求(我正在遵循一些指南,但对他们来说它有效......)。

private IEnumerator Upload ( )
{
    WWWForm form = new WWWForm();
    form.AddField ( "prompt", prompt );
    form.AddField ( "max_tokens", maxTokens );
    form.AddField ( "model", model );
    form.AddField ( "temperature", temperature );

    using ( UnityWebRequest wR = UnityWebRequest.Post ( "https://api.openai.com/v1/completions", form ) )
    {
        wR.SetRequestHeader ( "Authorization", "Bearer " + apiKey );
        wR.SetRequestHeader ( "Content-Type", "json" );
        yield return wR.SendWebRequest ( );
        if ( wR.result != UnityWebRequest.Result.Success )
        {
            Debug.Log ( "ERROR:\n" + wR.error );
        }
        else
        {
            Debug.Log ( "Success:\n" + wR.result + "\nUpload Completed!);
        }
    }
}

我的代码总是返回一个错误的请求(又名 400 Bad Request)。

最佳答案

从标题中删除“Content-Type”。内容不是 JSON,而是表单数据。

using ( UnityWebRequest wR = UnityWebRequest.Post ( "https://api.openai.com/v1/completions", form ) )
{
    wR.SetRequestHeader ( "Authorization", "Bearer " + apiKey );
    //wR.SetRequestHeader ( "Content-Type", "json" );
    yield return wR.SendWebRequest ( );
    if ( wR.result != UnityWebRequest.Result.Success )
    {
        Debug.Log ( "ERROR:\n" + wR.error );
    }
    else
    {
        Debug.Log ( "Success:\n" + wR.result + "\nUpload Completed!);
    }
}

关于unity3d - OpenAI Unity - POST 请求无法正常工作(400 状态),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75091786/

相关文章:

android - 检查unity3D(iOS,Android)中是否有SMS

ios - 将 unity 5 项目从 windows 移动到 mac 以实现 iOS 导致 "symbol(s) not found for architecture arm64"错误

xcode - 如何同时发送一定数量的 POST/GET 请求?

ios - 如果没有连接,为什么调用 swiftHTTP 作为响应处理程序?

python - Openai API 继续对话

sql - 如何从聊天 gpt 响应中仅提取代码内容?

Facebook SDK for Unity 如何在 Invitable_friends id(token) 中使用 FB.AppRequest?

c# - Unity 自定义编辑器 GUI

javascript - RxJS + Node.js Http 请求

php - 使用 php 从 openai GPT-3 API 流式传输数据