本书是使用 Python 动手搭建聊天机器人的入门书籍。全书共 5 章,包含聊天机器人的发展历史、自然语言处理的相关知识,以及多种搭建、部署聊天机器人的基本方法。此外,作者还提供了丰富的源码和细致的教程,极具实操性。无论你是具有一定 Python 编程基础的技术人员,还是想更多了解聊天机器人相关知识的产品经理、项目管理人员,都能从本书学习到搭建聊天机器人的相关内容,并能在本书的指导下实际完成聊天机器人的搭建和对外发布。
使用python和开源工具构建自己的聊天机器人。这本书首先介绍聊天机器人,在那里你将获得关于他们架构的重要信息。然后,您将直接进入自然语言处理与自然语言工具包(NLTK),为您的聊天机器人建立一个自定义语言处理平台。在此基础上,您将查看不同的自然语言处理技术,以便您可以为您选择合适的自然语言处理技术。
译者黄光远:阿里巴巴高级算法工程师,现于阿里达摩院人工智能实验室,从事天猫精灵人工智能语音交互领域,专攻语音系统算法架构与NLP算法应用;曾在阿里数据技术部负责电商场景的数据化运营、圈人投放、差异化选品、场景挖掘与用户画像,以及在淘宝技术部负责复杂网络、Spark图算法并行化研发等工作。
前言
本书介绍
这本书写得非常仔细,旨在保证里面的教学贴合实际,并以结果为导向。搭建聊天机器人不仅仅是完成教程或者实现几个步骤——这本身就是一项技能。这本书不会是枯燥无味的大量文字堆积,而是采用从实践中学习的方式进行讲解。现在你肯定至少使用过一个聊天机器人来完成生活中的事情了。不管你是不是一名程序员,一旦读完了这本书,都将会找到搭建聊天机器人的基石;所有的神秘面纱都将被揭开。搭建聊天机器人,可能外行人看起来很困难,但这本书让这件事变得简单。我们的大脑不擅长直接处理复杂的概念;相反,我们善于循序渐进地进行学习。在阅读这本书的时候,从第 1 章到最后一章,你会逐步找到事情进展的清晰脉络。
虽然可以直接跳到任何章节开始阅读,但我强烈建议你从第 1 章开始学习,这样肯定能帮助你理清思路。
这本书就像是一个系列网站,当你看完一章之后,肯定迫不及待地想进入下一章。阅读完本书后,你对接触过的聊天机器人的设计方式及内部的具体实现方式,都会有一个大体的认知。
本书适合人群
这本书可以作为学习聊天机器人的相关概念和如何搭建它们的重要材料。本书会对以下人群起到帮助作用:
希望将知识面或职业拓展到聊天机器人开发中的 Python 网站开发人员。
希望通过实践经验获得新技能,创造出可展示的作品,并期望能从人群中脱颖而出的学生或者有抱负的程序员。
希望学习如何从头开始搭建聊天机器人的自然语言爱好者。
拥有很好的想法但缺乏足够的技术来搭建聊天机器人的初创企业家。
计划开始开发聊天机器人相关项目的产品/工程管理者。
如何阅读本书
请记住,本书的编写方式和其他书籍不太一样。这本书的编写主旨,是让你在读完本书后,能自己搭建一个聊天机器人或者教导别人怎么搭建一个聊天机器人。在读本书前请记住以下这几点:
本书几乎涵盖了搭建聊天机器人所需的所有内容,而不仅仅是通用的内容。
希望你能参考书中的内容并花更多的时间在系统上进行实践。确保你会执行每段代码并尝试编写代码;不要单纯地复制和粘贴。
确保按照书中的步骤进行学习;如果暂时有一些不明白的内容,也不要担心。你将在后续内容中学习到它们。
使用本书提供的源码和 Jupyter Notebook 作为参考。
本书内容
第 1 章:心爱的聊天机器人 在本章你将从商业和开发人员的视角了解与聊天机器人相关的内容。本章奠定了在本书中对聊天机器人相关知识点进行代码实现的基调。希望在本章结束之前,你能找到为自己或为公司搭建聊天机器人的充足理由。
第 2 章:聊天机器人中的自然语言处理 在本章你将了解搭建聊天机器人时要用到的自然语言处理工具和方法。本章不仅会介绍自然语言处理的相关方法,还会通过现实生活中的例子来展示代码实现示例。本章还会讨论为什么在聊天机器人中需要用到自然语言处理技术。请注意自然语言处理本身也是一项值得掌握的技能。
第 3 章:轻松搭建聊天机器人 在本章你将学习如何通过一些方便和好用的工具(比如Dialogflow)来搭建聊天机器人。如果你不是一名程序员,那你肯定会对这一章感兴趣,因为它仅需要一点或根本不需要编程技能。
第 4 章:从零开始搭建聊天机器人 在本章你将学习如何以人们想要的方式来搭建聊天机
器人。标题说明了这不会很简单,但只要你学习完上一章的知识,就会想要学习更多,本章会
介绍如何从零开始搭建聊天机器人,以及怎么使用机器学习算法来训练聊天机器人。
第 5 章:部署自己的聊天机器人 本章是推进聊天机器人程序的最后一个步骤。当借助有关工具或者从零开始搭建了一个聊天机器人时,你肯定不希望只有你自己能使用它。你将会学习如何借助 Facebook 或者 Slack 向全世界展示聊天机器人,并且最终将它们集成到你自己的网站上。