资讯专栏INFORMATION COLUMN

“价值2个亿”的AI代码

Genng / 3246人阅读

摘要:前两天朋友圈里看到一段号称价值一亿的代码可以智能应答,很厉害是不是源码极简版吗其实就是几个字符替换抖了个机灵,也顺便黑了把当下某些言必称的风气。方法一模块是一个生成自动应答的第三方库。那我这两段代码怎么也得值个亿吧,可以直接轮了。

前两天朋友圈里看到一段号称“价值一亿”的代码:

可以智能应答,很厉害是不是?

源码:

Python 极简版:


while True:
    print(input("").replace("吗","").replace("?","!"))

其实就是几个字符替换!抖了个机灵,也顺便黑了把当下某些言必称 AI 的风气。你别说,当年区块链概念火爆的时候,还真有人代码里放了个“Hello World”就出来诓钱了。风口之下,什么样的妖魔鬼怪都有。

不过真要自己做一个自动应答的机器人,其实也很简单,而且功能还比上面这位更强大。

方法一:ChatterBot 模块

ChatterBot 是一个生成自动应答的第三方库。一个简单的例子:


from chatterbot import ChatBot
# 生成机器人,指定输入输出和训练器
chatbot = ChatBot(
    "CrossinBot",
    input_adapter="chatterbot.input.TerminalAdapter",
    output_adapter="chatterbot.output.TerminalAdapter",
    trainer="chatterbot.trainers.ChatterBotCorpusTrainer"
)
# 以中文语料进行训练
chatbot.train("chatterbot.corpus.chinese")
print("你好,请问需要什么帮助?")
# 循环问答
while True:
    try:
        bot_input = chatbot.get_response(None)
    except (KeyboardInterrupt, EOFError, SystemExit):
        # CTRL-C/CTRL-D 中断退出
        break

效果:

使用 ChatterBot 的好处是问答数据保存在本地,无需联网。缺点则是你需要自己去训练你的机器人,默认语料的效果其实挺差的,一开始聊天差不多就是人工智障……而且通过聊天的过程学习,也存在被用户“教坏”的问题。
官方文档地址:
chatterbot.readthedocs.io

方法二:开放 AI 接口

鉴于方法一的问题,有很多平台提供了智能应答的 API 接口服务。以腾讯 AI 开放平台的“智能闲聊”接口为例:


import requests as rq
import time
import random
import string
import urllib
import hashlib

APPKEY = "ABDEFGH"  # 换成你的APPKEY

def get_sign(data):
    lst = [i[0]+"="+urllib.parse.quote_plus(str(i[1])) for i in data.items()]
    params = "&".join(sorted(lst))
    s = params + "&app_key=" + APPKEY
    h = hashlib.md5(s.encode("utf8"))
    return h.hexdigest().upper()

def chat(question):    
    url_chat = "https://api.ai.qq.com/fcgi-bin/nlp/nlp_textchat"
    nonce_str = "".join(random.sample(string.ascii_letters + string.digits, 16))
    data = {
        "app_id": 1234567890,  # 换成你的app_id
        "time_stamp": int(time.time()),
        "nonce_str": nonce_str,
        "session": "10000",
        "question": question,
    }
    data["sign"] = get_sign(data)
    r = rq.post(url_chat, data=data)
    answer = r.json()["data"]["answer"]
    return answer

print("你好,请问需要什么帮助?")
while True:
    try:
        print(chat(input()))
    except (KeyboardInterrupt, EOFError, SystemExit):
        # CTRL-C/CTRL-D 中断退出
        break

效果:

这个效果显而易见。但接口的前提是要联网,另外平台通常会有请求频率或功能的限制。现在很多平台还都可免费申请使用,部分特性可能需要付费。开放平台的好处是开发者可以不用费事就能得到很好的结果,不过要深度定制就不太方便,另外核心技术和数据也都是平台方的。

如果说前面那段代码可以估值一亿,拿个天使轮投资。那我这两段代码怎么也得值2个亿吧,可以直接A轮了。记得到时把咨询费打赏给我

玩笑归玩笑,但以上三段代码,也的确代表了三种开发方式:

