前言 —— CHATGPT原理与应用开发

前言

写作背景

  从去年年底ChatGPT的发布以来,作为自然语言处理(natural language processing,NLP)一线从业人员,我本人已经感受到了巨大压力,甚至觉得NLP工程师这个职位以后一定会消亡。当时在见识了ChatGPT的各种强大能力后,不少NLP一线从业人员很自然地就会想到,以后开发人员只要借助ChatGPT,就可以做到现在大部分NLP工程师在做的事,比如文本分类、实体抽取、推理等。甚至随着大语言模型(large language model,LLM)能力的不断提升,可能做的比NLP工程是都要好。既然这是迟早会发生的事,干脆我们就再点把火,写一本书告诉开发人员或有一些编程能力的人去利用大语言模型做一些NLP任务或服务,让变革来的更猛烈些。

  于是,就有了现在这本关于大语言模型的开发指南,它主要面向非算法、有一定编程基础、对AI和ChatGPT(或类似大语言模型)感兴趣,并乐意使用大语言模型接口开发相关应用的读者。当然部分内容不需要任何编程经验也可以学习,算法工程师也可能从中受益。我们期望通过本书能进一步降低大模型的使用门槛,让更多对AI和大语言模型感兴趣的非自然语言处理或算法专业人士能够无障碍使用大语言模型创造价值。希望新的技术突破能够更多地改善我们所处的世界。

  NLP工程师未来会不会存在现在犹未可知(就像没有公司有office工程师一样),但如果每个企业,尤其是中小企业都能自由地使用大语言模型的能力创造AI服务或应用,这不正是自己这些年的理想吗?我曾在几家小公司呆过,深刻知晓和理解小企业对AI的“情”,那种想用但又无力的矛盾。他们大多非常珍惜AI人才,但又不能大量投入。类似ChatGPT这样的大语言模型让他们异常兴奋。我们就是想要架起这么一座桥梁,让没有任何算法背景的开发人员能够尽量无缝、顺滑地对接起算法工作。我们期望授人以渔,把方法传播给更多人,也算是对这个行业的一点贡献吧。

内容设计

  本书内容聚焦于如何使用大语言模型开发新的功能和应用,一共有七章内容,分别如下:

  • 第1章 基础知识——大语言模型背后。本章主要介绍了和ChatGPT相关的一些NLP领域的基础知识和原理,具体包括:历史沿革、Token和Embedding、LM(language model)、Transformer、GPT(generative pre-trained transformer)和RLHF(reinforcement learning from human feedback)等。掌握了这部分知识就能大概知道ChatGPT或其他大语言模型是怎么回事。
  • 第2章 相似匹配——万物皆可Embedding。本章主要介绍了文本表示,以及和文本匹配相关的任务和应用。这是NLP领域(还有其他一些算法领域)最常用的技术。具体内容包括:相似匹配基础、接口使用,以及QA任务、聚类任务和推荐应用。
  • 第3章 句词分类——句子Token都是类别。本章主要介绍了NLP领域最常见的任务——分类,这其实也是人类最基本的认知方式(比如用男女、老少、勤奋、乐于助人等简单的标签化方式具象化一个个体)。具体内容包括:句词分类基础、接口使用,以及文档问答任务、分类与实体识别微调任务和智能对话应用。
  • 第4章 文本生成——超越理解更智能。本章主要介绍了和文本生成技术相关的任务,具体内容包括文本摘要、文本纠错和机器翻译。生成技术在实际场景中使用会相对少一些,也相对独立一些。
  • 第5章 文本推理——让模型更加像人。本章主要介绍如何使用大语言模型做复杂的逻辑推理任务,这一块内容在实际中应用很少,但在新的产品形态上却有很多想象空间。
  • 第6章 工程实践——真实场景大不同。本章主要介绍如何在真实业务上使用大语言模型,这一章内容不再是要构建一个简单的Demo,而是要真正用在产品开发上,我们会给出一些需要特别注意的事项,以帮助读者更高效地构建应用。
  • 第7章 局限不足——工具不是万能的。本章主要介绍ChatGPT(或类LLM)的缺陷或不擅长的地方,包括:事实错误、实时更新、资源耗费等。我们在畅想和利用ChatGPT或大模型做各种AI应用时,也应该了解它不擅长的地方。一方面是对其有更加全面的认识;另一方面反向思维有时候也能想象出一些好的应用或服务。
  • 第8章 商业应用——LLM的星辰大海。本章可以当作一篇调研报告来阅读,主要针对工具应用和行业应用两个大的方面展开,期望能够给读者更多启迪,帮助大家构思更好的应用或服务。

  本书有两个基本的设计理念:

  • 各章节相对独立,彼此没有直接明显的前后依赖关系。这体现在内容上,也体现在设计上。读者可以灵活选取自己感兴趣的章节进行阅读。
  • 以“任务”为核心。我们始终强调“任务”多于“工具”,ChatGPT是目前AI大语言模型领域总体效果最好的,但未来一定会有其他大语言模型服务出现。不过只要我们理解了要做的事情,理解了系统设计,工具就能为我所用。

  此外,本书还有比较详细的示例代码,大部分的代码都可稍作修改后用于生产环境。我们也会着重强调构建实际应用需要注意的细节。写代码容易,写好代码很不容易;做Demo简单,提供一个稳定可靠的服务很不简单。读者在应用到实际产品时务必要仔细斟酌权衡。

