小白程序员必看:收藏这份 Agent Memory 模块设计指南,面试必杀技!

基于CNN的三相故障识别算法及实现(Matlab) 通过预处理数据、构建CNN模型、训练与评估模型等步骤,我们可以准确快速地识别三相故障。现代电力系统中,三相故障是一种常见的故障情况,可以导致电网中断、设备损坏甚至火灾等严重后果。本文将介绍基于卷积神经网络(CNN)的三相故障识别算法,并提供Matlab源代码实现。首先,将原始信号分为训练集和测试集。然后,对输入信号进行归一化处理,确保数据在合适的范围内。CNN适用于处理二维数据,所以我们可以将输入信号看作是时间序列数据和特征(如电压、电流等)的二维矩阵。在开始之前,我们需要一个包含正常和故障样本的数据集。 阅读详情

本文深入解析 Agent Memory 模块的设计要点,从认知科学的三种记忆类型(语义、情节、程序性)出发,结合短期记忆和长期记忆的双层架构,详细阐述了记忆的提取、写入、管理和检索流程。特别介绍了 Mem0 框架的四种记忆操作(ADD、UPDATE、DELETE、NOOP)以及记忆冲突的处理机制。文章最后总结了记忆系统设计的三个维度,帮助读者全面掌握 Agent Memory 模块的设计思路,提升面试竞争力。

前段时间一位读者在后台私信我,说去字节面试,聊到了他做的 Agent 项目。

面试官问:“你的 Agent 有没有记忆能力?”

他说:“有,用户上周问过的问题这周还记得。”

面试官接着问:“那这个记忆存在哪?”

他说:“存在向量数据库里。”

面试官继续追:“向量数据库里有多少条记忆?怎么检索出来的?全量检索还是按用户过滤?”

他说:“用语义相似度检索,取 Top5。”

面试官没停:“那如果用户上周说他有两个孩子,这周又说他有三个孩子,你怎么处理?追加一条还是更新原来那条?系统怎么判断的?”

他当场卡住了,答不上来。

面试官最后说了一句话,点到了根上:“你知道怎么查记忆,但你不知道怎么管记忆。记忆管理才是 Agent 可用不可用的分水岭。”

这篇文章,我们就来系统讲清楚 Agent 的 Memory 模块该怎么设计。

为什么 Agent 需要 Memory?

先说一个具体的背景。

我们在做的项目是银行对公客户智能咨询助手"拓业智询",服务的对象是企业客户,咨询的内容涉及理财产品、贷款方案、汇率避险等专业金融问题。

这类客户有个特点:需求复杂,决策周期长,一个项目要咨询好几次。客户经理要记住每位客户的偏好、资质、历史问题——这是基本功。但如果 AI 每次都"失忆",客户每次都要重新介绍自己,体验极差。

我们做了一组对比测量:

  • 没有 Memory 模块:用户第二次咨询时要重新介绍需求,平均多说 3-4 轮对话才能进入正题
  • 有 Memory 模块:系统识别到回头用户后,直接基于历史偏好给出回答,满意度提升 23%,平均对话轮次减少 2.1 轮

这组数据说明,Memory 不是锦上添花,是 Agent 落地的基础能力。

那 Memory 到底是什么?它不是把所有对话记录存起来,而是一套结构化的信息管理体系——哪些信息值得记,怎么存,怎么取,怎么更新,怎么删。

要回答这些问题,先得搞清楚 Agent 的记忆到底有哪几种,每种记忆的性质不同,对应的存储和检索策略也完全不一样。

认知科学视角:三种记忆类型

在设计 Agent Memory 之前,我们先从认知科学借一个框架。人类的记忆分为三种类型,Agent 的记忆设计也可以完全对照这套体系来做。

Agent记忆系统三种类型

语义记忆(Semantic Memory)

语义记忆是关于世界的通用知识,不依附于特定时间和人物。

在"拓业智询"里,语义记忆包括:

  • 各类金融产品的说明和条款
  • 监管政策、利率基准、汇率规则
  • 常见业务问答,如"对公账户开户需要哪些材料"

这类信息的特点是长期稳定,更新频率低,对所有用户共享。存储方式是传统的知识库向量数据库,按内容语义检索。

示例:"平安银行对公理财产品的起购金额为100万元,最短持有期30天。"

这条信息对所有咨询用户都适用,存在共享向量库里,任何用户问到都可以检索到。

情节记忆(Episodic Memory)

情节记忆是具体事件的记录,与时间、人物绑定。

在项目里,情节记忆包括:

  • 用户张三在 2024 年 3 月询问过重疾险的保障范围
  • 用户李四的企业注册资本 5000 万,属于中型企业客户
  • 用户王五明确表示不接受股票类高风险产品
  • 用户赵六上次咨询时提到公司准备做跨境业务

这类信息是每个用户独有的,与用户 ID 强绑定,更新频率高。存储时必须按用户 ID 隔离,检索时先过滤用户再做语义匹配。

这是 Agent 产生"认识你"感知的核心来源。

程序性记忆(Procedural Memory)

程序性记忆是操作流程和行为规则,对应的是"怎么做"而不是"知道什么"。

