引言
本文件旨在作为学习现代人工智能系统关键概念的手册。鉴于最近AI发展的速度,目前还没有一本系统的教科书来快速掌握LLMs或其他生成模型的最新创新,但互联网上有大量优秀的解释资源(博客文章、视频等)。我的目标是将这些“最佳”资源组织成教科书式的呈现,作为实现个人AI学习目标的路线图。我希望这将成为一个“活文档”,随着新创新和范式的出现不断更新,并且理想情况下能从社区输入和贡献中受益。本指南面向那些具有一定技术背景、对AI感兴趣或有潜在职业需求的人。我假设你有一些编码和高中数学的经验,但我也会提供填补其他前提条件的指引。如有任何你认为应该添加的内容,请告知我! https://genai-handbook.github.io/#
截至2024年6月,自从OpenAI发布ChatGPT以来已经过去了约18个月,世界对人工智能的讨论显著增加。这期间发生了许多变化:Meta和Google等科技巨头发布了自己的大型语言模型,新兴组织如Mistral和Anthropic也被证明是强劲的竞争者,无数初创公司开始构建基于它们API的应用程序,大家都在争抢强大的Nvidia GPU,论文在ArXiv上以惊人的速度出现,展示了由LLMs驱动的物理机器人和人工程序员的演示,聊天机器人似乎在各种在线生活中找到了自己的位置(成功程度各异)。与LLM竞赛并行的是图像生成的快速发展,扩散模型如DALL-E和Midjourney展示了越来越令人印象深刻的结果,往往让社交媒体上的人们目瞪口呆,而随着Sora、Runway和Pika的进步,高质量的视频生成似乎也即将到来。
关于“AGI”何时到来、“AGI”到底是什么意思、开放与封闭模型的优缺点、价值对齐、超级智能、存在风险、假新闻和经济未来的辩论仍在继续。许多人担心工作岗位被自动化取代,也有许多人对自动化可能带来的进步感到兴奋。与此同时,世界继续前进:芯片变得更快,数据中心变得更大,模型变得更智能,背景变得更长,能力通过工具和视觉得到增强,尚不完全清楚这一切将走向何方。如果你在2024年关注“AI新闻”,常常会觉得几乎每天都有重大突破发生。要跟上这一切是很难的,特别是如果你刚刚开始关注。
随着进展如此迅速,想要“参与其中”的人自然倾向于选择最新最好的工具(截至本文撰写时,可能是GPT-4o、Gemini 1.5 Pro或Claude 3 Opus,取决于你问谁),并尝试在其基础上构建网站或应用程序。当然,这方面有很大的空间,但这些工具会快速变化,扎实理解基础知识将使你更容易充分利用这些工具,在引入新工具时快速上手,并评估成本、性能、速度、模块化和灵活性等方面的权衡。此外,创新不仅发生在应用层,像Hugging Face、Scale AI和Together AI这样的公司通过专注于开放权重模型的推理、训练和工具(以及其他方面)获得了立足点。无论你是想参与开源开发,进行基础研究,还是在成本或隐私问题排除外部API使用的情况下利用LLMs,了解这些东西的工作原理有助于在需要时调试或修改它们。从更广泛的职业角度来看,许多当前的“AI/ML工程师”角色不仅重视高级框架,还重视基础知识,就像“数据科学家”角色通常重视理论和基础知识而不是当下流行的ML框架熟练度。深入探索是更艰难的路径,但我认为是值得的。但是,鉴于过去几年创新的速度,你应该从哪里开始?哪些主题是必不可少的,应该按什么顺序学习,以及哪些可以略读或跳过?
内容概览
教科书在提供高层次的领域路线图方面非常有用,特别是当“关键思想”集比较稳定时,但据我所知,目前还没有一本公开的、覆盖ChatGPT发布后AI现状的“指南”,具有教科书式的全面性或组织性。传统教科书是否适合于当前AI领域也是个问题,因为许多关键思想(如QLoRA、DPO、vLLM)不过一年左右的时间,而且在这些内容出版时,领域可能已经发生了巨大变化。常被引用的《深度学习》一书(Goodfellow et al.)已经接近十年,只有简要提到通过RNN进行的语言建模。《Dive into Deep Learning》包括了Transformer架构和BERT模型微调的内容,但缺少RLHF和RAG等主题(这些在更前沿的话题中已属“旧”了)。即将出版的《Hands-On Large Language Models》可能不错,但尚未正式出版(目前在线提供需付费),预计也不会是免费的。斯坦福的CS224n课程对在校学生来说似乎很棒,但没有登录的话,你只能访问幻灯片和主要由密集学术论文组成的阅读列表。微软的《生成式AI初学者指南》对于熟悉流行框架是相当不错的,但更侧重于应用而非理解基础知识。
我所知道的最接近我所设想的资源是Maxime Labonne在Github上的LLM课程。它包含许多交互式代码笔记本,以及学习基础概念的资源链接,其中许多与我将在此包含的内容重叠。如果你对应用感兴趣,我会推荐它作为本手册的主要伴侣指南;本文档不包括笔记本,但我覆盖的主题范围更广,包括一些尚未“标准化”的研究线程以及多模态模型。
尽管如此,仍有大量其他高质量且可访问的内容涵盖了AI的最新进展——只是没有组织起来。快速学习新创新的最佳资源通常是单篇博客文章或YouTube视频(以及Twitter/X线程、Discord服务器和Reddit及LessWrong上的讨论)。我撰写本文的目标是为浏览这些内容提供路线图,组织成教科书式的呈现,而不重新发明单个解释器。在整个过程中,我将尽可能包括多种内容风格(如视频、博客和论文),并提供我对目标相关知识优先级的意见,以及我在首次接触这些主题时发现有用的“心理模型”的注释。
我撰写本文档不是作为“生成式AI专家”,而是作为一个最近在短时间内深入了解许多这些主题的人。虽然自2016年以来我一直在AI领域工作(如果我们把实习项目评估视觉模型作为“起点”),但我只在18个月前ChatGPT发布时开始密切关注LLM发展。我在大约12个月前开始使用开源权重的LLMs。因此,过去一年我花了大量时间筛选博客文章、论文和视频,寻找宝贵的资源;本文档希望是那条路径的更直接版本。它还总结了我与朋友们的许多对话,我们试图找到并分享有用的直觉,以加速彼此对复杂主题的学习。编写这篇文档对填补我自己理解的空白也起到了很好的强迫作用;直到几周前我才知道FlashAttention的工作原理,我仍然认为我并不完全理解状态空间模型。但比起刚开始时,我已经了解了很多。