Skip to content

Image 图片生成

在 Agents-Flex 中,内置了通过 AI 生成图片的能力。

大模型支持

Agents-Flex 图片生成模型支持如下:

大语言模型名称支持情况描述
Openai✅ 已支持-
Stability✅ 已支持-
GiteeAI - stable-diffusion-3-medium✅ 已支持-
GiteeAI - FLUX.1-schnell✅ 已支持-
GiteeAI - stable-diffusion-xl-base-1.0✅ 已支持-
GiteeAI - Kolors✅ 已支持-
SiliconFlow - Flux.1-schnell✅ 已支持-
SiliconFlow - Stable Diffusion 3✅ 已支持-
SiliconFlow - Stable Diffusion XL✅ 已支持-
SiliconFlow - Stable Diffusion 2.1✅ 已支持-
SiliconFlow - Stable Diffusion Turbo✅ 已支持-
SiliconFlow - Stable Diffusion XL Turbo✅ 已支持-
SiliconFlow - Stable Diffusion XL Lighting✅ 已支持-
更多计划中...期待 PR

示例代码

java
 @Test
public void testGenImage(){
    GiteeImageModelConfig config = new GiteeImageModelConfig();
    config.setApiKey("****");

    //第一步:创建一个 ImageModel
    ImageModel imageModel = new GiteeImageModel(config);

    //第二步:创建图片生成提示词和参数
    GenerateImageRequest request = new GenerateImageRequest();
    request.setPrompt("A cute little tiger standing in the high-speed train");
    request.setSize(1024, 1024);

    //第三步:通过大模型生成图片
    ImageResponse generate = imageModel.generate(request);
    System.out.println(generate);

    int index = 0;
    for (Image image : generate.getImages()) {
        //第四步:将图片保存到本地
        image.writeToFile(new File("/image-path/"+(index++)+".jpg"));
    }
}

或者使用 OpenAI ImageModel

java
 @Test
public void testGenImage(){

    //或者使用 OpenAI ImageModel
    OpenAIImageModelConfig config = new OpenAIImageModelConfig();
    config.setApiKey("sk-5gqOclb****");
    ImageModel imageModel = new OpenAIImageModel(config);


    GenerateImageRequest request = new GenerateImageRequest();
    request.setPrompt("A cute little tiger standing in the high-speed train");
    request.setSize(1024, 1024);

    ImageResponse generate = imageModel.generate(request);
    System.out.println(generate);

    int index = 0;
    for (Image image : generate.getImages()) {
        image.writeToFile(new File("/image-path/"+(index++)+".jpg"));
    }
}

或者使用 SiliconFlowImageModel

java
 @Test
public void testGenImage(){

    //或者使用 SiliconFlowImageModel
    SiliconflowImageModelConfig config = new SiliconflowImageModelConfig();
    config.setModel(SiliconflowImageModels.Stable_Diffusion_XL);
    config.setApiKey("sk-****");
    ImageModel imageModel = new OpenAIImageModel(config);


    GenerateImageRequest request = new GenerateImageRequest();
    request.setPrompt("A cute little tiger standing in the high-speed train");
    request.setSize(1024, 1024);

    ImageResponse generate = imageModel.generate(request);
    System.out.println(generate);

    int index = 0;
    for (Image image : generate.getImages()) {
        image.writeToFile(new File("/image-path/"+(index++)+".jpg"));
    }
}