分享好友 最新动态首页 最新动态分类 切换频道
AI 太卷了吧!智能插画几秒出图,还又快又好?
2024-12-26 22:13

近来,我注意到一些公众号在发布一些插画为主的内容,这些作品配有精美的图片,加上一句有趣的话,多篇文章的阅读量都突破了10万+,这收入不用多说了吧。

AI 太卷了吧!智能插画几秒出图,还又快又好?

其实咱们普通人创作这样的账号,也真的不难,正巧我一直在用的智谱文生图模型又又迭代了,从cogview模型升级至cogview-3 Plus,这次绝对是一流水平。

先简单介绍下,CogView-3-Plus 是智谱新一代的图像生成模型,是 CogView 的升级版本,本次升级使用了 Transformer 架构训练扩散模型,化了效果并验证了参数量提升的效益。

升级后的CogView-3-Plus能够依据用户指令快速生成多种分辨率下的高质量图像,并以其接近行业顶尖模型如MJ-V6和FLUX的效果而闻名,具备将文本描述精准转换为图像的多模态能力,并提供API服务以便于集成使用,同时支持实时推理,确保了图像生成的高效率和快速响应。

所以,赶紧拿来试了一番, 今天就用 多线程 + Flask + 智谱CogView-3-Plus快速搭建一个插画生成器

前台展示:

后端运行图:

一、安装依赖

首先,你需要确保已经安装了运行此应用所需的所有依赖库。

安装Flask

Flask是Python的一个Web框架,我们首先需要安装它,你可以通过pip安装Flask:

pipinstall Flask

安装ZhipuAI SDK

这段代码调用了ZhipuAI的SDK,所以你需要安装相关的zhipuai库,可以通过以下命令来安装:

pipinstall zhipuai

安装图片库pillow

Pillow 库是 Python 中一个非常强大的图片处理库,它提供了丰富的功能,可以轻松地进行图片的读取、编辑、保存等操作。

pipinstall pillow

安装requests

Requests库提供了更简洁的API,使得开发者可以更容易地处理HTTP请求和响应。

pipinstall requests

二、设置 ZhipuAI API 密钥

在代码中有一个地方需要你提供 ZhipuAI 的 API 密钥:

api_key = ""# 替换为你的 ZhipuAI API 密钥

你需要提前从ZhipuAI获取一个有效的API密钥,并将它填入上述位置,获取地址:https://bigmodel.cn/usercenter/proj-mgmt/apikeys

三、设置IP白名单

别忘记设置IP白名单管理,出现下面的错误就是没设置IP白名单的原因。

设置地址:https://bigmodel.cn/usercenter/safety-mgmt/ip-whitelist

四、代码详细说明

1. 导入必要的库

Flask : 用于创建和运行 Web 应用的 Python 框架。

ZhipuAI : 用于与 ZhipuAI API 进行交互的客户端库。

threading : 用于异步处理图像生成任务,防止主线程被阻塞。

uuid : 用于生成唯一的任务 ID。

requests : 用于向 ZhipuAI API 发送 HTTP 请求,获取图像数据。

io : 用于在内存中处理图像数据。

PIL (Pillow) : 用于处理图像,如加载图像、绘制文字等。

base64 : 用于将图像数据转换为 Base64 编码字符串,方便在 Web 中传输。

2. 初始化 Flask 应用和 ZhipuAI 客户端

Flask(app) : 创建一个 Flask 应用实例,用于运行 Web 服务器。

ZhipuAI(api_key=api_key) : 初始化一个 ZhipuAI 客户端,使用提供的 API 密钥与 ZhipuAI 服务进行交互。

3. 创建共享数据结构

image_results : 用于存储每个任务的生成图像结果(以 Base64 编码的字符串形式)。

task_status : 用于存储每个任务的状态(例如 "processing"、"completed"、"failed")。

lock : 使用 threading.Lock 创建一个锁对象,用于在多线程环境下保护共享数据的访问,确保线程安全。

4. 生成图像的函数

第一个函数的作用是生成图像,它接收多个参数:

