|
@@ -1,49 +1,42 @@
|
|
|
package cn.iocoder.yudao.framework.ai.image;
|
|
|
|
|
|
-import cn.iocoder.yudao.framework.common.util.json.JsonUtils;
|
|
|
+import org.junit.jupiter.api.Disabled;
|
|
|
import org.junit.jupiter.api.Test;
|
|
|
-import org.springframework.ai.image.ImageOptionsBuilder;
|
|
|
import org.springframework.ai.image.ImagePrompt;
|
|
|
import org.springframework.ai.image.ImageResponse;
|
|
|
import org.springframework.ai.qianfan.QianFanImageModel;
|
|
|
import org.springframework.ai.qianfan.QianFanImageOptions;
|
|
|
import org.springframework.ai.qianfan.api.QianFanImageApi;
|
|
|
|
|
|
+import static cn.iocoder.yudao.framework.ai.image.StabilityAiImageModelTests.viewImage;
|
|
|
+
|
|
|
/**
|
|
|
- * 百度千帆 image
|
|
|
+ * {@link QianFanImageModel} 集成测试类
|
|
|
*/
|
|
|
public class QianFanImageTests {
|
|
|
|
|
|
- @Test
|
|
|
- public void callTest() {
|
|
|
- // todo @芋艿 千帆sdk有个错误,暂时没找到问题
|
|
|
- QianFanImageApi qianFanImageApi = new QianFanImageApi(
|
|
|
- "qS8k8dYr2nXunagK4SSU8Xjj", "pHGbx51ql2f0hOyabQvSZezahVC3hh3e");
|
|
|
- QianFanImageModel qianFanImageModel = new QianFanImageModel(qianFanImageApi);
|
|
|
+ private final QianFanImageApi imageApi = new QianFanImageApi(
|
|
|
+ "qS8k8dYr2nXunagK4SSU8Xjj", "pHGbx51ql2f0hOyabQvSZezahVC3hh3e");
|
|
|
+ private final QianFanImageModel imageModel = new QianFanImageModel(imageApi);
|
|
|
|
|
|
+ @Test
|
|
|
+ @Disabled
|
|
|
+ public void testCall() {
|
|
|
+ // 准备参数
|
|
|
+ // 只支持 1024x1024、768x768、768x1024、1024x768、576x1024、1024x576
|
|
|
QianFanImageOptions imageOptions = QianFanImageOptions.builder()
|
|
|
- .withWidth(512)
|
|
|
- .withHeight(512)
|
|
|
+ .withModel(QianFanImageApi.ImageModel.Stable_Diffusion_XL.getValue())
|
|
|
+ .withWidth(1024).withHeight(1024)
|
|
|
+ .withN(1)
|
|
|
.build();
|
|
|
- ImagePrompt imagePrompt = new ImagePrompt("薄涂炫酷少女头像,田野花朵盛开", imageOptions);
|
|
|
- ImageResponse call = qianFanImageModel.call(imagePrompt);
|
|
|
- System.err.println(JsonUtils.toJsonString(call));
|
|
|
- }
|
|
|
-
|
|
|
- @Test
|
|
|
- public void call2Test() {
|
|
|
- // 官方测试 test https://github.com/spring-projects/spring-ai/blob/main/models/spring-ai-qianfan/src/test/java/org/springframework/ai/qianfan/image/QianFanImageModelIT.java
|
|
|
- var options = ImageOptionsBuilder.builder().withHeight(1024).withWidth(1024).build();
|
|
|
- var instructions = "薄涂炫酷少女头像,田野花朵盛开";
|
|
|
-
|
|
|
- ImagePrompt imagePrompt = new ImagePrompt(instructions, options);
|
|
|
-
|
|
|
- QianFanImageApi qianFanImageApi = new QianFanImageApi(
|
|
|
- "ghbbvbW2t7HK7WtYmEITAupm", "njJEr5AsQ5fkB3ucYYDjiQqsOZK20SGb");
|
|
|
- QianFanImageModel imageModel = new QianFanImageModel(qianFanImageApi);
|
|
|
- ImageResponse imageResponse = imageModel.call(imagePrompt);
|
|
|
+ ImagePrompt prompt = new ImagePrompt("good", imageOptions);
|
|
|
+
|
|
|
+ // 方法调用
|
|
|
+ ImageResponse response = imageModel.call(prompt);
|
|
|
+ // 打印结果
|
|
|
+ String b64Json = response.getResult().getOutput().getB64Json();
|
|
|
+ System.out.println(response);
|
|
|
+ viewImage(b64Json);
|
|
|
}
|
|
|
|
|
|
-
|
|
|
-
|
|
|
}
|