Spring AI(绘图)
接上篇:Spring AI(聊天程序)
application.yml新增配置
image模型版本、数量、高度等相关参数配置,若当前代码中和application配置文件中同时声明,则代码中的配置会覆盖application配置文件中的
# ai绘图设置 image: options: # 模型版本 model: gpt-4-dalle # 图片质量 quality: hd # 数量 n: 2 # 高度 height: 1920 # 宽度 width: 1080
application.yml文件如下
spring: application: name: spring-ai ai: openai: # 访问open ai接口的api key api-key: sk-3sfER03LDLG3SDFsdlwe283JSdw023lkrmrHDND32fmREKFD # 访问open ai的接口地址 base-url: https://openai.com/ # ai聊天设置 chat: options: # chatGpt模型版本,32k是参数量,若当前代码中和application配置文件中同时声明,则代码中的配置会覆盖application配置文件中的 model: gpt-4-32k # 温度越高,回答的准确率会下降,温度越低,回答的准确率越好,若当前代码中和application配置文件中同时声明,则代码中的配置会覆盖application配置文件中的 temperature: 0.3F # ai绘图设置 image: options: # 模型版本 model: gpt-4-dalle # 图片质量 quality: hd # 数量 n: 2 # 高度 height: 1920 # 宽度 width: 1080
1、AI绘图(调用一次接口)
/** * ai绘图 * @author ithailin */ @RestController @RequestMapping("/ai") public class ImageController { private static final Logger logger = LoggerFactory.getLogger(ImageController.class); @Autowired private OpenAiImageModel openAiImageModel; /** * 调用openai的接口 * public ImageResponse call(ImagePrompt imagePrompt){} * @param msg:我们提问的消息 * @return */ @RequestMapping("/image") public Object image(String msg){ logger.info("msg:{}",msg ); ImagePrompt imagePrompt = new ImagePrompt(msg); ImageResponse imageResponse = openAiImageModel.call(imagePrompt); String imageUrl = imageResponse.getResult().getOutput().getUrl(); logger.info("imageUrl:{}",imageUrl); return imageResponse.getResult().getOutput().getUrl(); } /** * 调用openai的接口 * public ImageResponse call(ImagePrompt imagePrompt){} * @param msg:我们提问的消息 * @return */ @RequestMapping("/image2") public Object image2(String msg){ logger.info("msg:{}",msg ); OpenAiImageOptions imageOptions = OpenAiImageOptions.builder() //高清图像 .withQuality("hd") //生成四张 .withN(4) //高度 .withHeight(1024) //宽度 .withWidth(1024).build(); ImagePrompt imagePrompt = new ImagePrompt(msg,imageOptions); ImageResponse imageResponse = openAiImageModel.call(imagePrompt); String imageUrl = imageResponse.getResult().getOutput().getUrl(); logger.info("imageUrl:{}",imageUrl); return imageResponse.getResult().getOutput().getUrl(); } }
接下篇:Spring AI(音频转文本)