ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

Solon AI 开发学习17 - generate - 使用复杂提示语

Solon AI 开发学习17 - generate - 使用复杂提示语

有些生成模型(或服务平台)的提示语可能会是一个结构体,此时就需要使用 GeneratePrompt 接口。可以快速使用,或者定制强类型实体。

1、使用快速方法

使用阿里百炼调整一张图片,把它转成法国绘本风格

String apiUrl = "https://dashscope.aliyuncs.com/api/v1/services/aigc/image2image/image-synthesis";
GenerateModel generateModel = GenerateModel.of(apiUrl).apiKey(apiKey).model("wanx2.1-imageedit").headerSet("X-DashScope-Async", "enable").build();GenerateResponse resp = generateModel.prompt(GeneratePrompt.ofKeyValues("function", "stylization_all","prompt", "转换成法国绘本风格","base_image_url", "http://wanx.alicdn.com/material/20250318/stylization_all_1.jpeg")).options(o -> o.optionAdd("n", 1)).call();log.warn("{}", resp.getContent().getUrl());

2、定制提示语结构体

定义提示语结构体

@Builder
class ImageEditPrompt implements GeneratePrompt {private String function;private String prompt;private String base_image_url;@Overridepublic Map<String, Object> toMap() {return Utils.asMap("function", function, "prompt", prompt, "base_image_url", base_image_url);}
}

应用示例

String apiUrl = "https://dashscope.aliyuncs.com/api/v1/services/aigc/image2image/image-synthesis";
GenerateModel generateModel = GenerateModel.of(apiUrl).apiKey(apiKey).model("wanx2.1-imageedit").headerSet("X-DashScope-Async", "enable").build();GenerateResponse resp = generateModel.prompt(ImageEditPrompt.builder().function("stylization_all").prompt("转换成法国绘本风格").base_image_url("http://wanx.alicdn.com/material/20250318/stylization_all_1.jpeg").build()).options(o -> o.optionAdd("n", 1)).call();log.warn("{}", resp.getContent().getUrl());
返回列表