阅读建议

  通过上面的介绍,相信读者应该对本书有了初步了解。我们这里主要从创作者的角度简单谈一下如何更好地使用本书。

  首先,我们期望读者能够亲自动手完成一个应用或服务的Demo。光看不做在编程领域是绝对不行的,实践出真知,脑子想、嘴说和亲自干完全不一样。而且,万事开头难,做了第一个,后面再做类似的会相对容易。

  其次,我们期望读者能在学习过程中多思考,可以和自己工作的实际业务相结合,也可以天马行空地构想。我们非常期待读者能分享自己的想法,众人拾柴火焰高,个体能想到的太少了,但这么多人一起想,也许能够改变一个行业。

  第三,我们期望读者能对NLP领域常见任务有个基本的认识,了解一些基本概念。我们不是要读者都成为NLP工程师,阅读本书也不会让你成为NLP算法工程师。但我们期望读者能够利用ChatGPT或其他大语言模型提供的接口来完成NLP的任务,提供相关服务,期望读者在阅读完本书后都具备这样的能力。

  第四,洛克菲勒说过:“真正重要的不在于有多少知识,而在于如何使用现有的知识。知识只是潜在的力量,只有将其付诸应用,而且是建设性的应用,才会显示出它的威力”。由于教程围绕着任务展开,很多设计思路和细节其实可以应用在多个领域。我们再次强调,期望读者能够多多实践,多多应用,尤其是和自己的工作多结合。

  最后,由于创作团队精力有限,本书难免有些疏漏甚至错误,我们期望读者在学习的同时,也能积极给我们建议,我们将不胜感激。

  ChatGPT火爆背后蕴含着一个基本事实:AI能力得到了极大突破——大模型,尤其是大语言模型的能力有目共睹,未来只会变得更强。这世界唯一不变的就是变。适应变化、拥抱变化、喜欢变化。天行健君子以自强不息。我们相信未来会有越来越多的大模型出现。AI正在逐渐平民化,将来每个人都可以利用大模型轻松地做出自己的AI产品。我们相信我们正在经历一个伟大的时代,我们相信这是一个值得每个人全身心拥抱的时代,我们更加相信这个世界必将会因此而变得更加美好。

posted @ 2024-04-14 23:01  3cH0_Nu1L  阅读(76)  评论(0编辑  收藏  举报