在项目里,程序性记忆包括:

  • 处理理赔咨询时,先查保单状态,再查对应条款
  • 涉及高净值客户时,优先推荐私行产品线
  • 客户首次咨询时,先确认企业性质和注册地

这类信息不需要检索,直接固化为系统 Prompt,在每次对话开始时注入。更新方式是修改系统 Prompt 而不是检索时注入。

这三种记忆类型对应完全不同的存储和检索策略,混在一起处理是很多初学者踩的第一个坑。

分清楚了记忆的内容分类,接下来要解决的是时效性问题——同样是情节记忆,当前对话里刚说的话和三个月前记录的偏好,处理方式是完全不同的。这就引出了短期记忆和长期记忆的双层架构。

短期记忆与长期记忆的双层架构

三种类型是对记忆内容的分类,接下来说的是对记忆时效的分类——短期记忆和长期记忆。

Agent记忆管理四步流程

短期记忆:对话上下文窗口

短期记忆就是当前对话的消息历史,存在 LLM 的上下文窗口里。

实现上用滑动窗口管理,保留最近 N 轮对话:

class ShortTermMemory:     def __init__(self, window_size: int = 10):         self.window_size = window_size         self.messages = []      def add_message(self, role: str, content: str):         self.messages.append({"role": role, "content": content})         # 超出窗口大小则移除最早的消息         if len(self.messages) > self.window_size * 2:  # 每轮包含user+assistant两条             self.messages = self.messages[-self.window_size * 2:]      def get_context(self) -> list:         return self.messages

短期记忆的局限很明显:对话结束后就消失了,下次会话无法访问。这就是长期记忆存在的原因。

长期记忆:向量数据库分区存储

长期记忆存在向量数据库里,在"拓业智询"里我们用 Milvus。

存储结构上,按记忆类型和用户 ID 分区:

# Milvus集合设计 schema = {     "collection_name": "agent_memory",     "fields": [         {"name": "memory_id", "type": "VARCHAR", "max_length": 64},         {"name": "user_id", "type": "VARCHAR", "max_length": 64},         {"name": "memory_type", "type": "VARCHAR", "max_length": 32},  # semantic/episodic         {"name": "content", "type": "VARCHAR", "max_length": 2048},         {"name": "embedding", "type": "FLOAT_VECTOR", "dim": 1536},         {"name": "created_at", "type": "INT64"},  # Unix timestamp         {"name": "ttl", "type": "INT64"},  # 过期时间,-1表示永久         {"name": "is_deleted", "type": "BOOL"}  # 软删除标记     ] }

语义记忆分区:user_id 字段为空或固定值 "global",对所有用户共享 情节记忆分区:user_id 字段绑定具体用户,检索时必须带 user_id 过滤条件

这个分区设计解决了两个问题:隔离性(用户 A 不会检索到用户 B 的记忆)和性能(先按 user_id 过滤再做向量检索,检索范围大幅缩小)。

对话结束时的记忆提取

一次对话结束后,系统需要从对话内容里提取值得长期保存的记忆点:

MEMORY_EXTRACTION_PROMPT = """ 你是一个记忆提取助手。请从以下对话中提取值得长期记忆的信息。  只提取以下类型的信息: 1. 用户明确表达的偏好(如风险偏好、产品偏好) 2. 用户的基本信息(企业规模、行业、注册地等) 3. 用户的重要决策或需求变化 4. 对未来咨询有参考价值的关键事件  不要提取:普通的问答内容、系统的标准回复、临时性的闲聊  对话内容: {conversation}  请以JSON格式输出,每条记忆包含:content(内容)、memory_type(episodic/semantic) """  async def extract_memories(conversation: list, user_id: str) -> list:     prompt = MEMORY_EXTRACTION_PROMPT.format(         conversation="\n".join([f"{m['role']}: {m['content']}" for m in conversation])     )     response = await llm.ainvoke(prompt)     memories = json.loads(response.content)     return memories

这个提取步骤是 Memory 系统的入口,提取质量直接决定长期记忆的有效性。

有了提取结果,下一个问题是:新提取出来的记忆怎么写入?如果每次都无脑追加,时间一长记忆库里就会充满相互矛盾的信息,这正是 Mem0 框架要解决的核心问题。

Mem0 框架:四种记忆操作

提取出来的记忆怎么写入?这里就要谈到记忆管理的核心问题——当新信息到来时,系统应该做什么操作?

Mem0 是目前最成熟的 Agent Memory 开源框架,它把记忆操作抽象为四种:ADD、UPDATE、DELETE、NOOP。

# Mem0的记忆管理接口 from mem0 import Memory  memory = Memory()  # ADD:新增记忆(全新信息,之前没有记录过) memory.add("用户偏好低风险产品,不接受股票类投资", user_id="user_001")  # UPDATE:更新记忆(信息发生了变化) memory.update(memory_id="mem_xxx", data="用户已升级为VIP客户,授信额度从50万提升到200万")  # DELETE:删除记忆(信息已过期或不再有效) memory.delete(memory_id="mem_xxx")  # 如用户注销账户后  # NOOP:不操作(信息已存在,内容一致,无需重复写入) # 系统自动判断,不需要手动调用

这四种操作看起来简单,但背后的判断逻辑是整个 Memory 系统最有技术含量的地方。

