写在前面

【AI绘画/AI图像生成】已成为现下炙手可热的话题,AI 大模型训练的成本高昂,算法研究时间周期较长,对于大多数人来说,自研一套算法模型还是非常困难的,因此 AI 绘画 API 就应运而生,直接调用 AI 绘画 API 就能轻松将先进的图文 AI 融入到我们的产品中,使用门槛是非常低的。


本文将AI 绘画技术原理、图生文以及文生图等多个案例展示、还有 AI 绘画 API 常见的使用场景为大家介绍 AI 绘画相关知识,最后再详细教大家如何使用 AI 绘画 API。

技术原理

AI 绘画 API 是基于 LDM(Latent Diffusion Model)潜在扩散模型,通过将用户输入的文字、图片等条件作用到图片生成过程中,实现图片内容创意生成。


应用场景

AI 绘画 API 在实际的应用中,我们可以参考以下场景:


AI 绘画 API 介绍

AI 绘画 API 包括多个 API 接口,感兴趣可以点击 AI 绘画使用文档先行体验一下:


1.AI绘画文生图

支持输入文本描述,生成符合文本描述的图像,可用于 AI 绘画等场景


2.AI绘画图生图

支持输入图片和文本描述,生成符合图片参考和文本描述的图像,可用于 AI 绘画等场景


3.人像照片转动漫

支持输入人像照片及风格选项,生成该风格的该人像艺术风格化图像


4.图像高清(超分辨率)

支持提升低分辨率图像的清晰度


AI 绘画 API 详细使用教程

1. 登录注册 APISpace,获取 API 使用密钥

访问地址:

https://www.apispace.com/23329/api/aigc/apiDocument?utm_source=tth&utm_content=high016&utm_term=aigc


2. 注册成功后,我们在页面导航菜单点击【我的 API】进入【访问控制】页面,即可看到平台提供的密钥。


3. 在线测试 AI 绘画 API

打开 AI 绘画 API 详情页 ,点击【免费试用】


试用成功后系统自动进入测试界面



AI绘画 API详细代码接入过程

写了一份微信小程序接入AI 绘画 API 的示例,大家可以参考下

var data = {"task":"txt2img.sd","params":{"model":"art","text":"玫瑰花","w":512,"h":512,"guidance_scale":7.5,"negative_prompt":"cropped","sampler":"k_euler","seed":-1,"num_steps":20},"model":"art","text":"玫瑰花","w":512,"h":512,"guidance_scale":7.5,"negative_prompt":"cropped","sampler":"k_euler","seed":-1,"num_steps":20,"notify_url":""} 
wx.request({
    "url":"https://23329.o.apispace.com/aigc/txt2img",
    "method": "POST",
    "header": {
        "X-APISpace-Token":"使用平台提供的 API 密钥",
        "Authorization-Type":"apikey",
        "Content-Type":"application/json"
    },
    "data": data,
    "success": (response)=> {
        console.log(response.data)
    }
})


回调地址返回代码示例:

{
    “uid”: “b50fd9dc699b0f69e5dac9d150939c94”, //任务ID
    “success”: True, // 1、True成功 2、False失败
    “data”: {
        “uid”: “b50fd9dc699b0f69e5dac9d150939c94”, // 任务ID
        “cdn”: “https://ailab-huawei-cdn.nolibox.com/aigc/images/d6fa33b93ac84b8fbb233f4be03ba38f.png“, // 加速图片地址。safe为False时,该字段返回空字符串
        “cos”: “https://ailab-1d01.obs.cn-north-4.myhuaweicloud.com/aigc/images/d6fa33b93ac84b8fbb233f4be03ba38f.png“, // 图片地址。safe为False时,该字段返回空字符串
        “safe”: True, // 图片是否安全。success为True时也会返回False
        “reason”: “”, // 错误原因
        “createtime”: 1680079480.1837924, // 提交任务执行时间
        “starttime”: 1680079480.189582, // 任务执行开始时间
        “end_time”: 1680079483.7931507, // 任务执行结束时间
        “duration”: 3.609358310699463, // 执行任务持续时间
        “elapsed_times”: { // 此参数不需要关注,为任务执行耗时时间
            “pending”: 0.005789756774902344,
            “run_algorithm”: 3.001178503036499,
            “algorithm_latencies”: {
                “get_model”: 0.5092508792877197,
                “inference”: 2.4906301498413086,
                “cleanup”: 0.000007867813110351562,
                “__total“: 2.9998888969421387
            },
            “upload”: 0.3074338436126709,
            “audit”: 0.29493021965026855
        },
        “request”: { // 请求的入参
            “task”: “txt2img.sd”,
            “model”: {
                “callback_url”: “”,
                “use_circular”: “”,
                “seed”: -1,
                “variation_seed”: 0,
                “variation_strength”: 0,
                “variations”: [],
                “num_steps”: 20,
                “guidance_scale”: 7.5,
                “negative_prompt”: “”,
                “is_anime”: “”,
                “version”: “dreamlike_v1”,
                “sampler”: “k_euler”,
                “clip_skip”: -1,
                “custom_embeddings”: {},
                “max_wh”: 1024,
                “text”: “Roses”,
                “w”: 512,
                “h”: 512
            }
        }
    }
}


写在最后

值得注意的是,AI 图像生成的 API 调用时,需要符合国家相关法律法规的要求,尊重用户隐私和信息安全。