//非流式会话 / 文生图 //此示例演示非流式调用 web.rest.aiChat 生成图像。 import console; console.showLoading(" 正在转换提示词"); //调用 DeepSeek 3.1 import web.rest.aiChat; var aiClient = web.rest.aiChat( key = 'API_key'; url = "https://api-inference.modelscope.cn/v1"; model = "deepseek-ai/DeepSeek-V3.1"; temperature = 0.5 ) //创建消息队列 import web.rest.aiChat.message; var msg = web.rest.aiChat.message() msg.system(" 你的任务: 1. 分析处理用户发送的绘图需求。 2. 发挥想像丰富对图像的描述以达到更佳的效果。 3. 将描述翻译为英文。 4. 返回全英文的回复,不要包含任何中文。 ") //输入提示词 msg.prompt("画一只猫");//图生图:参数 @2 指定图像文件(内存数据或路径) //如果要修改图像(图生图),可用下面的格式指定原图 //msg.prompt("图生图的文本描述",imagePathOrBuffer/*图像路径或内存数据*/); //发送请求 var resp,err = aiClient.messages(msg);//不指定参数 2 就是非流式调用 console.assert(resp,err); //拿到英文的提示词 var promptEn = resp.choices[1].message.content; //调用免费模型 gemini-2.5-flash-image-preview 画图 var aiClient = web.rest.aiChat( key = "API_key"; url = "https://openrouter.ai/api/v1"; model ="google/gemini-2.5-flash-image-preview:free"; temperature = 0.5; extraParameters = { "modalities": ["image", "text"] //允许生成图像 } ) //构建消息队列 var msg = web.rest.aiChat.message() //发送提示词 msg.prompt(promptEn);//如果要修改图像,参数 2 指定图像数据或文件路径 //发送绘图请求 var resp,err = aiClient.messages(msg);//不指定参数 2 就是非流式调用 console.assert(resp,err); import console console.dumpJson(resp) //得到图像 URL var dataUrl = resp.choices[1].message.images[1].image_url.url; //解析 data url 格式 import inet.urlData; var data = inet.urlData.parse(dataUrl); //保存为本地图像文件 string.save("/test.png",data) //打开文件 import process.imageView; process.imageView("/test.png")