【chatgpt】Unity的c#的调用openai的接口教程,支持gpt4

智增增api8个月前更新 zhizengzeng
216 0

这次是unity的c#的chatgpt代码示例

要买openai的账号?

要科学上网?

要美元的银行卡?

通通不用的,也能直接调用就行,简单粗暴,关键好用!!哈哈

废话不多说,直接上代码。这次上unity的c#代码

github地址:github.com/xing61/xiaoy

  • 第2步:编写代码。注意配置的base_url是:https://flag.smarttrot.com/v1
using System;
using System.Collections;
using System.Text;
using UnityEngine;
using UnityEngine.Networking;
using LitJson; //这个需要百度下载一个LitJson库然后放入Assets目录下

public class ChatGPTScripts : MonoBehaviour
{
    private string postUrl = "https://flag.smarttrot.com/v1/chat/completions";
    private const string apiSecretKey = "api_secret_key";
    private const string user = "user";
    private const string messages = "messages";

    private void Start()
    {
        StartCoroutine(Post());
    }
    IEnumerator Post()
    {/**//**/
        WWWForm form = new WWWForm();/**/
        
        // 配置数据
        JsonData data = new JsonData();
        data[apiSecretKey] = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
        data[user] = "测试者";
        
        // messages
        JsonData messageDatas = new JsonData();
        messageDatas.SetJsonType(JsonType.Array);
        
        // 单个 message
        JsonData messageData = new JsonData();
        messageData["role"] = "user";
        messageData["content"] = "请介绍一下你自己";
        
        // 存入 message
        messageDatas.Add(messageData);
        
        // 配置内容
        data[messages] = messageDatas;
        
        // 编码 JSON
        var dataBytes = Encoding.Default.GetBytes(data.ToJson());
        UnityWebRequest request = UnityWebRequest.Post(postUrl, form);
        request.uploadHandler = new UploadHandlerRaw(dataBytes);

        // 发送 https
        request.SetRequestHeader("Content-Type", "application/json");
        yield return request.SendWebRequest();
        if(request.isHttpError || request.isNetworkError)
        {
            Debug.LogError(request.error);
        }
        else
        {
            string receiveContent = request.downloadHandler.text;
            Debug.Log(receiveContent);
        }
    }
}

理论上应该是能直接用的。 代码很简单
不过有几点要说的:

  1. 如果要使用gpt-4,一定要增加参数model=gpt-4
  2. 请求的接口说明在哪里?在github上都有

© 版权声明

相关文章

暂无评论

暂无评论...