如何在 Unity C# 中使用 Dall-E 文本到影像 APIimage和引數?mask
對于背景,以下內容適用于其他引數,例如( GitHub 上prompt的完整代碼):
string apiMode = "generations";
string apiUrl = "https://api.openai.com/v1/images/" apiMode;
UnityWebRequest www = UnityWebRequest.Post(apiUrl, "");
www.SetRequestHeader("Content-Type", "application/json");
www.SetRequestHeader("Authorization", "Bearer " key);
string jsonString = JsonConvert.SerializeObject(aiParams, Formatting.None, serializerSettings);
www.uploadHandler = new UploadHandlerRaw(System.Text.Encoding.UTF8.GetBytes(jsonString));
www.downloadHandler = new DownloadHandlerBuffer();
yield return www.SendWebRequest();
但是,當使用apiMode“編輯”或“變體”時,根據Dall-E 的檔案,它會回傳一個 API 錯誤,建議切換到內容型別“multipart/form-data”。給定一些png的二進制資料,如何使用它并為imageor添加二進制資料?謝謝!maskbyte[]
uj5u.com熱心網友回復:
UnityWebRequest.Post-> 需要的多載List<IMultipartFormSection>將自動使用此內容型別標題,您可以在那里提供MultipartFormFileSection和MultipartFormDataSection部分。
不幸的是,這個例子沒有用,但它可能看起來有點像例如
var jsonString = JsonConvert.SerializeObject(aiParams, Formatting.None, serializerSettings);
var jsonBytes = Encoding.UTF8.GetBytes(jsonString);
var formParts = new List<IMultipartFormSection>();
formParts.Add(new MultipartFormDataSection("data", jsonBytes, "application/json"));
formParts.Add(new MultipartFormFileSection("image", yourFileContentBytes, "YourFileName.png", "image/png"));
using (UnityWebRequest www = UnityWebRequest.Post("https://www.my-server.com/myform", formParts))
{
www.SetRequestHeader("Authorization", "Bearer " key);
yield return www.SendWebRequest();
if (www.result != UnityWebRequest.Result.Success)
{
Debug.Log(www.error);
}
else
{
Debug.Log("Form upload complete!");
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/528940.html
下一篇:如何統一更改文本動態