自己实现

用第三方框架/库/代码

用 API 接口服务

在实际开发中,尤其是非核心功能,通常不建议自己从头实现,即“ 不重复造轮子 ”。因为很可能已经有成熟的开源项目做得比你好,站在前人的肩膀上可以事半功倍。这也是软件/互联网行业得以蓬勃发展的基石。但在使用开源项目和代码时也要尊重知识产权,注意人家的协议,是否可以商用,很多接口和数据也是有限制的。并不是你能拿到代码、能扒出接口、爬到数据,就可以放到自己的产品中。这方面有不少规矩,不按规矩来,即侵犯了别人的利益,也可能让自己掉坑里。下次可以来细说一下。

════

其他文章及回答:

编程实训 | 如何自学Python | 新手引导 | 精选Python问答 | Python单词表 | 人工智能 | 爬虫 | 我用Python | requests | 计算机视觉

欢迎搜索及关注公众号: Crossin的编程教室

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/42841.html

相关文章

  • 华为云EI ModelArts,从0到1开发训练AI模型,通过“极快”和“极简”实现普惠AI

    摘要:华为云,从到开发训练模型,通过极快和极简实现普惠现如今技术概念火爆落地应用更是繁多,但开发呢是否困难到底有多痛据了解,大部分开发者的工作时间并不长,并且十有八九可能不是科班出身。 华为云EI ModelArts,从0到1开发训练AI模型,通过极快和极简实现普惠AI现如今 AI 技术、概念火爆、落地应用更是繁多,但开发呢?是否困难?到底有多痛?据了解,大部分 AI 开发者的工作时间并不长...

    Alex 评论0 收藏0
  • 朋友融资了,给我看了一眼他们价值1个亿Go AI 代码

    摘要:最近真是火,随便一段代码都可以融资上亿,俨然是未来的趋势。同时,人类的无数职业也逐渐被其取代。人工智能目前仍然是该领域的长远目标。好了,不多说了,直接上朋友公司价值个亿的语言源代码。 最近AI真是火,随便一段代码都可以融资上亿,AI俨然是未来的趋势。AI什么?你不知道,那么我们先来普及下什么是AI! 人工智能(英语:Artificial Intelligence,缩写为AI)亦称机器智...

    ghnor 评论0 收藏0
  • Python学习之路12-外星人

    摘要:现在开始创建多行外星人。小结本篇讲述了如何在游戏中添加大量相同的元素如何用嵌套循环来创建元素网格如何控制对象在屏幕上移动的方向以及响应事件如何检测和响应元素碰撞如何在游戏中跟踪统计信息如何使用标志来判断游戏是否结束。 《Python编程:从入门到实践》笔记。本章主要是对上一篇的继续,添加外星人,外星人与飞船的交互。 1. 回顾项目 开发较大的项目时,进入每个开发阶段前回顾一下开发计划,...

    chemzqm 评论0 收藏0
  • 解锁普惠AI开发,华为云ModelArts一站式AI开发平台

    摘要:解锁普惠开发,华为云一站式开发平台一服务简介是面向开发者的一站式开发平台,提供海量数据预处理及半自动化标注大规模分布式训练自动化模型生成及端边云模型按需部署能力,帮助用户快速创建和部署模型,管理全周期工作流。 解锁普惠AI开发,华为云ModelArts一站式AI开发平台 一、ModelArts服务简介:ModelArts是面向AI开发者的一站式开发平台,提供海量数据预处理及半自动化标注...

    wizChen 评论0 收藏0
  • 蚂蚁金服开源机器学习工具 SQLFlow,有何特别之处?

    摘要:阿里妹导读近日,蚂蚁金服副胡喜正式宣布开源机器学习工具,他在大会演讲中表示未来三年,能力会成为每一位技术人员的基本能力。支持机器学习服务,可以将或编写的机器学习程序作为外部脚本运行。 showImg(https://segmentfault.com/img/remote/1460000019127720); 阿里妹导读:近日,蚂蚁金服副 CTO 胡喜正式宣布开源机器学习工具 SQLF...

    springDevBird 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<