in vision/use-cases/hey_llm/src/main.ts [499:543]
function requestImagen_(
oauth: GoogleAppsScriptOAuth2.OAuth2Service,
prompt: string,
seed: number,
model: string,
aspectRatio: string,
) {
const url = `https://${LOCATION}-aiplatform.googleapis.com/v1/projects/${getProjectNumber_()}/locations/${LOCATION}/publishers/google/models/${model}:predict`;
const payload = JSON.stringify({
instances: [
{
prompt: prompt,
},
],
parameters: {
seed,
sampleCount: 1,
addWatermark: false,
safetySetting: 'block_few',
language: 'auto',
aspectRatio,
},
});
const res = UrlFetchApp.fetch(url, {
method: 'post',
headers: {
Authorization: 'Bearer ' + oauth.getAccessToken(),
},
contentType: 'application/json',
payload: payload,
muteHttpExceptions: true,
});
const result: {
predictions?: {
bytesBase64Encoded: string;
mimeType: string;
}[];
} = JSON.parse(res.getContentText());
if (!result.predictions) {
Logger.log(payload, result);
throw new Error('Request to Vertex AI failed. ' + res.getContentText());
}
return result.predictions[0];
}