Mem0 的核心机制是:每次写入新记忆前,先用 LLM 比较新信息和现有记忆的语义关系,然后决定做哪种操作。

MEMORY_DECISION_PROMPT = """ 你是一个记忆管理助手。请判断以下新信息与现有记忆的关系,并决定操作类型。  新信息:{new_info}  现有记忆(相关度最高的5条): {existing_memories}  请判断: - ADD:新信息是全新的,现有记忆中没有相关内容 - UPDATE:新信息是对某条现有记忆的更新(同一实体,信息变化了) - DELETE:新信息表明某条现有记忆已经失效 - NOOP:新信息与现有记忆完全一致,无需操作  输出JSON格式:{{"action": "ADD/UPDATE/DELETE/NOOP", "target_memory_id": "如果是UPDATE/DELETE则填写目标记忆ID", "reason": "判断理由"}} """

这套判断逻辑在测试环境下运转流畅,但在实际业务中会遇到更复杂的情况——用户的信息前后矛盾了,该更新还是保留?这就是记忆冲突问题,也是面试官最喜欢深挖的地方。

面试官追问的核心:记忆冲突怎么处理?

回到文章开头的面试场景,那个让读者答不上来的问题:用户上周说有两个孩子,这周说有三个孩子,怎么处理?

这是记忆冲突问题,也是 Memory 系统工程挑战里最难的一个。

方案一:语义去重判断

用 LLM 比较新旧信息的语义相似度,相似度超过阈值则判断为同一实体的更新:

async def check_memory_conflict(     new_memory: str,     existing_memories: list,     similarity_threshold: float = 0.85 ) -> dict:     """     检查新记忆是否与现有记忆冲突     返回:{"action": "ADD/UPDATE", "conflict_memory_id": str or None}     """     if not existing_memories:         return {"action": "ADD", "conflict_memory_id": None}      # 对每条现有记忆计算语义相似度     new_embedding = await embedder.aembed_query(new_memory)      for mem in existing_memories:         similarity = cosine_similarity(new_embedding, mem["embedding"])          if similarity > similarity_threshold:             # 相似度高,判断为同一实体——需要更新而不是追加             # 进一步用LLM确认是否真的是更新             is_update = await llm_confirm_update(new_memory, mem["content"])             if is_update:                 return {"action": "UPDATE", "conflict_memory_id": mem["memory_id"]}      return {"action": "ADD", "conflict_memory_id": None}

"用户有两个孩子"和"用户有三个孩子"的语义相似度会很高(都是关于孩子数量的描述),系统判断为 UPDATE 操作,用新信息替换旧信息,而不是同时保留两条相互矛盾的记录。

方案二:记忆过期与 TTL 管理

有些记忆天然有时效性,过了有效期就应该删除而不是保留。

# 写入带TTL的记忆 def add_memory_with_ttl(     content: str,     user_id: str,     ttl_days: int = -1  # -1表示永久,>0表示有效天数 ):     ttl_timestamp = -1     if ttl_days > 0:         ttl_timestamp = int(time.time()) + ttl_days * 86400      memory_record = {         "memory_id": str(uuid.uuid4()),         "user_id": user_id,         "content": content,         "created_at": int(time.time()),         "ttl": ttl_timestamp,         "is_deleted": False     }     milvus_client.insert("agent_memory", memory_record)  # 示例:本月预算信息,有效期30天 add_memory_with_ttl(     content="用户本月可用于理财的预算为5万元",     user_id="user_001",     ttl_days=30 )  # 定时清理任务(每天运行) async def cleanup_expired_memories():     current_time = int(time.time())     expired = milvus_client.query(         collection_name="agent_memory",         filter=f"ttl > 0 && ttl < {current_time} && is_deleted == false"     )     for mem in expired:         milvus_client.update(             collection_name="agent_memory",             filter=f"memory_id == '{mem['memory_id']}'",             data={"is_deleted": True}         )

"用户本月预算是 5 万"这类信息,30 天后就过期了,继续保留反而会干扰后续回答。TTL 机制让系统自动完成清理,不需要人工干预。

方案三:隐私合规与"被遗忘权"

金融行业有严格的数据合规要求,用户有权要求删除自己的所有数据,这就是 GDPR 和国内个人信息保护法里的"被遗忘权"。

工程上的实现方式是软删除配合审计日志:

async def forget_user(user_id: str, operator: str, reason: str):     """     软删除用户的所有记忆,保留审计日志     """     # 1. 标记所有记忆为已删除     milvus_client.update(         collection_name="agent_memory",         filter=f"user_id == '{user_id}' && is_deleted == false",         data={"is_deleted": True}     )      # 2. 写入审计日志(审计日志不删除,用于合规审查)     audit_log = {         "operation": "USER_FORGET",         "user_id": user_id,  # 保留user_id用于审计         "operator": operator,         "reason": reason,         "timestamp": int(time.time()),         "memory_count": deleted_count     }     audit_db.insert(audit_log)      return {"status": "success", "message": f"已删除用户{user_id}的所有记忆数据"}

注意:审计日志本身不删除,这是合规要求——监管机构有权审查数据处理记录,但实际的用户数据(记忆内容)通过 is_deleted 标记在业务查询中完全屏蔽。

冲突处理、过期清理、合规删除,这三个机制解决了记忆"怎么管"的问题。记忆存好之后,每次对话时怎么把它用起来,才是最终落地的关键。

