logo

Unity调用文心-ERNIE-Bot-turbo

参考文章
  
  
private readonly string apiKey = "";
private readonly string secretKey = "";
private readonly string tokenUrl = "https://aip.baidubce.com/oauth/2.0/token";
void Start()
{
StartCoroutine(GetAccessToken());
}
IEnumerator GetAccessToken()
{
WWWForm form = new WWWForm();
form.AddField("grant_type", "client_credentials");
form.AddField("client_id", apiKey);
form.AddField("client_secret", secretKey);
Debug.LogError(1);
using (UnityWebRequest www = UnityWebRequest.Post(tokenUrl, form))
{
yield return www.SendWebRequest();
Debug.LogError(2);
if (www.result != UnityWebRequest.Result.Success)
{
Debug.LogError(www.error);
}
else
{
string accessToken = JsonUtility.FromJson<AccessTokenResponse>(www.downloadHandler.text).access_token;
StartCoroutine(SendRequest(accessToken));
}
}
}
IEnumerator SendRequest(string accessToken)
{
string url = "https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/eb-instant?access_token=" + accessToken;
var body = @"{""messages"":[{""role"":""user"",""content"":""你好""}]}";
Debug.LogError(body);
using (UnityWebRequest www = new UnityWebRequest(url, "POST"))
{
byte[] bodyRaw = Encoding.UTF8.GetBytes(body);
www.uploadHandler = (UploadHandler)new UploadHandlerRaw(bodyRaw);
www.downloadHandler = (DownloadHandler)new DownloadHandlerBuffer();
www.SetRequestHeader("Content-Type", "application/json");
yield return www.SendWebRequest();
if (www.result != UnityWebRequest.Result.Success)
{
Debug.LogError(www.error);
}
else
{
Debug.LogError("Response headers: " + www.GetResponseHeaders());
Debug.LogError("Response: " + www.downloadHandler.text);
}
}
}
[System.Serializable]
private class AccessTokenResponse
{
public string access_token;
}
————————————————
版权声明:本文为CSDN博主「我的巨剑能轻松搅动潮汐」的原创文章
原文链接:https://blog.csdn.net/weixin_56537692/article/details/136197578
如有侵权,请联系千帆社区进行删除
评论
用户头像