首页 > 图书中心 >图书详情
LangChain大模型应用开发
作者:[英] 本·奥法斯(Ben Auffarth) 著 郭涛 译
定价:79.80元
印次:1-1
ISBN:9787302677291
出版日期:2025.01.01
印刷日期:2024.12.03
"《LangChain大模型应用开发》帮助读者在项目中探索微调、提示工程以及部署和监控的**实践时,解锁LLM的全部潜力。无论你是构建创意写作工具、开发复杂的聊天机器人,还是制作尖端的软件开发辅助工具,《LangChain大模型应用开发》都将是你的路线图,帮助你自信且创造性地掌握生成式人工智能的变革力量。 主要内容 ●使用LangChain创建LLM应用,如问答系统和聊天机器人 ●理解变换模型和注意力机制 ●使用pandas和Python自动进行数据分析和可视化 ●掌握提示工程以提高LLM性能 ●微调LLM并了解释放其力量的工具 ●将LLM作为服务部署,并应用评估策略 ●使用开源LLM与文档本地互动,以防止数据泄露 "
more >前 言 在充满活力、飞速发展的人工智能领域,生成式人工智能作为一股颠覆性力量脱颖而出,它将改变我们与技术的交互方式。《LangChain大模型应用开发》是对大规模语言模型(Large Language Model,LLM)(推动这一变革的强大引擎)这一错综复杂的世界的一次探险,旨在让开发人员、研究人员和人工智能爱好者掌握利用这些工具所需要的知识。 探究深度学习的奥秘,让非结构化数据焕发生机,了解GPT-4等大规模语言模型如何为人工智能影响企业、社会和个人开辟道路。随着科技行业和媒体对这些模型的能力和潜力的热切关注,现在正是探索它们如何发挥作用、蓬勃发展并推动我们迈向未来的大好时机。 这本书就像你的指南针,指引你理解支撑大规模语言模型的技术框架。本书提供了一个引子,让你了解它们的广泛应用、基础架构的精巧以及其存在的强大意义。《LangChain大模型应用开发》面向不同的读者,从初涉人工智能领域的人到经验丰富的开发人员。我们将理论概念与实用的、代码丰富的示例融为一体,让你不仅从知识上掌握大规模语言模型,还能创造性地、负责任地应用大规模语言模型。 当我们一起踏上这段旅程时,让我们做好准备,塑造此时此刻正在展开的人工智能生成叙事,同时也被它所塑造——在这一叙事中,你将用知识和远见武装自己,站在这一令人振奋的技术演进的最前沿。 读者对象 《LangChain大模型应用开发》面向开发人员、研究人员以及其他任何有兴趣进一步了解大规模语言模型的人。本书的编写简洁明了,包含大量代码示例,你可以边做边学。 无论是初学者还是经验丰富的开发人员,对于任何想要充分利用大规模语言模型并在大规模语言模型和LangChain方面保持领先的人来说,这本书都将是宝贵的资源。 主要内容 第1章介绍了以深度学习为核心的生成式人工智能如何彻底改变了文本、图像和视频的处理方式。该章介绍了大规模语言模型等生成式模型,详细介绍了它们的技术基础和在各个领域的变革潜力;涵盖了这些模型背后的理论,重点介绍了神经网络和训练方法,以及类人内容的创建。该章概述了人工智能的演变、Transformer架构、文本到图像模型(如Stable Diffusion),并涉及声音和视频应用。 第2章揭示了超越大规模语言模型随机鹦鹉(模仿语言但无法真正理解语言的模型)的必要性。针对过时的知识、行动限制和幻觉风险等局限性,该章重点介绍了LangChain如何集成外部数据和干预措施,以实现更连贯的人工智能应用。该章批判性地探讨了随机鹦鹉的概念,揭示了产生流畅但无意义语言的模型缺陷,并阐述了提示、思维链推理和检索增强生成是如何改善大规模语言模型以解决语境、偏差和不透明等问题。 第3章介绍了基础知识,帮助设置运行书中所有示例的环境。该章首先介绍了Docker、Conda、Pip和Poetry的安装指南,然后详细介绍了如何集成OpenAI的ChatGPT和Hugging Face等不同提供商的模型,包括获取必要的API密钥。该章还讨论了在本地运行开源模型的问题。最后,该章将构建一个大规模语言模型应用程序来协助客户服务智能体,以实例说明LangChain如何简化操作并提高响应的准确性。 第4章通过加入事实核查来减少虚假信息,采用复杂的提示策略进行总结,整合外部工具来增强知识,从而将大规模语言模型转变为可靠的助手。该章探讨了用于信息提取的密度链(Chain of Density),以及用于自定义行为的LangChain装饰器和表达语言。该章还介绍了LangChain中处理长文档的map-reduce,并讨论了管理API使用成本的词元数监控。 该章着眼于实现一个Streamlit应用程序来创建交互式大规模语言模型应用程序,并利用函数调用和工具的使用来超越基本的文本生成。该章介绍了两种不同的智能体范式——规划-求解(plan-and-solve)和零样本(zero-shot)——以演示决策策略。 第5章深入探讨了利用检索增强生成(Retrieval-Augmented Generation,RAG)来增强聊天机器人的能力,这种方法可让大规模语言模型获取外部知识,提高其准确性和特定领域的熟练程度。该章讨论了文档向量化、高效索引以及使用Milvus和Pinecone等向量数据库进行语义搜索。我们实现了一个聊天机器人,结合调节链来确保负责任的沟通。这个聊天机器人可以在GitHub上找到,它是探索对话记忆和上下文管理等高级主题的基础。 第6章探讨了大规模语言模型在软件开发中的新兴作用,强调了人工智能在自动编码任务和充当动态编码助手方面的潜力。该章探讨了人工智能驱动的软件开发现状,用模型进行实验以生成代码片段,并介绍了使用LangChain智能体来自动化软件设计开发。对智能体性能的批判性反思强调了人类监督对减少错误和复杂设计的重要性,为人工智能和人类开发人员共生合作的未来奠定了基础。 第7章探讨了生成式人工智能与数据科学的交集,强调了大规模语言模型在提高生产力和推动科学发现方面的潜力。该章概述了当前通过AutoML实现数据科学自动化的范围,并将大规模语言模型与增强数据集和生成可执行代码等高级任务相结合,扩展了AutoML数据学科自动化概念。该章还介绍了使用大规模语言模型进行探索性数据分析、运行SQL查询和可视化统计数据的实用方法。最后,智能体和工具的使用展示了大规模语言模型如何解决以数据为中心的复杂问题。 第8章深入探讨了微调和提示工程等调节技术,这些技术对于定制大规模语言模型性能以适应复杂的推理和专业任务至关重要。该章对微调(fine-tuning)和提示工程(prompting)进行了解读。微调是指根据特定任务的数据对大规模语言模型进行进一步训练,而提示工程则是指战略性地引导大规模语言模型生成所需要的输出。该章还实施了高级提示策略,如少样本学习(few-shot learning)和思维链(chain-of-thought),以增强大规模语言模型的推理能力。该章不仅提供了微调和提示工程的具体实例,还讨论了大规模语言模型的未来发展及领域应用。 第9章探讨了在实际应用中部署大规模语言模型的复杂性,涵盖了确保性能、满足监管要求、规模稳健性和有效监控的最佳实践。该章强调了评估、可观察性和系统化操作的重要性,以使生成式人工智能在客户参与和具有财务后果的决策中受益。该章还概述了利用Fast API、Ray等工具以及LangServe和 LangSmith等新工具部署和持续监控大规模语言模型应用程序的实用策略。这些工具可以提供自动评估和衡量标准,支持各部门负责任地采用生成式人工智能。 第10章探讨了生成式人工智能的潜在进步和社会技术挑战,探讨了这些技术对经济和社会的影响,讨论了工作取代、虚假信息及人类价值一致性等伦理问题。在各行各业为人工智能引发的颠覆性变革做好准备之际,本章反思了企业、立法者和技术专家建立有效治理框架的责任。该章还强调了引导人工智能发展以增强人类潜能的重要性,同时解决了深度伪造、偏见和人工智能武器化等风险;还强调了透明度、道德部署和公平使用的紧迫性,以积极引导生成式人工智能革命。 充分利用本书 要充分受益于本书所提供的价值,至少需要对Python的基本知识有一个了解。此外,掌握一些机器学习或神经网络的基础知识也会有所帮助,但这并不是必需的。请务必遵守第3章3.1节中设置的Python环境说明,并获取OpenAI和其他提供商的访问密钥。 notebook和项目使用方式 《LangChain大模型应用开发》的代码托管在GitHub上,网址是https://github.com/benman1/generative_ai_ with_langchain。在该仓库中,你可以找到每一章目录,其中包含了本书中需要的notebook和项目。也可扫描封底二维码下载本书源代码。如前所述,在使用代码之前,请确保按照第3章所述的说明安装必要的依赖项。如果你有任何问题或疑虑,请在Discord上提问或在GitHub上提交问题。 下载彩色图片 我们还提供了一个PDF文件,其中包含本书所用截图/图表的彩色图片。可扫描封底的二维码下载。 文本约定 本书中使用了一些文本约定。 CodeInText(文本代码):表示文本、数据库表名、文件夹名、文件名、文件扩展名、路径名、虚拟URL、用户输入和Twitter句柄中的代码词。例如“将下载的WebStorm-10*.dmg磁盘镜像文件挂载到系统中的另一个磁盘”。 代码块设置如下: from langchain.chains import LLMCheckerChain from langchain.llms import OpenAI llm = OpenAI(temperature=0.7) text = "What type of mammal lays the biggest eggs?" 当我们希望你注意代码块中的特定部分时,相关的行或项会以粗体显示: from pandasai.llm.openai import OpenAI llm = OpenAI(api_token="YOUR_API_TOKEN") pandas_ai = PandasAI(llm) 任何命令行输入或输出的写法如下: pip install -r requirements.txt
more >