记忆检索:如何把记忆注入 Prompt

记忆存好了,每次对话开始时怎么用?

async def retrieve_memory(query: str, user_id: str) -> str:     """     检索与当前问题相关的历史记忆,返回格式化的Prompt片段     """     # 第一步:向量检索用户相关记忆(先过滤user_id,再做语义检索)     relevant_memories = memory.search(         query=query,         user_id=user_id,         limit=5     )      if not relevant_memories:         return ""      # 第二步:格式化为Prompt片段     memory_context = "\n".join([         f"- {m['memory']} (记录于{m['created_at']})"         for m in relevant_memories     ])      return f""" 【用户历史信息】 以下是该用户的历史偏好和关键信息,请在回答时参考: {memory_context} """  # 在对话流程中注入 async def chat(user_message: str, user_id: str, session_id: str):     # 检索相关记忆     memory_context = await retrieve_memory(user_message, user_id)      # 构建完整的系统Prompt     system_prompt = BASE_SYSTEM_PROMPT     if memory_context:         system_prompt += "\n\n" + memory_context      # 调用LLM     response = await llm.ainvoke(         messages=[             {"role": "system", "content": system_prompt},             *short_term_memory.get_context(),             {"role": "user", "content": user_message}         ]     )      # 更新短期记忆     short_term_memory.add_message("user", user_message)     short_term_memory.add_message("assistant", response.content)      return response.content

有几个细节值得注意:

第一,检索时一定要先按 user_id 过滤,再做向量相似度计算,不能把所有用户的记忆混在一起检索。不然不同用户的信息会相互污染,也是严重的隐私问题。

第二,limit=5 不是固定值,要根据 Prompt 长度预算来决定。如果上下文窗口紧张,可以减少到 3 条;如果问题复杂、需要更多背景信息,可以增加到 8 条。

第三,检索到的记忆要带上时间戳,让 LLM 知道这条信息是什么时候记录的,方便它判断信息的时效性。

把定义、写入、管理、检索这四个环节串起来,就得到了一套完整的记忆管理闭环,下面用一个统一的流程图把它梳理清楚。

四步记忆管理流程

把上面所有内容串起来,完整的记忆管理流程是四步:

短期记忆+长期记忆双层架构

第一步:Define(定义)

明确哪些信息值得记忆。不是所有对话内容都有保存价值,要聚焦在:

  • 用户明确表达的偏好(风险偏好、产品偏好、服务偏好)
  • 用户的基本信息(企业规模、行业、注册地)
  • 用户的重要决策和关键事件
  • 对后续服务有实质参考价值的信息

"今天天气真好"不值得记忆,"我们公司明年计划做出口业务"值得记忆。

第二步:Write(写入)

用 LLM 从对话中提取记忆点,按类型分类后写入对应的存储:

  • 情节记忆:写入向量数据库,绑定 user_id
  • 语义记忆:写入共享知识库
  • 程序性记忆:更新系统 Prompt 配置

第三步:Manage(管理)

写入前做冲突检测,决定 ADD/UPDATE/DELETE/NOOP 操作:

  • 语义相似度 > 0.85 且内容有变化:UPDATE
  • 新信息表明旧记忆已失效:DELETE
  • 新信息之前没有类似记录:ADD
  • 新信息与现有记忆一致:NOOP

第四步:Read(读取)

每次对话开始时:

  1. 先检索长期记忆,取相关度最高的 5 条
  2. 格式化后注入系统 Prompt
  3. 拼接短期记忆(最近 N 轮对话)
  4. 发送给 LLM 生成回答

这四步构成一个闭环,每次对话既消费记忆,又产生新的记忆。

理解了这套完整的设计体系,回到面试场景,就能把面试官的每一层追问都接住。

面试怎么答 Agent Memory 设计?

回到面试场景,如果面试官问你"Agent 的 Memory 模块怎么设计",可以按这个框架回答:

第一层:分类

“我们把记忆分三类,参考认知科学的语义记忆、情节记忆、程序性记忆。语义记忆是通用知识,对所有用户共享,存知识库;情节记忆是用户专属的历史信息,按用户 ID 隔离存储;程序性记忆是操作规则,直接固化为系统 Prompt。”

第二层:架构

“架构上分短期和长期两层。短期记忆是当前对话的上下文窗口,用滑动窗口保留最近 10 轮;长期记忆存在向量数据库里,我们用 Milvus,按用户 ID 分区,支持语义检索。”

第三层:管理

“写入时用 Mem0 框架的四种操作——ADD/UPDATE/DELETE/NOOP,写入前先做语义去重,比较新信息和现有记忆的相似度,超过 0.85 判断为同一实体需要更新,避免同一信息的矛盾版本并存。时效性信息加 TTL 字段,定时清理。”

第四层:检索

“每次对话开始时,先按用户 ID 过滤,再做向量相似度检索,取相关度最高的 5 条,格式化后注入系统 Prompt。”

第五层:合规

“金融场景下还要考虑被遗忘权,实现方式是软删除加审计日志——业务查询屏蔽已删除记忆,但审计日志保留用于合规审查。”

这五个层次说完,面试官想追问的点基本都覆盖了。