prompt : 用户输入的文本描述,用于生成图像。

model : 使用的 AI 模型(如果未提供则使用默认的 cogview-3-plus)。

size : 图像的尺寸(默认是 1024x1024)。

user_id : 可选的用户 ID,用于标识用户, imgtitle: 可选的文本,用户希望显示在生成图像上的文字。

通过 PIL.Image.open 将返回的图像数据加载为 PIL 图像对象,方便进一步操作。

如果用户提供了标题文字(imgtitle),则使用 ImageDraw.Draw(img) 在图像上绘制文字,如果有指定字体(arial.ttf),使用它;如果找不到该字体,则使用系统默认字体。

最后将处理后的图像保存到内存中的字节流(img_byte_array),然后将图像数据转换为 Base64 编码的字符串,便于通过 Web 返回。

5. Flask 路由

首页路由 (/)

路由渲染一个名为 index.html 的页面。该页面允许用户输入文本描述并提交请求生成图像。

生成图像的路由 (/generate-image)

使用 threading.Thread 创建一个新线程来处理图像生成,防止图像生成阻塞主线程,线程完成后会更新任务的状态为 "completed" 或 "failed",返回一个包含任务 ID 的响应,表示图像生成已经开始。

查询任务状态的路由 (/image-result/<task_id>)

该路由用于查询图像生成的状态,根据任务 ID 检查状态:

"processing" : 图像正在生成中,返回 202 状态码。

"completed" : 图像生成完成,返回 Base64 编码的图像。

"failed" : 如果图像生成失败,返回错误信息。

6. 启动 Flask 应用

通过 app.run 启动 Flask 应用,设置 threaded=True 表示应用支持多线程处理请求,可以并发处理多个用户请求。

五、运行Flask应用

确保所有代码文件都已经就绪后,可以运行Flask应用,导航到包含Flask应用的目录,然后执行以下命令:

pythonapp.py

这将启动Flask开发服务器,默认情况下它会监听:http://127.0.0.1:5000/。

六、访问应用及效果演示

在浏览器中访问应用:

http: //127.0.0.1:5000

你将看到一个简单的表单,用户可以输入嵌入文字以及文本描述(prompt),然后点击【发送】按钮。

效果如下:

当用户提交表单时,前端会通过AJAX发送一个POST请求到/generate-image,服务器接收到请求后,启动一个新的线程来生成图像,并返回一个task_id,用户可以通过task_id查询图像的生成状态,当图像生成完成后,前端会自动显示图像。

用户在表单中提交文本后,服务器开始生成图像,前端会定期请求/image-result/<task_id>来检查图像是否生成完毕,一旦图像生成完成,浏览器会展示生成的图像。

接下来,给大家分享几种这个赛道的变现方式:

  1. 公众号流量主变现:公众号达到 500 粉后开通流量主,一篇 10w+ 的爆文, 就能获得可观的收入

  2. 平台流量分成:你还可以制作图片视频,上传到自媒体平台如视频号,并参与分成计划,只要满足一定条件,就能根据视频的播放量获得相应的流量分成。

  3. 小红薯接商单变现:通过分享有趣的图文,吸引粉丝关注,小红薯粉丝数量的增加可以帮你提高接商业广告的价格。

  4. 定制红包封面、手机壁纸。。。

其实说了那么多,在惊叹AI作品的精美之余,更多人开始表达对AI绘画的恐惧和焦虑,担心未来是否会被取代而失业。

根据我的亲身体验,我认为AI绘画技术并不会取代个人创作者,而是成为了一个提升工作效率的有力工具,我想那些尝试过AI绘画的人应该都能体会到这一点。

AI绘画作品的质量实际上还是由人来决定的,尽管AI能够创造出各种作品,但最终让这些作品精准呈现的,还是你深思熟虑后提供的描述词,这一点尤为重要,因为工作需要精确和实用性,艺术可能没有固定的标准,但设计必须满足实际应用的需求。

因此,我鼓励大家去尝试AI绘画,而不是对它感到害怕,尽早的尝试可以让AI更好的帮助我们完成工作。

