1、引言
小屌丝:鱼哥,最近在忙啥?
小鱼:咱俩陌生了?
小屌丝:何出此言?
小鱼:你说的话又嘛意思呢?
小屌丝:我的意思, 最近看你这整理各种资料,貌似很忙的样子?
小鱼:我平时不也这么忙嘛
小屌丝:鱼哥, 还能正常唠嗑嘛?
小鱼:我又没说不能唠嗑。
小屌丝:鱼哥,行… 非常行…
小鱼:男人,怎么能不行!
小屌丝:…
小鱼:~ ~
小屌丝:discoart模块知道吗?
小鱼:貌似, 大概,可能,或许,知道。
小屌丝:太好了, 那能不能给我讲一讲呢?
小鱼:然后呢?
小屌丝:老地方~
小鱼:又是老地方,整的我都不好意思了。
小屌丝:这都是小事,我主要就想让你多放松放松…
小鱼:停,停, 打住~ 别说多了, 我们来聊discoart。
小屌丝:别着急啊,
小鱼:能不着急吗,你看,这都几点了, 再晚一会,就… 小屌丝:昂…
2、 代码实战
2.1 模块介绍
说起 discoart 可能大部分都不太了解。 但是,说到艺术库,可能你就有些印象了。 这里,我也引用官网对discoart的解析,让你对它有个初步的了解,如下:
>>DiscoArt is an elegant way of creating compelling Disco Diffusion[*] artworks for generative artists, AI enthusiasts and hard-core developers. DiscoArt has a modern & professional API with a beautiful codebase, ensuring high usability and maintainability. It introduces handy features such as result recovery and persistence, gRPC/HTTP serving w/o TLS, post-analysis, easing the integration to larger cross-modal or multi-modal applications.
这里,我也简答的用汉语描述一下,即:
>>DiscoArt是一种优雅的方式,可以为生成艺术家,AI爱好者和铁杆开发人员创建引人注目的Disco Diffusion艺术品。 DiscoArt拥有现代和专业的API,具有漂亮的代码库,确保了高可用性和可维护性。它引入了方便的功能,例如结果恢复和持久性,没有TLS的gRPC / HTTP服务,后期分析,简化与更大的跨模态或多模态应用程序的集成。
简答一句话概括:DiscoArt就是为了艺术而生的。
2.2 模块安装
涉及到第三方库,肯定就需要安装 老规矩,pip 安装
然后就是等待着安装。
其它安装方式,直接看这两篇:
《Python3,选择Python自动安装第三方库,从此跟pip说拜拜!!》
《Python3:我低调的只用一行代码,就导入Python所有库!》
安装的样子,如下:
这里提示一下:
- 按照官网的要求, discoart的使用,必须依托于:Python 3.7+ 和 CUDA 的 PyTorch 。
2.3 代码示例
2.3.1 创建默认图片
这里直接使用discoart的 create方法即可
代码示例
效果展示
2.3.2 设置参数创建图片
效果展示
2.3.3 查看设置参数
如果你忘记参数,也没关系,直接用cheatsheet 查询即可
代码展示
2.3.4 查看配置
如果要查看文档配置, 可以使用show_config:
代码展示
2.3.5 保存配置
如果要保存文档配置, 可以使用save_config:
代码展示
2.3.6 加载配置
有了查看和保存,当然也可以直接加载配置文件了, 这里,使用load_config即可
代码示例
2.3.7 导出配置文件
为了便于后期的管理使用,同样可以直接导出配置文件为SVG映像,使用 save_config_svg方法:
代码示例
这里也展示一下, 保存的svg映像
2.3.7 生成Python代码
更神奇的功能,就是可以直接从配置中生成可运行的Python代码,使用export_python方法:
代码示例
2.3.8 调用文档
- 如果你觉得自己配置太繁琐, 那可以直接使用DocumentArray作为初始状态运行。
代码示例
- 当然, 如果你只想从已有的 DocArray ID 初始化, 那也不是不可能,
3、总结
看到这里, Doscart库的介绍就完成了。
按照流程, 我们来回顾一下今天都分享了啥内容:
- 创建默认图片;
- 设置参数创建图片;
- 查看设置参数;
- 查看文档配置;
- 报错文档配置;
- 加载文档配置;
- 导出配置文件
- 生成Python代码;
- 调用文档;
你看, Doscoart也没有想想的那么难嘛, 常用的功能,也就差不多这么多。 所以, 只要我们把一个库从头到尾的捋一遍, 其实是很容易掌握的。
最后,唠叨一句:
我是奕然:
- CSDN 博客专家;
- 阿里云 专家博主;
- 51CTO 博客专家;
- 51认证讲师;
- 金牌面试官&面试培训师;
关注我,带你学习更多更有趣的Python知识。