我已经在 SAPUI5 应用程序中集成了 Gemini API,结果也出来了。插入 API 密钥后,我能够获取响应 JSON,并且可以查看可用的模型。但无法将提示发送给模型并获得响应。 我不知道如何在UI5中使用async和await,因为UI5默认调用async中的函数
这是代码,我正在尝试只是一个基本提示。 askGemini() 是我调用来获取结果的函数
checkGoogleConnection: function() {
const vBox = this.getView().byId("vb1")
const APIBtn = this.getView().byId("checkGoogleConn");
const APIField = this.getView().byId("checkGoogleKey");
vBox.removeItem(APIBtn);
vBox.removeItem(APIField);
const gemKey = this.getView().byId("checkGoogleKey").getValue();
console.log(gemKey);
this.GOOGLE_API_KEY = gemKey;
console.log(this.GOOGLE_API_KEY);
// call Gemini AI API to check models.
const gen_ai = new GenAI.GoogleGenerativeAI(gemKey);
console.log(gen_ai);
const models = gen_ai.getGenerativeModel({ model: "gemini-1.5-flash"});
console.log(models);
var labelText = "";
if (models){
console.log("pass");
labelText = "available models: " + models.model;
}else{
console.log("fail");
labelText = "no models available right now!!";
}
const geminiConnSuccessInfoLabel = new InfoLabel("gcsil1", {
text: labelText,
colorScheme: 5
})
vBox.addItem(geminiConnSuccessInfoLabel);
},
// call Gemini and get resolution.
askGemini: function() {
sap.m.MessageToast.show("Fetching from Gemini!!");
const gen_ai2 = new GenAI.GoogleGenerativeAI(this.GOOGLE_API_KEY);
console.log(gen_ai2);
const models2 = gen_ai2.getGenerativeModel({ model: "gemini-1.5-flash"});
console.log(models2);
const prompt = "Write a story about an AI and magic"
const result = models2.generateContent(prompt);
const response = result.response;
//const text = response.text();
console.log(response);
//console.log(text);
},
这里做错了什么?如果我使用异步和等待,错误会显示在控制台中。
这篇文章可能对你有帮助,它涵盖了 SAPUI5 中 async/await 的用法。