内容简介
CONTENTS
目 录
前言
第一篇 基础知识
第1章 大语言模型2
1.1 大语言模型概述2
1.1.1 大语言模型的定义2
1.1.2 大语言模型的分类3
1.1.3 大语言模型的应用场景3
1.2 大语言模型的演变与发展4
1.2.1 大语言模型的网络架构演变4
1.2.2 大语言模型发展的关键事件6
1.3 大语言模型的基础知识7
1.3.1 什么是算力7
1.3.2 显卡的基础知识7
1.3.3 大语言模型的参数数量与精度9
1.3.4 大语言模型的基本单位10
1.3.5 通用人工智能11
1.4 小结12
第2章 Python大语言模型应用开发13
2.1 Python大语言模型应用开发的基础知识13
2.1.1 Python编程的基础知识13
2.1.2 接口的设计与优化21
2.1.3 大语言模型接口开发实战24
2.2 Docker容器的基础知识30
2.2.1 Docker基础命令30
2.2.2 Docker构建镜像32
2.2.3 Docker容器编排33
2.3 大语言模型与NLP34
2.3.1 NLP的研究任务34
2.3.2 传统NLP的技术实现路径35
2.3.3 大语言模型对传统NLP的影响36
2.4 小结36
第二篇 开发技术
第3章 分词技术38
3.1 分词38
3.1.1 什么是分词38
3.1.2 英文分词39
3.1.3 中文分词41
3.1.4 制作词云图44
3.2 常见的分词算法45
3.2.1 基于规则的分词算法46
3.2.2 基于统计的分词算法48
3.2.3 基于深度学习的分词算法50
3.2.4 基于预训练语言模型的分词算法51
3.3 使用大语言模型进行分词51
3.3.1 基于ChatGPT服务的分词51
3.3.2 基于本地大语言模型的分词52
3.4 小结53
第4章 词嵌入技术54
4.1 词袋模型54
4.1.1 词袋模型的基本概念和原理54
4.1.2 词袋模型的构建55
4.2 词向量模型57
4.2.1 One-Hot编码58
4.2.2 Word2Vec模型59
4.3 大语言模型生成Embedding61
4.3.1 使用ChatGPT生成Embedding61
4.3.2 使用Text2Vec生成Embedding63
4.3.3 使用sentence-transformers生成Embedding64
4.3.4 使用Transformers库生成Embedding64
4.3.5 统计输入文本的Token数65
4.4 大语言模型的Embedding应用66
4.4.1 Embedding数据集准备67
4.4.2 Embedding数据2D可视化68
4.4.3 Embedding中文相似度计算68
4.5 小结70
第5章 向量数据库71
5.1 向量数据库简介71
5.1.1 向量数据库的缘起71
5.1.2 向量数据库的特点72
5.1.3 与传统数据库的比较72
5.1.4 向量数据库的应用场景73
5.2 向量数据库的原理73
5.2.1 向量距离的度量74
5.2.2 相似度搜索算法75
5.3 向量数据库的应用76
5.3.1 FAISS向量数据库入门76
5.3.2 FAISS的相似度度量78
5.3.3 FAISS的索引分类78
5.3.4 FAISS的索引创建与操作79
5.3.5 FAISS的优化80
5.4 小结80
第6章 提示词工程与优化81
6.1 认识提示词工程81
6.1.1 人机交互的演进81
6.1.2 什么是提示词82
6.1.3 提示词工程82
6.2 提示词工程的使用技巧83
6.2.1 使用文本分隔符83
6.2.2 赋予模型角色84
6.2.3 将过程分步拆解85
6.2.4 尽可能量化需求85
6.2.5 提供正反示例85
6.2.6 要求结构化输出86
6.2.7 合理进行限制86
6.2.8 使用链式思维87
6.3 使用提示词完成NLP任务88
6.3.1 使用提示词进行分词89
6.3.2 使用提示词提取关键词90
6.3.3 使用提示词进行文本分类90
6.3.4 使用提示词进行情感分析91
6.3.5 使用提示词进行文本摘要92
6.3.6 使用提示词进行中英文翻译93
6.4 小结93
第7章 Hugging Face入门与开发95
7.1 Hugging Face简介95
7.1.1 什么是Hugging Face95
7.1.2 Hugging Face Hub客户端库96
7.2 Hugging Face数据集工具99
7.2.1 数据集工具简介99
7.2.2 数据集工具的基本操作100
7.3 Hugging Face模型工具106
7.3.1 Transformers简介106
7.3.2 数据预处理112
7.3.3 模型微调114
7.3.4 模型评价指标118
7.4 小结120
第8章 LangChain入门与开发121
8.1 初识LangChain121
8.1.1 LangChain简介121
8.1.2 LangChain的开发生态122
8.2 模型I/O124
8.2.1 模型I/O简介124
8.2.2
精彩书评
Preface
前 言
大语言模型的崛起是人工智能发展史上的一个重要里程碑。早期的自然语言处理(NLP)依赖经验规则和简单的统计方法,随后逐步发展为基于机器学习的模型。然而,这些模型在应对复杂的语言理解和生成任务时表现平平。随着深度学习和大规模数据的结合,特别是Transformer架构的引入,诞生了像GPT系列这样的大语言模型。大语言模型的进步不仅反映了人工智能技术的历史演变,也预示着未来人工智能在更复杂任务中发挥更大作用的可能性。
近年来,随着模型的规模不断扩大,参数量从百万级跃升到千亿级,模型在复杂语言任务中的表现有了显著提升。在企业中,大语言模型已被广泛应用于提升生产力,如自动生成文案、编写代码、处理客户服务请求和进行复杂的数据分析等。除此之外,大语言模型在跨领域学习、增强推理能力和理解多模态数据等方面也展现出巨大潜力,它在金融、医疗、法律、科学研究等领域的应用,加快了这些领域的创新进程,进而推动了社会的整体进步。
总结来说,大语言模型不仅是人工智能技术发展的重要里程碑,还通过提升工作效率、推动技术创新以及促进人类进步,展现了其广阔的发展前景。随着技术的进一步发展,大语言模型将继续在各个领域产生深远的影响。
在我的实践中,大语言模型作为一项突破性的技术,展现出了诸多不可否认的优势。然而,在实际的开发和使用过程中,仍然需要对许多地方进行微调和优化,以确保大语言模型在各种应用场景中的有效性和可靠性。
例如:提示词的编写质量直接影响到最终生成结果的准确性和相关性;大语言模型的解释性较差,并且可能出现“幻觉”现象,生成虚假或不准确的信息;在资源有限的情况
下,量化技术的应用显得尤为重要,它能够有效降低计算资源的消耗。此外,在特定领域的应用中,大语言模型往往需要进行微调,以适应具体需求;在检索增强生成(RAG)应用中,多个环节需要不断优化,以提升系统的准确度和召回率。
本书将重点总结和探讨这些问题,旨在帮助读者充分利用大语言模型,最大限度地发挥其价值。
本书特色
本书尽量避免纯理论知识的讲述,重点突出实战入门,内容通俗易懂,案例丰富且实用性强。
本书具有以下特色:
由浅入深:本书各章节环环相扣,由浅入深,形成完整的知识体系。
注重实践:本书注重动手实践,引导读者在解决实际项目问题的过程中掌握知识。
内容新颖:本书涉及的技术和工具大多处于前沿领域,具有较强的新颖性。
经验总结:本书内容是对作者近10年工作经验的总结,对初学者具有极高的参考价值。
如何阅读本书
本书从大语言模型开发的基础知识入手,逐步深入探讨大语言模型的常用开发工具,并在最后介绍当前备受关注的数字人电商直播项目中的大语言模型AI实战案例。通过阅读本书,读者不仅可以系统地学习大语言模型开发的相关知识,还能对数字人直播应用的开发有更为深入的理解。
全书分为三篇,共15章,具体内容如下:
第一篇:基础知识(第1章和第2章)。本篇介绍大语言模型及其应用开发的基础知识,为后续章节的学习奠定坚实的基础。
第二篇:开发技术(第3~10章)。本篇涵盖分词技术、词嵌入技术、向量数据库、提示词工程与优化、Hugging Face入门与开发、LangChain入门与开发、大语言模型微调,以及大语言模型的部署等内容。这些主题构成了大语言模型应用开发的核心技术体系,掌握这些技术对于深入开发大语言模型至关重要。
第三篇:项目实战(第11~15章)。本篇聚焦数字人电商直播应用,包括数字人口播台词生成、直播间问答分类、直播间互动问答,以及直播间数据分析Text2SQL等实战项目。这些内容基于当前热门的数字人应用开发,具有很高的实践价值和参考意义。
读者如果在阅读本书的过程中遇到问题,可以通过邮件与我联系。
读者对象
本书适合以下读者阅读:
对大语言模型开发感兴趣的人。
对电商数字人项目感兴趣的人。
大语言模型应用初、中级开发工程师。
想系统学习大语言模型开发的工程师。
致谢
首先,我要特别感谢我的家人,感谢他们在我写书期间给予的悉心照顾,让我能够全身心地专注于本书的撰写。
其次,我要感谢我曾经任职的公司为我提供宝贵的工作机会,同时也感谢领导、同事们在工作中提供的学习和交流机会,让我得以在职业生涯中不断成长和进步。
最后,我要衷心感谢罗雨露老师。她不仅是我写作道路上的伯乐,还在我撰写本书的过程中给予了大量指导。本书的顺利出版,离不开她的专业能力和对工作的严谨态度。
精彩书摘
宿永杰
拥有近10年的技术研发经验,专注于人工智能(AI)技术架构与研发,研究方向涵盖大数据处理、AI应用架构及智能系统开发。目前从事智能座舱语音对话系统的架构设计与研发工作。
热衷于技术分享,长期活跃于技术社区,是CSDN博客专家,全网粉丝量超15万。
试读
宿永杰
拥有近10年的技术研发经验,专注于人工智能(AI)技术架构与研发,研究方向涵盖大数据处理、AI应用架构及智能系统开发。目前从事智能座舱语音对话系统的架构设计与研发工作。
热衷于技术分享,长期活跃于技术社区,是CSDN博客专家,全网粉丝量超15万。
前言/序言
Python开发者