在理解这套体系的过程中,还有一个概念上的混淆需要特别说清楚,它会影响你在面试中的表达精确度。

一个常见误区

最后说一个我见过很多人踩的坑:把 Memory 和 RAG 混为一谈。

RAG(检索增强生成)是从知识库里检索文档来回答问题,检索的是通用知识内容。

Memory 是存储和检索用户专属的历史信息,检索的是与特定用户相关的个性化记忆。

两者的区别很清晰:RAG 处理的是"世界知道什么",Memory 处理的是"我知道关于这个用户什么"。

在"拓业智询"里,这两个模块并存:

  • 用户问"贷款利率是多少" → RAG 从产品知识库里检索回答
  • 用户问"我上次咨询的那个方案怎么样了" → Memory 从用户历史记录里检索上下文

两者都需要,功能不重叠,不能相互替代。

把这个区分讲清楚,整套 Memory 设计的轮廓就完整了,用三个维度做个收尾。

总结

Agent Memory 系统的设计,可以用三个维度来概括:

第一个维度是分类——区分语义记忆、情节记忆、程序性记忆,对应不同的存储位置和检索策略;

第二个维度是架构——短期记忆用滑动窗口管理当前对话,长期记忆用向量数据库按用户 ID 分区存储;

第三个维度是管理——写入时做冲突检测(ADD/UPDATE/DELETE/NOOP),过期信息用 TTL 自动清理,用户注销时软删除保留审计。

面试官问的"存在哪、怎么检索、什么时候更新、什么时候删除",这四个问题的答案都在这个框架里。

最后

2026 年春节前后,国内大模型迎来史无前例的集体爆发与同台竞技。短短不到一个月,主流厂商几乎全部登场:字节跳动 Seedance 2.0 刷屏科技圈,各大互联网公司纷纷推出 AI 红包新玩法,一场场精心准备的 “大模型春晚” 轮番上演,吸引无数 AI 爱好者围观喝彩👏。

大模型赛道竞争如此激烈,普通人到底该怎么入局,抢占未来 10 年的行业红利?

如果你还不知道从何开始,我特别整理了一套全网最全、最细的大模型零基础教程。我也是一路自学走过来的,太清楚小白前期学习的痛点:没人带、没方向、没资源,真的很难学进去!

下面这套资料,就是我专门为零基础、想转行、想提升的同学准备的全套学习方案。图片

👇👇扫码免费领取全部内容👇👇

在这里插入图片描述

资料包分享

1、大模型完整学习路线图

在这里插入图片描述

2、从 0 到进阶大模型视频教程

从入门到实战,全套视频都整理好了,跟着学效率更高

在这里插入图片描述

3、入门必看:精选书籍 & 核心文档(PDF 版)

市面上技术书太多,我已经帮你筛选出最值得看的一批,还有大量补充资料不在图里,一并打包给你
在这里插入图片描述

4、 AI大模型最新行业报告

2026 年最新行业报告,系统分析各行业现状、趋势、痛点与机会,帮你看清:哪些行业最适合落地大模型,哪里才有真正的机会。

img

5、面试试题/经验

img

【大厂 AI 岗位面经分享(107 道)】

img

【AI 大模型面试真题(102 道)】

img

【LLMs 面试真题(97 道)】

img

6、大模型项目实战&配套源码

img

适用人群

在这里插入图片描述

四阶段学习规划(共90天,可落地执行)
第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范
  • …
第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署
  • …
第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建
  • …
第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型

  • 带你了解全球大模型

  • 使用国产大模型服务

  • 搭建 OpenAI 代理

  • 热身:基于阿里云 PAI 部署 Stable Diffusion

  • 在本地计算机运行大模型

  • 大模型的私有化部署

  • 基于 vLLM 部署大模型

  • 案例:如何优雅地在阿里云私有部署开源大模型

  • 部署一套开源 LLM 项目

  • 内容安全

  • 互联网信息服务算法备案

  • …

    👇👇扫码免费领取全部内容👇👇

    在这里插入图片描述

3、这些资料真的有用吗?

这份资料由我和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理,现任上海殷泊信息科技CEO,其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证,服务航天科工、国家电网等1000+企业,以第一作者在IEEE Transactions发表论文50+篇,获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。

资料内容涵盖了从入门到进阶的各类视频教程和实战项目,无论你是小白还是有些技术基础的技术人员,这份资料都绝对能帮助你提升薪资待遇,转行大模型岗位。
在这里插入图片描述
在这里插入图片描述

这份完整版的大模型 AI 学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费】

在这里插入图片描述

第一章 EB安装 1.DemoWorkspace 是基于EB当前组件配置下的例程,包含了启动文件和中断服务函数以及组件demo。2.Mclsar 下存放的是EB的插件包和静态MCAL的驱动文件。 阅读详情

相关推荐

【Godot】构建可维护的游戏工程 —— 项目代码组织结构

本文系统梳理了Godot引擎项目组织原则与架构模式,提出场景中心化、命名规范一致性和资源隔离三大核心原则。推荐按功能模块划分目录结构(如scenes/、entities/、systems/),采用snake_case命名避免跨平台问题,并通过.gdignore优化资源管理。文章详细解析了自包含场景设计、信号驱动解耦等架构技巧,以及团队协作中的版本控制策略,强调通过模块化设计平衡一致性与实用性。最终目标构建清晰可维护的项目结构,使资源定位和功能扩展更加高效。(148字)

