aardio 文档

aardio 范例: Gemini 图像接口

import console.int;
import process.imageView;
import web.rest.jsonClient;
import inet.urlData;
import crypt;

// 创建 HTTP 客户端,可用参数 2 指定代理服务器,例如 "socks=127.0.0.1:1081"
var http = web.rest.jsonClient();

//设置您的 您的 API 密钥
http.setHeaders({"x-goog-api-key":"GEMINI_API_KEY"}); 

// 创建 API 对象,这个接口需要走代理
var gemini = http.api("https://generativelanguage.googleapis.com/v1beta/{resource}/{model}:{method}");

// 准备请求数据
var requestData = {
    contents = {
        {
            parts = {
                {text = "这里写绘图或修改图像的提示词"},

                /*
                //如果要修改图像(图生图),可用下面的格式指定本地图像数据
                {
                    inline_data = {
                        mime_type = "image/jpeg",
                        data = inet.urlData.fromImage("/example.jpg")
                    }
                }
                */
            }
        }
    },
    generationConfig = {
        responseModalities = {"Text", "Image"}
    }
};

console.showLoading("正在生成图像");

// 发送请求
var resp,err = gemini.models["gemini-2.0-flash-preview-image-generation"].generateContent(
    requestData
);

//获取响应数据
var respContentParts = resp[["candidates"]][[1]][["content"]][["parts"]];

if(respContentParts){

    for(i,part in respContentParts){
        if(part.text){
            console.log(part.text)
        }
        if(part.inlineData){
            imageBytes = crypt.decodeBin(part.inlineData.data); 
            string.save("/gemini.jpg", imageBytes) 
            process.imageView("/gemini.jpg")    
            break;
        }
    } 
}
else {
    console.error("API请求失败或返回数据格式不正确");
    console.log(err);
    console.pause(true);
}
Markdown 格式