你们要的文生图测试也来啦|Macbook Pro M4 Max已快被玩坏

之前一直没玩过文生图,为了响应之前文章评论里小伙伴们的要求,试试在M4 Max上跑一跑简单的测试。

由于文生图的checkpoints都挺大的,下载很费时间,所以来不及尝试更多的模型,这里主要用的是近期最火的FLUX

FLUX的开源版又分为schnelldev两种。

我简单搜了一搜,前者主打一个速度优势,能在很少的steps(一般4就足够)下就得到不错的图片,很多网友也反应它的指令遵从能力似乎也更强。

后者在图的生成质量和细节上更加精益求精,但代价是更慢的生成速度,一般需要20 steps

原本打算用ComfyUI做测试,但是感觉对于我一个完全没接触过的新手而言,学习成本还是有点高。

因此为了更简洁快速地做一个测试,我选了两个更加傻瓜的方式来跑文生图。

mflux

首先,有了上一期MLX带来的性能提升的经验,我第一时间就是看看FLUX有没有MLX相关的优化。

果不其然让我找到了filipstrand/mflux: A MLX port of FLUX based on the Huggingface Diffusers implementation.[1]这个项目,甚至还得到了Karpathy大神的点赞👍。

这里同步一下,用和Karparth相同的参数跑图,在M4 Max上的速度是15s,相比M3 Max还是有可观的提升的。

Draw Things

这是我在调研的时候在网上各个论坛里被安利的一个Mac APP,主要提供了在本地进行AI作画的强大功能,基本可以支持主流的所有模型

APP的功能相当强大,界面大概长下面这样,这里我也还没有深入学习过,有需要的朋友可以参考下我找到的这个Draw Things入门教程[2]。

Draw Things

简单评测

测试用的是我在网上搜到的一个相对复杂的prompt

In a forest, the sun is shining brightly, and the air is filled with the fragrance of flowers and the chirping of birds. Two little girls are holding hands, smiling at the camera in a front-facing shot. A wise old grandpa Tree is smiling and looking at them. One of the girls is wearing a pale yellow dress with lace edges, glasses, and has a black ponytail, while the other is wearing blue jeans and a pink shirt with long golden hair. There is also a wooden sign stuck in the ground beside them, which reads 'Happy Childhood.' Contemporary fashion photo shoot, masterpiece, realism, 4k, high quality, high focus, superior quality, sharp and clear.

首先是用mflux命令行对FLUX schnell/dev分别做测试。

mflux

mflux用的是直接从huggingface下载的原始模型 ,也就是fp16的。

由于schnell模型比较高效,所以steps=4就能生成质量不错的图片:

mflux FLUX schnell run

mflux FLUX schnell image

各方面细节还是可以的,但不得不说背后的这个old grandpa Tree着实有点渗人😂。

不过也可以理解,个人感觉这个词组对于人来说都有些confused,更别提大模型了。