qq_40205510的博客 1175

收藏 | Agent记忆模块设计:从“能用“到“好用“的核心思路与实战架构

本文深入探讨了Agent记忆模块的设计要点,将记忆分为工作、情景、语义和程序四类,并阐述了各自的存储与检索策略。提出记忆写入应遵循"感知→判断→提炼→存储"流程,检索则需结合时近性、相关性、重要性三维评分模型。文章还介绍了记忆的反思与整合机制,如反思提炼语义记忆、记忆合并去重、主动遗忘等,并给出三层落地架构:L1工作记忆层(Context Window)、L2近期记忆层(Redis)、L3长期记忆层(向量数据库+关系型数据库)。最后讨论了记忆粒度、个性化与隐私、可信度等工程取舍问题。

大模型教程的博客 291

Vivado与VCS+Verdi联合仿真环境搭建全攻略

本文详细介绍了如何搭建Vivado与VCS+Verdi联合仿真环境,旨在解决Vivado Simulator在大型FPGA验证中速度慢、调试弱的问题。通过指导工具版本配对、环境变量设置、关键参数配置及Xilinx仿真库编译,帮助工程师高效整合Vivado的设计管理、VCS的高速仿真与Verdi的深度调试能力,从而显著提升验证效率。

weixin_29219189的博客 577

Memory 模块详解:构建不会忘事的 Agent 系统架构与长期记忆机制设计

在 Foundation Agent 架构中,Memory 模块不仅是“上下文缓存器”,更是智能体实现身份持续、任务连贯、自我演化的根基。从短期记忆到长期知识,从检索机制到记忆压缩,从 Memory Router 到跨任务记忆迁移,Memory 模块的设计决定了智能体是否具备持续对话能力、是否能记住过去失败、是否能整合外部知识与行为经验。本文将系统拆解 Memory 模块的分类、核心能力、典型结构、开源实现路径,并提供一个可落地的“Agent Memory 架构五步搭建指南”,帮你构建一个真正不会“失忆”的

努力分享一些人工智能、计算机视觉、影像等相关的知识干货! 1685

自动驾驶仿真(五)—— 基于Carsim、Prescan、Simulink的联合仿真

自动驾驶仿真五——基于Carsim、Prescan、Simulink的联合仿真1. 联合仿真流程2. CarSim联合仿真配置要点3. Prescan联合仿真配置要点4. Carsim、Prescan、Simulink联合仿真结果5. 参考学习的书目教材 博主前面的博文已经介绍了Carsim和Prescan各自与Matlab/Simulink的相关联合仿真应用实例,并且论述过几款软件各自的优势及用法,CarSim适合动力学模型的建立,PreScan适合行车场景的搭建,Simulink适合控制算法的设计及信号

zhudj08的博客 1万+

嵌入式八股文-ARM

嵌入式八股文总结(ARM篇)-优快云博客现象:I2C死锁就是时钟线SCL一直处于高电平,数据线SDA一直处于低电平。从机拉低数据线SDA时(发送应答信号给主机时或发送数据0时)主机意外复位,主机复位后时钟线SCL就为高电平了,此时,SCL为高电平而SDA为低电平,主机就以为有其他设备占有了总线,而SCL为高电平时 数据位SDA不允许有变化,意思是:主机就一直等待时钟线SDA拉高,而从机就一直等待时钟线SCL拉高 就造成了死锁的现象。解决方法:1.选择带有复位功能的从设备,复位后SDA被拉高。

m0_63127436的博客 1259

【爆肝干货】Agent记忆系统全拆解:从原理到实战,一篇搞定记忆模块的N种实现方式“

Agent记忆模块分为短期记忆(维护上下文连续性)和长期记忆(提供知识持久性)。短期记忆通过上下文缓存实现,长期记忆依赖向量数据库和检索机制。工程实现需考虑存储方式、记忆内容选择和更新策略,采用"短期上下文+长期检索"混合策略。记忆模块让AI从短期对话机器人进化为持续智能体,成为Agent的核心能力之一。

m0_59164520的博客 1680

【小白深度教程 1.3】使用 BP-Net 深度补全网络,进行 KITTI 稠密点云和图像融合(Depth Completion 实战)

在上一节中,我们展示了如何将从激光雷达获取的稀疏点云(深度)映射到图像。因此这篇论文我们尝试使用 Depth Completion(深度补全)技术,来将稀释的点云深度,补全为稠密深度。

2401_87064292的博客 1199

Agent 智能体的架构设计

大家好,我是玄姐。正文开始之前,先给我自己打个广告,双12超级活动,原价199元的《3天 AI Agent 智能体项目实战直播训练营》,为了回馈粉丝们的支持,直接降价到19元,今天再开放一天报名特权,仅限99名,按照这个速度,估计一会就能抢完,抢完之后立刻涨价到 199 元!回到正题。Agent 智能体的架构设计由以下4个关键模块构成:身份识别模块(Profile):该模块的主要功能是对Agent...

musicml的博客 1644

【2025年华为秋招(AI)-11月19日-第二题(200分)- 终端款型聚类识别】(题目+思路+Java&C++&Python解析+在线测试)

