下面是一个简单的 Unity C# 代码示例,用于与 OpenAI GPT-3 的 API 进行通信,以获得 AI 回复:
using System.Collections; using UnityEngine; using UnityEngine.Networking; using UnityEngine.UI; public class OpenAIChat : MonoBehaviour { public string <em>api</em>Key; public string prompt; public int maxTokens; public float temperature; public Text responseText; private const string <em>API</em>_URL = "https://<em>api</em>.openai.com/v1/engines/davinci-<em>code</em>x/completions"; public void SendRequest() { StartCoroutine(GetResponse()); } private IEnumerator GetResponse() { var requestJson = "{"prompt": "" + prompt + "", "max_tokens": " + maxTokens + ", "temperature": " + temperature + "}"; var request = UnityWebRequest.Post(<em>API</em>_URL, requestJson); request.SetRequestHeader("Content-<em>Type</em>", "application/json"); request.SetRequestHeader("Authorization", "Bearer " + <em>api</em>Key); yield return request.SendWebRequest(); if (request.result == UnityWebRequest.Result.Connection<em>Error</em> || request.result == UnityWebRequest.Result.Protocol<em>Error</em>) { Debug.Log<em>Error</em>(request.<em>error</em>); yield break; } var responseJson = request.downloadHandler.text; var response = JsonUtility.FromJson<OpenAIResponse>(responseJson); if (response.choi<em>ce</em>s == null || response.choi<em>ce</em>s.Length == 0) { Debug.Log<em>Error</em>("Invalid response from OpenAI <em>API</em>"); yield break; } responseText.text = response.choi<em>ce</em>s[0].text; } [System.Serializable] public class OpenAIResponse { public Choi<em>ce</em>[] choi<em>ce</em>s; } [System.Serializable] public class Choi<em>ce</em> { public string text; public float logprobs; public float finishReason; } }
讯享网
要使用此代码,请将其添加到 Unity 游戏对象上,并在编辑器中设置 API 密钥、提示、最大标记和温度。然后,在您的 UI 上添加一个按钮或其他交互元素,以调用 SendRequest 方法并显示响应文本。
请注意,此示例使用 UnityWebRequest 类与 OpenAI API 进行通信。您还可以使用其他网络库,如 HttpClient 或 RestSharp。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/159766.html