本次《星河实战派》第三期我们会和大家聊一个最近很值得开发者上手试试的新东西。昨天百度ERNIE-Image模型与ERNIE-Image-Turbo模型正式开源发布ERNIE-Image的模型权重、推理代码已在Hugging Face全部开源遵循Apache2.0协议其中ERNIE-Image是满血版本通常使用约50步推理而 ERNIE-Image-Turbo则是它的蒸馏版本强调更快生成和更适合实际生产使用的效率表现只需要8步推理就能完成出图。随着ERNIE-Image和ERNIE-Image-Turbo开源星河社区也上线了体验网站和API免费使用。也就是说你不只是能先去网页上直接玩一玩、看看效果也可以很快把它接进自己的脚本、工作流或者业务里。这篇文章将结合星河社区的实际体验和调用方式让大家了解ERNIE-Image和ERNIE-Image-Turbo如何在海报制作、文字生成、结构化画面这些更接近真实交付的场景里发挥作用。ERNIE-Image亮点介绍ERNIE-Image是由百度文心大模型团队开发的一款开源文生图模型。它基于单流 Diffusion TransformerDiT架构并配有一个轻量级Prompt Enhancer用于将简短输入扩展为更丰富、更结构化的描述。在仅有8B DiT参数规模的前提下达到了开源文生图模型中的领先水平。此外文心大模型团队推出了ERNIE-Image Turbo仅需8步推理即可生成高保真图像在保持图像质量的同时大幅提升生成速度详情可见4月15日内容ERNIE-Image开源SOTA 消费级显卡搞定顶级渲染、高密度文本绘图在星河社区创作体验如果你想快速体验模型效果来星河社区体验页是最好的选择ERNIE-Image-Turbo已支持Day0上线不仅响应迅速而且完全免费。大家可以直接输入提示词进行免费的文生图体验同时还可以进行模型、比例、随机种子、出图张数的选择为了帮助大家做参考星河社区也筛选出了不同类别的优秀案例展示包括角色IP与梗图、品牌电商、人像社媒、海报信息图、创意特效等不同类别。ERNIE Image想解决的不只是“画一张图”而是那些真正会被拿去发、拿去用、拿去交付的内容任务。点击右下角“我的创作”即可查看以往生成的内容进行重新生成、编辑、下载等操作。体验链接免费https://aistudio.baidu.com/ernieimage调用ERNIE-Image API非常easyERNIE-Image-Turbo已经能在星河社区AI Studio直接调用而且调用方式对很多开发者来说都很熟悉。下面所有代码示例都沿用星河社区官方API写法免费无限量调用API文档https://ai.baidu.com/ai-doc/AISTUDIO/rm344erns#25-%E6%96%87%E7%94%9F%E5%9B%BE%E6%A8%A1%E5%9E%8B第一步拿到 Access Token先去星河社区控制台拿到你的 Access Tokenhttps://aistudio.baidu.com/account/accessToken。环境变量可以先这样写export AISTUDIO_API_KEYyour_api_key_here第二步安装依赖pip install openai第三步直接生成import base64from openai import OpenAIclient OpenAI( api_keyyour_api_key_here, base_urlhttps://aistudio.baidu.com/llm/lmapi/v3,)img client.images.generate( modelERNIE-Image-Turbo, prompt一只可爱的猫咪坐在窗台上,)image_bytes base64.b64decode(img.data[0].b64_json)with open(output.png, wb) as f: f.write(image_bytes)如果你之前已经在用openai这个Python包你会发现这件事真的很轻。你不需要重新学一套完全陌生的调用方式核心就是两件事把api_ke换成自己的 Access Token把base_url指向星河社区接口地址。如果只想临时预览可以把返回改成url默认返回的是b64_json拿到之后解码落盘就行。如果你只是想快速看一下效果可以改成urlimg client.images.generate( modelERNIE-Image-Turbo, prompt一只可爱的猫咪坐在窗台上, response_formaturl,)print(img.data[0].url)这个用法很适合调prompt的早期阶段先看、先改、先确认方向。等你要长期留档或者入库时再切回b64_json更稳。真正好用的地方不是参数多而是参数很“顺手”很多文生图文章一写到参数就会突然变硬核。但ERNIE-Image-Turbo这组参数其实完全可以用一种更直观的方式理解。我更推荐的上手顺序只有三步。第一步先把尺寸选对。因为你要的不是“一张好图”而是一张能直接拿去用的图。要做公众号封面优先试横版要做人像、壁纸或短视频封面优先试竖版如果你现在还不确定用途1:1永远是最稳的起点。第二步再决定要不要开提示词增强以及要不要固定随机种子。当你的描述还比较短、比较口语化时use_pe往往会更省心当你在做版本对比、团队复现或批量出图时seed会特别有用。第三步最后再去碰质量和速度的平衡。num_inference_steps决定它愿意花多少步去把图“磨细”guidance_scale决定它会不会更严格地贴着prompt走。很多时候默认值已经足够好没必要一开始就拧满。如果你确实想精细控制可以直接用官方示例里的extra_bodyimg cliodelERNIE-Image-Turbo, prompt一只可爱的猫咪坐在窗台上, n1, response_formatb64_json, size1024x1024, extra_body{ seed: 42, use_pe: True, num_inference_steps: 8, guidance_scale: 1.0 })这里我特别想强调一句别一上来就把所有参数都调一遍。先跑通默认参数再调size最后再碰extra_body效率通常会高很多。想多看几个版本把n开起来做内容的人都知道很多时候我们并不是在找“唯一正确答案”而是在找“更适合这一期内容的一版”。这时候一次生成多张图会非常舒服img client.images.generate( modelERNIE-Image-Turbo, prompt一只可爱的猫咪坐在窗台上, n4, response_formatb64_json, size1024x1024,)for i, item in enumerate(img.data): image_bytes base64.b64decode(item.b64_json) with open(foutput_{i}.png, wb) as f: f.write(image_bytes)n 最大支持4。对于封面图、宣传图、海报图这类任务它特别像在帮你把“赌单张”变成“做选择题”。如果今天就要做一张公众号封面我会怎么写 prompt很多人一上来就疯狂堆形容词。其实更稳的写法是按这个顺序来场景→构图→主体→留白→文字→气质比如你可以先写成这样未来感城市夜景蓝紫色主色横版16:9左侧留出标题区域画面右下角有一个可爱的机器人IP整体干净、有科技感、适合作为AI技术专栏封面图画面中带简短中文海报字 “ERNIE Image Turbo”不要拥挤构图平衡。你会发现这种prompt没有特别花哨但它很像真实工作里的需求描述。而 ERNIE-Image-Turbo这次真正让我觉得有价值的地方恰恰就在这里它更值得拿来接这种真实任务而不是只拿来刷“某张单图是不是更惊艳”。评判一个生图模型标准其实很简单不是它的演示页有多热闹也不是它的海报做得多酷而是你今天看完之后今晚能不能把它真正接进去。ERNIE-Image不是只会画图。它更像是开始理解我们要的图往往不是一张“最好看”的图而是一张能直接拿去发、拿去改、拿去做下一步工作的图。最后欢迎大家在星河社区免费体验ERNIE-Image模型体验链接https://aistudio.baidu.com/ernieimage关注【飞桨PaddlePaddle】公众号获取更多技术内容~