该摘要总结了题目要求、输入输出格式、KMeans算法的实现步骤以及关键点。以下是150字内的摘要: 本文提出基于KMeans算法对终端型号进行聚类的方法。通过包间隔时长、连接持续时长、漫游前后信号强度4个特征,使用欧氏距离度量相似度。算法采用固定初始化策略(前k个样本作为初始质心),经过分配-更新迭代,直至质心移动小于1e-8或达到最大迭代次数。最终输出各簇样本数并按升序排列,解决了终端型号自动分类问题。示例显示该方法能有效识别3-4类终端,并准确统计每类数量。

m0_73659489的博客 141

使用modelscope加载报错:ImportError: cannot import name ‘AutoTokenizer’ from ‘modelscope’...如何解决?| 提供多种解决方案

🏆本文收录于 《全栈Bug调优(实战版)》 专栏,该专栏专注于分享我在真实项目开发中遇到的各类疑难Bug及其深层成因,并系统提供高效、可复现的解决思路和实操方案。无论你是刚入行的新手开发者,还是拥有多年项目经验的资深工程师,本专栏都将为你提供一条系统化、高质量的问题排查与优化路径,助力你加速成长,攻克技术壁垒,迈向技术价值最大化与职业发展的更高峰🚀!

**My Coding Family** 1243

面试必问!AI Agent记忆模块设计全攻略:让大模型不再“失忆“,小白也能秒变专家!

记忆模块的核心价值: 让模型具备“长期状态感”,从短期问答进化为真正的 Agent。两类核心机制: 短期记忆保上下文一致性,长期记忆保知识持续性。实现关键: 存储(Vector Store)+ 检索(Retrieval)+ 更新(Summarize)。工程取舍: 灵活与效率、容量与可控之间永远是平衡问题。面试启发: 会讲原理没用,能解释“为什么这样设计”才显得懂工程。

m0_59235945的博客 1035

【HYSPLIT 教程第二期】Inline WRF-HYSPLIT 耦合

【HYSPLIT 教程第二期】Inline WRF-HYSPLIT 耦合

WW、forever的博客 809

小白程序员必看:收藏这份 Agent 记忆模块实战指南(附面试技巧)

记忆模块的核心价值: 让模型具备“长期状态感”,从短期问答进化为真正的 Agent。两类核心机制: 短期记忆保上下文一致性,长期记忆保知识持续性。实现关键: 存储(Vector Store)+ 检索(Retrieval)+ 更新(Summarize)。工程取舍: 灵活与效率、容量与可控之间永远是平衡问题。面试启发: 会讲原理没用,能解释“为什么这样设计”才显得懂工程。

xxue345678的博客 1122

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

小白程序员必看:收藏这份AI Agent开发进阶指南,轻松拿大厂Offer!

2026年技术圈的分化愈发明显:降薪裁员潮持续蔓延,传统开发、测试等岗位大批缩水,不少从业者陷入职业焦虑;与之形成鲜明对比的是,AI大模型相关岗位迎来疯狂扩招,薪资逆势飙升150%,大厂更是直接开出70-100W年薪,疯抢具备实战能力的大模型人才,甚至放宽年龄限制,只求能快速落地技术、创造价值!1、窗口期红利,入门门槛友好:不同于成熟赛道的“内卷式招聘”,2026年大模型人才缺口巨大,简历只要达标(掌握基础AI应用+具备简单项目经验),年龄、学历均非硬性要求,小白可快速入门,转行程序员也能无缝衔接;

python12345_的博客 426

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

2026春招必备!收藏这份大模型Agent面试攻略,小白也能快速入门

对于正在迷茫择业、想转行提升,或是刚入门的程序员、编程小白来说,有一个问题几乎人人都在问:未来10年,什么领域的职业发展潜力最大?答案只有一个:人工智能(尤其是大模型方向)当下,人工智能行业正处于爆发式增长期,其中大模型相关岗位更是供不应求,薪资待遇直接拉满——字节跳动作为AI领域的头部玩家,给硕士毕业的优质AI人才(含大模型相关方向)开出的月基础工资高达5万—6万元;即便是非“人才计划”的普通应聘者,月基础工资也能稳定在4万元左右。

xxue345678的博客 662

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

小白程序员必备:收藏这份AI Agent开发进阶指南,轻松拿下高薪Offer!

如果说程序员已经是高薪职业,那么干AI的程序员,就是高薪中的高薪。学AI大模型,就是冲刺高薪的最优解!零基础小白不知道从哪入门?有基础的程序员找不到系统学习路径?实战项目练手无门?面试不知道考什么?别慌!今天就给大家整理了一份【2026年最新版】AI大模型免费学习资源包,覆盖从入门到实战、从理论到面试、从基础到进阶的全流程,所有资料均已整理归档,无冗余、无套路,免费分享给每一位想抓住AI风口的程序员和小白!👇👇扫码免费领取全部内容👇👇1、大模型系统化学习路线。

AI大模型的博客 391

收藏!小白程序员入门大模型必看:从零基础到拿到字节、阿里、小红书Offer的AI Agent面试全解析

