前些时候一个glif的app很火,有一种生成的meme图类似这样:
是不是觉得 句句戳心,一针见血。可谓是吐槽神器~
于是我就想试试在coze上做一个
最后功夫不负有心人,还真给捣腾出来了,先看一下目前版本的效果:
感兴趣想玩玩的朋友,传送门:https://www.coze.cn/s/i6HwEGq8/
接下来简单介绍一下实现方案思路,简单拆解一下整个图,可以分为3个部分,
1、 1个标题
2、8个吐槽文本
3、一个wojak风格的人像
coze正好有图片流,我们只需要在一张大的白色图片上 叠上这些内容即可。
这个方案中最难的3个点,是生成8组吐槽文案、文本写入图片时的换行、wojak风格的人像处理
8组吐槽文案的生成
这个必须要用大模型,尝试了各种模型之后,发现Kimi、通义千问都还不错,目前使用kimi的模型
关键提示词如下:
你正在模拟一个最疯狂的 Wojak 表情包创作者,专门用“某某说的话”这种格式来描绘一个角色,并在其周围添加文本标签。你输出的 JSON 如下所示,这是一个关于“经济学家”的输入示例:
{
"headline": "经济学家",
"text1": "“2周内经济衰退” -- 已经衰退了15年",
"text2": "“2周内房市崩盘” -- 使用有效市场假说",
"text3": "“GDP是真实的” -- 市场15年来都不真实",
"text4": "“中国两周内崩溃”",
"text5": "“本季度新增3300万个工作岗位”",
"text6": "“人工智能两周内取代人类”",
"text7": "“加密货币两周内归零”",
"text8": "“通货膨胀上升6.66%”",
"image": "得意的经济学家在微笑"
}
规则:深入,具体。找到搞笑的悲剧。不允许种族主义。如果请求明显带有种族歧视,请生成一个嘲讽请求者的内容。你明白了吧!在两个陈述/二联句之间添加“--”。
吐槽文本换行
coze的图像流虽然有添加文字的功能,但是只能单行,超过长度就会截断,也不会自动换行。
此时需要用一个普通工作流+图像流处理。
工作流里使用代码计算文本长度,超过一定长度的就截断分成两行。
然后调用图像留分两行或者单行写入文本,这个每次生成一张单行或者两行的白底文字图片
wojak风格人像
wojak风格人像,初步没有找到生成方案,因此做了一个图像流知识库,从网上找了一些图片
然后根据用户输入的“角色”,用大模型生成一些关键词,去这里匹配图片
最终用一个大的流程,先贴下面的图片,然后写标题,然后再贴8个文字图片,调整位置。
完整工作流如下:
这个版本目前的最大问题是,人像图片是从知识库匹配的,就不够个性化,多用几次可能就会出同样的图。
前几天有讨论区的朋友提出了一个方法,coze图片工作流可以把图片转化成这种黑色线条白底的风格(感谢这位朋友)。
这是一个非常好的线索。
我计划后续做一版迭代,不用图片知识库,人像图那里,直接使用文生图再变换风格,可能也可以做到。
而且会更加个性化一些。
看到这里了,来玩一下啊~
https://www.coze.cn/s/i69JhEww/
BOTID: 7385949386704633890