智谱 AI 开放平台:https://bigmodel.cn?utm_source=%E8%8F%9C%E9%B8%9F%E6%95%99%E7%A8%8B&utm_campaign=yrgzh&_channel_track_key=aZO594fk

最新文章
虚拟视界数字媒体社团举办AI 数字设计创意大赛
近日,信息工程学院虚拟视界数字媒体社团主办的纪念“12.9 运动” AI 数字设计创意大赛圆满结束。 初赛在各学院进行选拔,师范教育学院、食品药品学院、信息工程学院选手凭借专业知识与独特创意参与竞争并脱颖而出进入复赛。复赛于12月4日
百度大数据分析和挖掘平台演进历程
【编者按】作为国内搜索巨头,百度收录全世界超过一万亿的网页,每天响应中国网民大约几十亿次的请求。那么,在面对如此庞大的数据处理时,百度是如何构建并优化分布式计算平台,又如何完成一次次系统构架的演进呢?在“OneAPM 技术公开课
真能赢RTX4060! 英特尔锐炫B580显卡首发评测
·新一代锐炫显卡闪亮登场距离英特尔上一次发布游戏显卡产品已经过去一年多的时间了。在如今这个英特尔看似风雨飘摇的时刻,英特尔却如期带来了代号“Battlemage”战斗法师的第二代锐炫游戏显卡,而首发的型号正是英特尔上次发布的锐炫A580
淘宝商品曝光少怎么办?淘宝如何提高产品曝光?(淘宝商品曝光量)
淘宝商品曝光量的多少直接影响到店铺的流量和销量。如果发现商品曝光较少,可以从以下几个方面着手提高商品的曝光率。一、优化商品标题关键词选择:在设置商品标题时,选择具有一定搜索热度和相关性的关键词。这将有助于提高商品在搜索结果
SEO常见问题问答
本帖将集中点石会员的智慧,由版主负责整理,把SEO中常见的问题一一集中解决,内容不断更新中。欢迎大家写出值得放在该帖的问题和答案,当中的相关链接资源请尽量引用点石现有内容,并请被引用内容的因为权限问题,请不能编辑该帖的版主以
中国科技新篇章世界智囊团的脚步
一、引言:科技的新风尚中国科技的崛起,正如一颗璀璨的星辰,在全球科技的地图上绘制出新的轨迹。那么,中国科技排名第几?这个问题不仅关乎数字,更是对国家创新能力和国际影响力的深刻探讨。二、数据与洞察:技术进步之旅要了解中国在全
图片url地址的生成获取方法
大家好,又见面了,我是你们的朋友全栈君。 在写博客插入图片时,许多时候需要提供图片的url地址。作为菜鸡的我,自然是一脸懵逼。那么什么是所谓的url地址呢?又该如何获取图片的url地址呢?  首先来看一下度娘对url地址的解释:url是统
淘宝自然搜索排名受到哪些权重的影响
淘宝自然搜索排名主要受到以下权重的影响:1.标题权重标题的重要性是可想而知的,买家就是通过宝贝关键词找到你的宝贝,而关键词又是标题的重要组成部分。可是你知道你知道标题的关键词在不同类目是有优先级之分的吗?例如有两个标题一样的
这可能是安卓端最强的电子书阅读APP(“静读天下”使用技巧)
之前分享了一篇关于“免费电子书网站倒闭后如何找书”的经验帖,收获(骗)了很多赞,让我受宠若惊!这两天就有值友就私聊问我:“我没有kindle哎,针对 手机端电子书阅读 你有没有比较好的体验方案?”如果您也和我一样:相对网文,更喜欢
爱达杂货铺食用指南
      首先自己很自责,由于自己的惰性和工作繁忙,好久没更新公众号 了,之前发过一段时间的文章,期间也有很多小伙伴要一些软件的链接,但是好多百度云链接都失效了,当然过去这么长时间之前的文章好多内容都不能用了(很多资源的时
相关文章
推荐文章
发表评论
0评