50行代码,实现AI文章生成器,牛逼!

本文共1502字

预计阅读时间:3分钟

据说 AI 已经可以自动写文章

类似的报道屡见不鲜

但是 AI 写出来的文章到底是什么样的?

我想没几个人见识过

无意中看到了 Gayhub 上的这个项目

全称就是:狗屁不通文章生成器

英文名字是:BullshitGenerator

它可以做什么呢?

简单来说,就是输入标题

生成文章

▲ 生成器

效果怎么样?

我们简单试一下

▲ 如何避免被割韭菜

看上去果然狗屁不通

我们再去看看源码

#!/usr/bin/python
# -*- coding: UTF-8 -*-

import os, re
import random,readJSON

data = readJSON.读JSON文件("data.json")
名人名言 = data["famous"] # a 代表前面垫话,b代表后面垫话
前面垫话 = data["before"] # 在名人名言前面弄点废话
后面垫话 = data['after'] # 在名人名言后面弄点废话
废话 = data['bosh'] # 代表文章主要废话来源

xx = "学生会退会"

重复度 = 2

def 洗牌遍历(列表):
global 重复度
池 = list(列表) * 重复度
while True:
random.shuffle(池)
for 元素 in 池:
yield 元素

下一句废话 = 洗牌遍历(废话)
下一句名人名言 = 洗牌遍历(名人名言)

def 来点名人名言():
global 下一句名人名言
xx = next(下一句名人名言)
xx = xx.replace( "a",random.choice(前面垫话) )
xx = xx.replace( "b",random.choice(后面垫话) )
return xx

def 另起一段():
xx = ". "
xx += "\r\n"
xx += " "
return xx

if __name__ == "__main__":
xx = input("请输入文章主题:")
for x in xx:
tmp = str()
while ( len(tmp) < 6000 ) :
分支 = random.randint(0,100)
if 分支 < 5:
tmp += 另起一段()
elif 分支 < 20 :
tmp += 来点名人名言()
else:
tmp += next(下一句废话)
tmp = tmp.replace("x",xx)
print(tmp)

只有简简单单五十几行代码

其实主要就是从数据文件中取数据

进行一些简单拼接

我们再来看一下数据

{
"title":"学生会退会",
"famous":[
"爱迪生a,天才是百分之一的勤奋加百分之九十九的汗水。b",
"培根说过,深窥自己的心,而后发觉一切的奇迹在你自己。b",
"歌德曾经a,流水在碰到底处时才会释放活力。b",
"莎士比亚a,那脑袋里的智慧,就像打火石里的火花一样,不去打它是不肯出来的。b",
...(省略部分)
],
"bosh":[
"现在, 解决x的问题, 是非常非常重要的. 所以, ",
"我们不得不面对一个非常尴尬的事实, 那就是, ",
"x的发生, 到底需要如何做到, 不x的发生, 又会如何产生. ",
...(省略部分)
],
"after":[
"这不禁令我深思. ",
"带着这句话, 我们还要更加慎重的审视这个问题: ",
"这启发了我. ",
...(省略部分)
],
"before":[
"曾经说过",
"在不经意间这样说过",
"说过一句著名的话",
...(省略部分)
]
}

这离人工智能简直差了 10W 个不正经程序员!

不过项目主也很骄傲

没有引进高端算法的打算

▲ 关于生成算法
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值