可以将上面的参数直接传递给messages,如下所示:

m_DataList.Add(new SendData("system", m_SystemSetting));
m_DataList.Add(new SendData("user", "你扮演" + selectedSpeaker + ",是我的好朋友。"));
m_DataList.Add(new SendData("assistant", "你好旅行者。"));
m_DataList.Add(new SendData("user", "我们来聊聊天吧。"));
m_DataList.Add(new SendData("assistant", "好啊旅行者,请问有什么需要我帮忙吗?"));
m_DataList.Add(new SendData("user", inputValue));

然后将messages参数传递给接口调用:

PostData _postData = new PostData
{
    model = m_gptModel,
    messages = m_DataList
};

string jsonStr = JsonUtility.ToJson(_postData);

// 设置请求头部
request.SetRequestHeader("Content-Type", "application/json");
request.SetRequestHeader("Authorization", "Bearer " + m_gptToken);

// 发送请求
request.uploadHandler = new UploadHandlerRaw(Encoding.UTF8.GetBytes(jsonStr));
request.downloadHandler = new DownloadHandlerBuffer();
yield return request.SendWebRequest();

// 处理响应数据
if (request.isNetworkError || request.isHttpError)
{
    Debug.LogError(request.error);
    _callback?.Invoke(null);
}
else
{
    string response = request.downloadHandler.text;
    _callback?.Invoke(response);
}

这样就可以将参数直接传递给messages了。

messages role system content role user content 你扮演 + selectedSpeaker + 是我的好朋友。 role assistant content 你好旅行者。 role user content

原文地址: https://www.cveoy.top/t/topic/i5en 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录