本文作者分享了自己从零基础接触AI,通过学习和面试准备,成功拿到字节、阿里、小红书等大厂offer的经验。文章涵盖了AI Agent面试中的常见问题,包括模型层、开发框架层、调优层等关键知识点,并详细介绍了如何通过刷题、优化简历、掌握核心技术(如Java并发、JVM等)来提升面试竞争力。此外,还重点讲解了面试心态调整和表达技巧,强调逻辑性和全面性在回答复杂问题时的重要性。对于想进入AI领域的小白程序员来说,这是一份极具参考价值的面试指南。

优快云_430422的博客 794

小白程序员必看:收藏这份AI Agent开发最简学习路线,轻松入行大模型赛道!

循环、分支、多智能体分工问题。

weixin_59191169的博客 330

收藏!Java后端转AI Agent全攻略|小白/程序员入门大模型必看

不管你是Java后端想转AI应用,还是学生党想入门大模型,都不用焦虑——2026年AI风口已来,各行各业的AI渗透肉眼可见,超多公司要么转型做AI相关产品,要么高薪挖AI技术人才,机遇就摆在眼前。技术没有边界,只有不想往前走的人。看不清未来的时候,就低头赶路;不知道从哪开始,就从基础抓起。就算暂时不打算转岗,了解大模型、RAG、Prompt、Agent这些热门概念,能上手做简单项目,也绝对是求职加分王🔋。

AI大模型的博客 994

Agent入门指南:从零到精通,收藏这份学习资料!

如果说程序员已经是高薪职业,那么干AI的程序员,就是高薪中的高薪。学AI大模型,就是冲刺高薪的最优解!零基础小白不知道从哪入门?有基础的程序员找不到系统学习路径?实战项目练手无门?面试不知道考什么?别慌!今天就给大家整理了一份【2026年最新版】AI大模型免费学习资源包,覆盖从入门到实战、从理论到面试、从基础到进阶的全流程,所有资料均已整理归档,无冗余、无套路,免费分享给每一位想抓住AI风口的程序员和小白!👇👇扫码免费领取全部内容👇👇1、大模型系统化学习路线。

m0_48891301的博客 961

小白程序员必收藏:轻松入门AI Agent开发,校招高薪岗位等你来!

2026 年一晃已经过半,AI 大模型的热潮不仅没有降温,反而持续升温!金融行业用大模型做风控、医疗依靠 AI 解析影像,电商、制造、教育各行各业,都在把 AI 融入日常业务。曾经热闹的 “百模大战”,早就告别单纯比拼模型参数,正式进入落地应用时代。懂业务、懂 AI、能做出可上线项目的大模型开发工程师,岗位缺口大,薪资待遇十分可观。风口再好,不如手握高薪 offer 实在。行情火热,普通人、程序员该怎样从零入门大模型,抓住这波机会?

大模型教程的博客 529

大模型求职必看:收藏这份2026年春招、实习、秋招及社招全攻略!小白程序员进阶指南

本文针对大模型行业求职者,梳理了2026年春招、27届暑期实习、秋招及26届社招的时间节奏与求职策略。强调春招机会不容小觑,建议尽早上岸;暑期实习是积累经验的关键,有助于秋招竞争力提升;秋招需把握提前批与高峰期,保持耐心与心态;社招更注重技术深度与实际落地能力,建议关注Memory机制、Function Call、RAG系统、Agent架构等方向。文章旨在帮助求职者理清节奏,减少焦虑,提升求职成功率。

2401_85373691的博客 1320

小白程序员必备:收藏这份AI Agent应用开发进阶指南,轻松入行大模型赛道!

很多正在择业、考虑转行提升,或是刚入门的开发者、编程新手,都会关心一个问题:未来几年,哪些技术方向更值得长期投入?从行业趋势来看,人工智能尤其是大模型相关方向,依然是增长最快、人才需求最集中的领域之一。随着企业数字化、智能化升级,相关岗位的需求持续增加,对有实战能力的开发者也更加友好。对于想系统了解大模型、希望抓住AI行业机会的同学来说,提前搭建完整知识体系、掌握可落地的实战技能,会比盲目自学效率高很多。

AI大模型的博客 156

小白程序员必看:轻松掌握 Agent Memory,让大模型更智能高效

Agent Memory 是 Agent 的可管理记忆,并非简单保存聊天记录,而是对信息进行筛选、分类、更新和删除。它解决持续使用问题,如记住用户偏好、工单进度等,并与上下文窗口区分。文章强调 Memory 的分层管理和控制,避免信息混用导致效率低下,并提供检查表帮助落地实践。图注:从左到右看:信息先进入候选区,再按生命周期分到四类记忆,最后由写入、召回、更新、遗忘控制。一句话判断:Agent Memory 的关键不是把聊天记录永久保存,而是把“当下要用的信息”和“以后值得复用的经验”分开管理。

kaka0722ww的博客 229

AI Agent 学习路线图:小白程序员必备,收藏这份超全 Todo List

Part 3、工程化:让 Agent 真的能用。

youmaob的博客 465
上一篇: 收藏 | 从零入门大模型推理部署:vLLM、SGLang、TensorRT-LLM、Ollama、XInference等主流框架深度解析
下一篇: 收藏!AI大爆发时代,零基础小白也能抓住的AI落地机遇
冻感糕人~
博客等级 码龄3年 8926粉丝 2384原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值