耗时是34.72 s,经过对比,生成时间主要和两个因素有关:

  • prompt的复杂程度

  • steps参数的设置(例如上图在steps=2的时候耗时是22 s

再看看看FLUX dev的表现:

mflux FLUX dev run

mflux FLUX dev image

整体耗时一下上来了:2min30s,毕竟steps=20

可以看到dev在细节上确实更精准一些,比如没有schnell那样多余且错别字的路牌,背后的old grandpa Tree也没那么惊悚。

不过意外的是,仔细观察可以发现dev的手部细节其实没有上面的schnell到位。

再来看看Draw Things APP的效果。

Draw Things

同样先看schnell版本的模型结果。

flux_schnell_steps4_seed4

依然有着惊悚的老爷爷树,甚至更吓人一点,速度上是30s,比mflux要稍快一点。

没有了mflux结果里多余的路牌,手部细节也很到位。

下面来看看FLUX dev

flux_dev_steps20_seed4

效果上个人感觉不如mflux命令行得到的结果,时间上是2min20s,要稍稍快一些。

关于mfluxDraw Things的在同样promp + seed + steps情况下的结果不一样的问题,我不负责任地猜测是APP这边下载使用的checkpoint不是原生,可能有些细微的差异。

单纯从生成图片的时延角度总结如下:

模型\运行方式mflux命令行Draw Things APP
FLUX schnell(steps=4)34.7 s30 s
FLUX dev(steps=20)150.0 s140 s

多提一句,Draw Things虽然没有用到Apple MLX支持的模型,但是它增添了对CoreML对支持。

这是苹果自己的一个机器学习框架,里面也有很多在苹果设备上的计算优化。

另外APP自身也做了很多其他的系统优化,所以可以看到速度提升比mflux还要明显。

时间仓促,还有很多其他模型例如SD都没有来得及尝试,但FLUX的结果应该足以给大家一个在M4 Max上跑文生图大体的性能感受了。

最后放一个FLUX devsteps=50的结果,耗时几分钟:

flux_dev_steps50_seed4

不知道大家怎么看,我感觉细腻程度确实有很大提高。

这棵树的呈现感觉也没那么违和了。

另外可以发现一个细节:黄衣服小朋友和树也是手牵手的,就还挺萌哒,哈哈。

好啦,关于Mac M4 Max上跑文生图的简单测试就到这里啦。

后面我再深入学习一下各种各样的玩法,等有了心得之后再来和大家分享呀!

写在最后

感兴趣的小伙伴,赠送全套AIGC学习资料,包含AI绘画、AI人工智能等前沿科技教程和软件工具,具体看这里。
在这里插入图片描述

AIGC技术的未来发展前景广阔,随着人工智能技术的不断发展,AIGC技术也将不断提高。未来,AIGC技术将在游戏和计算领域得到更广泛的应用,使游戏和计算系统具有更高效、更智能、更灵活的特性。同时,AIGC技术也将与人工智能技术紧密结合,在更多的领域得到广泛应用,对程序员来说影响至关重要。未来,AIGC技术将继续得到提高,同时也将与人工智能技术紧密结合,在更多的领域得到广泛应用。

在这里插入图片描述

一、AIGC所有方向的学习路线

AIGC所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。

在这里插入图片描述

在这里插入图片描述

二、AIGC必备工具

工具都帮大家整理好了,安装就可直接上手!
在这里插入图片描述

三、最新AIGC学习笔记

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
在这里插入图片描述
在这里插入图片描述

四、AIGC视频教程合集

观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

在这里插入图片描述

五、实战案例

纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
在这里插入图片描述
在这里插入图片描述

### hunyuan 文生功能介绍 hunyuan文生作为一款先进的像生成工具,其核心在于通过自然语言处理技术将用户的文字描述转换成高质量的片。这一过程依赖于深度学习算法的支持,在训练过程中积累了大量的文数据对,从而使得模型可以理解并解析复杂的语义信息[^1]。 对于想要体验或深入了解该功能的操作流程而言: #### 准备工作 确保已经成功部署了支持hunyuan文生的相关环境和服务接口。这通常涉及到下载预训练好的权重文件以及配置必要的运行参数等前置条件[^2]。 #### 输入文本提示词 用户需提供一段详细的场景描绘或者对象特征说明作为输入给到API端口。比如:“一只可爱的小猫坐在窗边晒太阳”,这样的表述有助于提高最终产出作品的艺术性和准确性。 #### 调整设置选项 部分平台允许自定义一些高级设定来优化输出效果,例如分辨率大小、风格偏好(写实/卡通)、色彩倾向等方面的选择都可以影响到最后呈现的画面质感。 #### 获取生成结果 提交请求之后等待片刻即可获得由AI绘制而成的作品链接或是直接展示在界面上供查看编辑保存分享等功能操作。 ```python import requests def generate_image(prompt, api_key): url = "https://api.example.com/v1/images/generations" headers = {"Authorization": f"Bearer {api_key}"} data = { "model": "hunyuan", "prompt": prompt, "num_inference_steps": 50, "guidance_scale": 7.5 } response = requests.post(url, json=data, headers=headers) image_url = response.json()["data"][0]["url"] return image_url ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值