AI大模型学习路线:从Python基础到RAG与本地部署

AI大模型学习路线:从Python基础到RAG与本地部署 刷到《AI大模型》这类教程视频时很多人第一反应都是先收藏再吃灰。标题里“7天从小白到大神”听起来很诱人但真打开目录才发现几百集内容前面在讲Python中间跳到Transformer后面又变成智能体搭建看的时候什么都懂合上电脑还是不知道从哪下手。这篇文章不打算再给你画饼而是把“AI大模型学习”这件事拆成一张可落地的技能地图。无论你是刚接触编程的学生、想转行的后端开发还是已经在业务里用到API的工程师都可以按文章里的路径从基础补起逐步走到微调、RAG、智能体和本地部署。文中会给出完整的环境配置、代码示例和常见报错排查方式收藏这一篇基本等于把“学习路线 避坑手册 实战模板”一次带走。1. 大模型究竟是什么先建立直觉1.1 从“猜下一个字”到生成式AI很多教程一上来就甩出“自注意力机制”“预训练”“规模法则”这些词说实话对新手并不友好。先用最简单的方式理解大模型它本质上是一个超大的“概率预测器”。给它一段文字比如“今天天气真”它会根据训练时见过的大量文本预测下一个最可能出现的字是“好”还是“冷”。不断重复这个过程把预测出来的字拼回去再预测下一个字于是一整段话就生成出来了。ChatGPT、文心一言、通义千问等产品能对话、能写文章、能写代码底层都是这个“反复预测下一个词”的机制。这里的“大”主要有两层含义参数量大模型内部的参数从几十亿到几千亿不等参数越多能记住的规律和知识就越多。训练数据大训练时使用的文本量通常是TB级别覆盖网页、书籍、代码、论文等多种来源。专业一点的定义是大模型Large Language Model, LLM是基于深度学习架构典型的是Transformer构建的、在海量文本上预训练得到的语言模型。它通过自监督学习掌握了语言的统计规律并可以通过微调、提示工程等方式适配具体任务。1.2 大模型的典型应用场景AI大模型现在早已不是聊天玩具很多行业已经把它当成基础能力在使用内容生成文案起草、会议纪要、翻译润色、代码生成与解释。智能客服企业用大模型 知识库做问答机器人比传统关键词机器人理解能力强很多。代码辅助程序员的日常开发中补全代码、写单元测试、解释报错已经成为高频场景。数据分析和报表把自然语言转换成SQL再对数据库进行查询。多模态应用结合图像、语音完成图片理解、视频摘要、语音交互等任务。农业与物联网例如“农业大模型”的概念将土壤湿度、气象数据、作物生长阶段等信息接入大模型实现智能灌溉、施肥建议和病虫害预警。这种场景下大模型负责理解多源数据并给出决策建议。1.3 大模型的“大”体现在哪里这里要区分“大模型”和“普通模型”。传统机器学习模型如逻辑回归、随机森林用几万条数据就能训练部署在单机小内存环境也没问题。大模型则完全不同对比项传统模型大模型参数量百万级别十亿到千亿级别训练数据结构化表格为主海量非结构化文本训练成本CPU即可需要GPU集群使用方式训练后直接推理需要提示词设计或微调能力侧重针对单任务具备通用能力多任务适配理解“大”的意义在于它的能力和数据规模、参数规模强相关所以学习和使用方式也和传统机器学习完全不同。我们不需要自己训练一个大模型更多是在已有模型基础上做应用开发。2. 学习大模型需要准备的技能地图2.1 从零基础到项目落地总共需要哪几步如果把“AI大模型系统教程”里几百集的内容浓缩成一条路线大致可以分成五个阶段基础阶段Python语法、数据处理、数学基础。原理阶段机器学习、深度学习、Transformer结构、Token机制。应用阶段Prompt Engineering、API调用、构建对话应用。进阶阶段微调、RAG、智能体、多模态。工程阶段本地部署、推理加速、评测、安全与上线。很多教程把每个阶段都拍得很细但没必要按顺序全部刷完。最合理的做法是先跑通一个“最小闭环”调用API → 写一个问答脚本 → 接入知识库 → 打包上线。有了整体感知之后再回头补原理效率会高很多。2.2 不同背景读者的学习起点有编程基础熟悉Java/Python/Go可以直接跳到机器学习基础和大模型API应用遇到Python语法问题按需查询。零基础转行先学Python基础不用学太深能写脚本、能处理文件、能看懂报错就足够了。算法/数据背景基础比较扎实重点放在Transformers库、微调框架、部署工具链上。非技术但想用AI提效不建议一开始就啃源码先用现成的平台和API做应用再逐步了解原理。2.3 需要掌握的软件与平台Python 3.9建议使用3.10或3.11版本。Anaconda或Miniconda管理Python虚拟环境。PyCharm / VS Code / Cursor代码编辑器。Git GitHub/Gitee版本管理和代码托管。OpenAI SDK、Hugging Face Transformers、LangChain/LlamaIndex等常用库。如果涉及本地部署还需要了解CUDA、Docker、Ollama、vLLM等工具。版本说明不同库的更新速度很快本文示例以常见稳定版本为主你实际安装时可能版本更高用法上如有差异以官方文档为准。3. 零基础该如何打好地基3.1 Python基础与必备库大模型开发最常用的语言是Python但不需要你把Python学到精通。重点掌握这几个部分基础语法变量、循环、条件、函数、类、异常处理。文件与数据处理读写JSON、CSV文件。列表/字典推导式、生成器。常用库requests、json、os、numpy、pandas。下面是一个简单的Python脚本示例演示了读取文本文件、调用一个模拟的“模型接口”并输出结果的过程# 文件路径demo_basic.py # 演示Python基础读取文件、函数封装、打印输出 import json def load_prompt(file_path: str) - str: 从本地文件读取提示词内容 with open(file_path, r, encodingutf-8) as f: return f.read().strip() def build_messages(prompt: str) - list: 构造聊天消息结构这是大模型API常见的数据格式 return [ {role: system, content: 你是一名技术助手回答要简洁。.strip()}, {role: user, content: prompt}, ] if __name__ __main__: prompt load_prompt(prompt.txt) messages build_messages(prompt) print(json.dumps(messages, ensure_asciiFalse, indent2))这段代码虽然简单但展示了真实项目中必备的几个能力文件操作、数据结构组织、函数复用。学Python时不要只看语法要做这种“能跑起来的小函数”练习。3.2 数学知识够用就好大模型的原理需要一定的数学基础但不同阶段需求不同初级阶段掌握向量、矩阵乘法的基本概念知道点积、余弦相似度是什么即可。中级阶段了解概率论中的条件概率、贝叶斯思想理解损失函数、梯度下降的直觉。高级阶段想深入模型源码才需要掌握更深的线性代数和微积分。日常开发中我们更经常和“向量”打交道。比如文本被转成嵌入向量后通过计算向量之间的相似度来做检索。先看一个简单的向量计算示例# 向量相似度计算示例 import numpy as np vec1 np.array([0.1, 0.3, 0.5, 0.2]) vec2 np.array([0.2, 0.1, 0.6, 0.1]) vec3 np.array([0.9, 0.8, 0.2, 0.4]) def cosine_similarity(a: np.ndarray, b: np.ndarray) - float: 计算余弦相似度值越接近1表示越相似 dot np.dot(a, b) norm_a np.linalg.norm(a) norm_b np.linalg.norm(b) return float(dot / (norm_a * norm_b)) print(向量1与向量2的相似度, cosine_similarity(vec1, vec2)) print(向量1与向量3的相似度, cosine_similarity(vec1, vec3))向量1和向量2的数值更接近所以相似度更高向量3方向相差较大相似度偏低。RAG检索增强生成中“找相似文档”的原理就是这种向量计算的升级版。3.3 机器学习与深度学习入门建议如果完全没接触过机器学习和深度学习不建议直接啃大模型的论文而是先建立几个核心概念训练与推理训练是让模型从数据中学习参数推理是用训练好的模型做预测。损失函数模型预测结果与真实结果之间的差距。梯度下降通过反向传播更新参数让损失逐步减小。过拟合模型在训练数据上表现好但在新数据上表现差。可以先用一些小项目练手比如用scikit-learn做分类用PyTorch训练一个简单神经网络。这个阶段不要追求搞懂所有数学推导重点是知道一个模型从数据到预测的完整流程。4. 核心原理从Transformer到大语言模型4.1 Transformer的核心结构Transformer是目前绝大多数大模型的基础架构它由编码器Encoder和解码器Decoder组成。GPT系列主要使用解码器结构BERT则使用编码器结构。对于做应用开发的人来说不需要手写Transformer但有几个关键概念必须理解Self-Attention自注意力机制让模型在处理每个词时能同时关注句子中其他词从而理解上下文。比如“苹果”到底是水果还是手机品牌需要看上下文才能确定。Multi-Head Attention多头注意力把注意力分成多个头每个头关注不同维度的关系。Positional Encoding位置编码由于Transformer不像RNN那样天然按顺序处理数据需要额外把词的位置信息编码进去。Feed Forward Network前馈网络每个注意力层后面接的全连接层用来做非线性变换。“大模型会预测下一个词”这件事核心就是通过多层Transformer堆叠让模型在给定上文时计算出概率分布。4.2 Token、上下文窗口与参数Token是文本处理的基本单位它可能是一个词、一个字符也可能是一个子词。英文中“hello world”大约是两个Token中文一个汉字或一个词在不同分词器下可能是1到4个Token。Token概念之所以重要是因为大模型的计费、上下文长度都直接用Token衡量。上下文窗口Context Window表示模型一次最多能“看到”的Token数量。比如上下文窗口是128K输入提示词加输出加起来不能超过这个数量。参数Parameters决定模型容量但参数大不等于效果好还取决于训练数据质量和训练方法。实际开发中经常需要估算Token数量来控制成本。下面是一个简单的估算函数def estimate_tokens(text: str) - int: 粗略估算Token数量。 英文约为1个字符0.25个Token中文约为1个汉字1-2个Token。 这里只是一个简易估算实际以模型分词器为准。 cn_chars sum(1 for ch in text if \u4e00 ch \u9fff) other_chars len(text) - cn_chars return int(cn_chars * 1.5 other_chars * 0.3) sample 你好世界Hello World! print(estimate_tokens(sample))不同模型有自己的Tokenizer精确数量需要用官方Tokenizer计算但日常粗略估算时这种近似方法已经足够帮助判断“我的提示词会不会超长”。4.3 Prompt Engineering起步Prompt Engineering提示工程是通过设计输入文本引导模型输出期望结果的方法。提示词设计得好不好直接影响模型输出质量。以下是几条高频实战经验明确角色开头给模型设定身份比如“你是资深Java工程师”。给定约束说明输出格式、长度、风格。提供示例在提示词中给一两个示例模型更容易模仿格式。拆解任务复杂任务拆成多步而不是让模型一步到位。指定输出结构要求JSON格式或Markdown格式。示例你是数据库专家请把下面的自然语言问题转换成SQL查询语句。 要求 1. 只输出SQL不要输出解释。 2. 字段名使用原表字段。 3. 如果问题模糊先输出“信息不足”。 表结构 users(id, name, age, city) 问题找出北京用户中年龄大于25岁的人按年龄倒序。 输出这个提示词把角色、约束、表结构、问题都写得非常清楚模型输出的SQL通常比“帮我写个SQL”要准确得多。实际项目中复杂提示词建议统一存放在配置文件或独立文件中方便复用和维护。5. 从调用API到构建第一个AI应用5.1 配置开发环境建议先创建一个独立的虚拟环境避免不同项目依赖冲突python -m venv llm_env source llm_env/bin/activate # Windows 下使用 llm_env\Scripts\activate pip install --upgrade pip pip install openai python-dotenv requests这里安装的openai是OpenAI官方SDKpython-dotenv用来读取.env环境变量文件。注意直接在大模型开发中涉及API Key时永远不要把密钥写在代码里要写入.env文件并在.gitignore中忽略它。5.2 调用大模型接口以OpenAI兼容接口为例使用Python SDK调用# 文件路径chat_demo.py import os from openai import OpenAI from dotenv import load_dotenv load_dotenv() client OpenAI( api_keyos.getenv(OPENAI_API_KEY), base_urlos.getenv(OPENAI_BASE_URL) # 可配置代理或兼容接口地址 ) def chat_with_model(user_content: str) - str: 发送对话请求返回模型回复文本。 response client.chat.completions.create( modelos.getenv(MODEL_NAME, gpt-4o-mini), messages[ {role: system, content: 你是一个乐于助人的AI助手。}, {role: user, content: user_content}, ], temperature0.7, ) return response.choices[0].message.content if __name__ __main__: result chat_with_model(用一句话介绍大模型) print(result)temperature控制随机性值越大越有创造性值越小越确定。如果做分类、信息抽取等任务建议调低到0.2左右如果做文案创意可以调到0.8以上。5.3 给AI加上记忆和工具调用基础API是无状态的每次调用模型都不知道之前的对话内容所以需要把历史消息一起传过去。一个简单的“多轮对话记录”方式# 文件路径chat_with_history.py from openai import OpenAI from dotenv import load_dotenv import os load_dotenv() client OpenAI( api_keyos.getenv(OPENAI_API_KEY), base_urlos.getenv(OPENAI_BASE_URL) ) history [ {role: system, content: 你是旅游助手回答简洁。请使用中文。} ] while True: user_input input(我) if user_input.strip().lower() quit: break history.append({role: user, content: user_input}) resp client.chat.completions.create( modelos.getenv(MODEL_NAME, gpt-4o-mini), messageshistory, temperature0.7, ) reply resp.choices[0].message.content print(AI, reply) history.append({role: assistant, content: reply})需要注意历史越长消耗的Token越多。实际系统中通常只保留最近几轮对话更早的内容可以摘要化这就是“滑动窗口 摘要压缩”策略。工具调用Function Calling则是让模型在需要时调用外部函数比如查天气、查数据库、执行代码。这是构建Agent的基础能力后面会展开。6. 进阶微调、RAG与智能体6.1 微调什么时候需要微调很多人以为大模型不够好就要微调其实大多数业务场景优先考虑的是提示词工程和RAG。只有当以下情况出现时再考虑微调需要模型稳定输出特定格式如公司内部工单格式。需要模型掌握某个专业领域的术语和表达风格。需要降低提示词长度、减少Token开销。已经积累了一批高质量业务数据。微调的本质是在预训练模型基础上用少量有标注的数据继续训练模型的参数。常用方法有全参数微调和LoRA低秩适配等参数高效微调方法。LoRA只训练一小部分额外参数显存占用小普通开发者用单张消费级显卡也能跑。微调流程一般包括准备数据集JSONL格式→ 加载模型和Tokenizer → 配置训练参数 → 训练 → 保存模型 → 推理测试。下面是一个数据格式示例{instruction: 将句子翻译成英文, input: 今天天气很好, output: The weather is nice today.} {instruction: 总结下面这段话, input: 大模型技术近年来发展迅速尤其在自然语言处理领域表现出色。, output: 大模型近年发展迅速在NLP领域表现出色。}6.2 RAG给大模型外挂知识库RAGRetrieval-Augmented Generation检索增强生成是目前企业落地最火的方案。它的核心思路很简单模型不知道的知识先去外部数据库里检索把检索到的相关资料塞进提示词再让模型回答。RAG通常包含两个阶段离线索引阶段把文档切片 → 向量化 → 存入向量数据库。在线问答阶段用户提问 → 向量化问题 → 在向量库中检索最相似的文档片段 → 拼接到提示词 → 模型生成回答。这种方法特别适合企业内部文档问答、法规政策问答、产品手册问答等场景因为不需要重新训练模型知识可以随时更新。# 简化版RAG思路 def rag_answer(question: str, vector_store, llm_client): # 1. 将问题向量化 query_vector embed_text(question) # 2. 从向量库召回Top-K相关文档 docs vector_store.search(query_vector, top_k3) context \n.join(docs) # 3. 拼接提示词 prompt f 请根据下面的资料回答问题资料中没有的信息不要编造。 资料 {context} 问题{question} return llm_client.generate(prompt)这里的embed_text、vector_store.search、llm_client.generate都是示意实际项目中会使用OpenAI Embedding接口、Chroma/FAISS/Milvus等向量库以及Chat模型生成答案。6.3 智能体Agent从对话走向执行智能体是大模型应用的高阶形态。它不再只是“回答问题”而是能自主规划任务、调用工具、执行操作并返回结果。一个简单的Agent工作流如下用户提出复杂需求比如“帮我查一下本周销售数据并生成周报”。Agent把任务拆解成步骤查库 → 分析数据 → 生成周报 → 发送邮件。每一步调用对应的工具或API。如果中途出错或结果不符合预期Agent可以自我修正后重试。目前主流的智能体框架包括LangChain、LlamaIndex、AutoGen、Dify等。对于新手不建议一上来就全盘使用框架先理解“循环调用模型 工具注册”这个核心逻辑再使用框架提高效率。下面模拟了一个极简“循环调用工具”的过程# 工具注册与执行示意 def search_weather(city: str): # 实际项目中这里会调用真实天气API return f{city}今日晴25℃ def calculator(expression: str): return str(eval(expression)) TOOLS { search_weather: search_weather, calculator: calculator, } def run_agent(user_input: str, llm): # 首轮让模型判断要调用哪个工具并提取参数 message [ {role: system, content: 请从可用工具中选择一个返回JSON格式{\tool\:\工具名\,\args\:\参数\}}, {role: user, content: user_input}, ] resp llm.invoke(message) parsed json.loads(resp) if parsed[tool] in TOOLS: result TOOLS[parsed[tool]](parsed[args]) return f执行成功结果为{result} return 没有找到可用工具这个示例非常简化真实Agent需要处理参数解析失败、多轮调用、上下文记录、工具返回结果回填到对话等复杂逻辑但核心的“模型决策 工具执行”就是这样的过程。7. 本地部署与上线7.1 本地部署的常见方案除了调用云端API很多企业和个人还希望把模型部署到自己的服务器上解决数据隐私、成本、离线使用等问题。本地部署大模型有几个主流方案Ollama适合个人电脑和轻量环境一条命令就能运行模型也提供兼容OpenAI的API接口。vLLM适合生产环境支持高吞吐推理、Continuous Batching、PagedAttention等优化技术。FastChat基于Hugging Face Transformers封装适合研究和快速原型。LMDeploy国内常用部署工具支持量化、多卡并行等功能。以Ollama为例安装完成后在命令行执行ollama run qwen2.5:7b这条命令会自动拉取qwen2.5:7b模型并启动交互式聊天。注意不同模型名称和版本需要到Ollama模型库中确认不要凭记忆写模型名。7.2 推理性能优化如果模型部署后响应太慢可以从下面几个方向优化量化推理把模型精度从FP16降到INT8或INT4显著降低显存占用提升推理速度但效果会有少量损失。批处理把多个请求合并成一个批次提高GPU利用率。动态batchingvLLM等框架会自动合并等待中的请求。流式输出用户输入后立即开始输出第一个Token改善体验。硬件选择显存大小决定能跑多大模型7B模型通常需要至少6-8GB显存13B模型建议16GB以上70B模型一般需要多卡或量化。7.3 生产环境注意事项上线大模型应用不能只关注“模型回答得好不好”还要考虑并发和限流对API请求做限流防止后端被打爆。超时与重试模型推理可能超过几秒需要配置合理的超时和重试策略。观测与日志记录输入输出、Token消耗、响应时间、错误信息便于问题追踪。内容安全加一层内容审核过滤有害内容。成本控制大模型按Token计费上线前要预估成本建议设置预算告警。灰度发布模型版本更新或提示词调整时使用灰度策略逐步放量。8. 实操路线规划别轻信“7天速成”8.1 真实的学习节奏建议坦白说标题里“7天从小白到大神”是不现实的。7天可以做一个入门项目可以让有编程基础的人跑通API调用和网页对话应用但要把原理、微调、部署、安全全部学扎实至少需要1到3个月的持续投入。一个务实的学习计划可以这样安排周期学习内容输出成果第1周Python基础、虚拟环境、Git能写脚本处理文本文件第2周API调用、提示词工程完成一个命令行问答工具第3周构建Web应用Flask/Streamlit做一个简单的智能问答网站第4周了解RAG学习向量数据库给问答工具加上“外挂知识库”第5周学习LangChain、Agent基础做一个能调用天气或计算器的Agent第6-8周学习模型微调、本地部署用LoRA微调一个小模型并部署每周的学习时间不用太长但一定要有可演示的成果。只看教程不做项目很快就会忘。8.2 配套练习与作品集不要只看不写。强烈建议准备一个公开的GitHub仓库把学习过程做成系列项目项目1带历史记忆的命令行AI助手。项目2基于Streamlit的聊天演示站。项目3基于RAG的企业文档问答系统。项目4接入本地Ollama的API服务。项目5给Agent增加自定义工具链。作品集比简历上的“熟悉大模型”更有说服力。面试或写总结时直接展示项目仓库和效果截图。8.3 免费开源学习资源参考网上高质量的免费学习资源不少可以按需选用吴恩达《ChatGPT Prompt Engineering for Developers》最早的提示词工程入门课程之一偏实用。Hugging Face官方课程适合学习Transformers库和NLP基础知识。上海交大《动手学大模型》系列开源教程体系化讲解大模型原理与应用适合有一定基础的同学按章节学习。LangChain官方文档和示例学智能体和RAG时配套查阅。Hugging Face模型库可以直接下载开源模型如Qwen、Llama、ChatGLM等。注意开源模型和课程的更新速度很快遇到版本差异时优先参考官方文档而不是过时的博客。9. 常见问题与排查思路9.1 环境配置相关问题现象常见原因解决思路ModuleNotFoundError没有安装对应Python包检查虚拟环境是否激活执行pip install 包名版本冲突不同库依赖同一个包的不同版本使用pip check检查依赖必要时重建虚拟环境API Key报错.env文件读取失败或密钥无效检查.env文件路径、键名拼写、是否已在代码中调用load_dotenv()网络超时无法访问API服务地址检查base_url配置或确认是否需要走代理/内网地址9.2 模型效果相关问题现象常见原因解决思路回答不准确提示词信息不足补充背景描述、示例和约束条件输出格式混乱没有在提示词中严格要求或temperature过高指定JSON/Markdown格式调低temperature编造内容幻觉模型没有相关知识强行作答改用RAG方式提供资料并明确要求“资料中没有的信息不要编造”对话上下文丢失没有把历史消息传给模型在messages参数中携带多轮历史记录中文效果差模型偏英文或提示词不清晰更换中文能力强的模型或在System Prompt中指定使用中文9.3 资源不足时的应对策略显存不足加载模型时报CUDA out of memory可以用量化版本或者减少批量大小、换用更小的模型。推理慢本地CPU推理很慢优先考虑GPU没有GPU可以先调云端API。训练成本高微调时优先使用LoRA用少量数据先做实验。长文本超限超出上下文窗口时对文本做切片、摘要或分段检索。10. 最佳实践与工程建议10.1 让项目可维护大模型应用开发与传统后端开发一样需要讲究代码工程化提示词单独管理不要散落在代码各处使用配置表或单独文件维护。模型封装成统一接口切换模型厂商时改动尽量小。日志结构化记录请求ID、模型名、Token数、耗时、错误码方便排障。接口幂等用户重复提交时避免重复扣费或重复调用。做好配置隔离开发、测试、生产环境使用不同的API Key和模型。10.2 评测、安全与合规模型效果不能只靠感觉要建立评测集。把常见的用户问题整理成评测集每次修改提示词或换模型后跑一遍评测集用“通过/不通过”或打分来对比。安全方面要注意提示词注入用户输入可能试图覆盖系统提示词要校验和过滤高危输入。内容安全接入内容审核机制对模型输出做二次过滤。数据隐私用户输入中可能包含敏感信息不要记录完整对话明文到日志。最小权限模型应用的API密钥只分配必要权限避免一台服务器泄露导致多个服务受影响。10.3 投入节奏建议如果你正准备进入AI大模型领域建议按“应用 → 原理 → 训练 → 部署”的顺序投入先用现成API做出一个小应用建立信心。再深入学习Transformer和提示词工程理解模型行为背后的原因。然后接触RAG和Agent解决实际问题。最后再考虑微调和本地部署这是锦上添花的能力。工作中有项目时带着问题去学效率最高。如果只是为了赶潮流而学很容易半途而废。坚持做几个能上线的小项目比盲目刷几百集视频要有用得多。11. 结语从“看教程”到“做出东西”回头再看那些“全748集”的教程标题最能引起共鸣的其实是最后四个字“存下吧”。存下来的不只是视频而是一份“我希望自己有一天能系统学习大模型”的愿望。但真正的突破从来都是当你打开编辑器写下一行调用API的代码跑通第一个AI程序开始的。学习AI大模型没有捷径但绝对有最短路径抓住Python基础搞懂提示词和API调用动手做一个小应用再逐步深入RAG、智能体和本地部署。把每一次报错都当成学习材料把每一个示例都改成自己的项目坚持一段时间后回头看你会感谢那个没有继续把教程放在收藏夹吃灰的自己。如果这篇文章对你有帮助建议收藏后跟着路线图一步步实践。遇到问题欢迎在评论区讨论也欢迎分享你的第一个大模型Demo共同交流进步。