自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(89)
  • 收藏
  • 关注

原创 【LLM开发实验】Git 与团队协作学习笔记

Git是分布式版本控制系统,由Linus Torvalds为管理Linux内核开发而创建,核心优势在于快、分布式、支持大规模协作。它通过存快照、内容寻址(SHA-1)和三大区域(工作区、暂存区、仓库)实现高效版本管理。日常使用仅需掌握git clone、status、add、commit、push、pull、switch等八条命令。冲突源于多人修改同一文件相同区域,需手动解决,关键在理解ours与theirs的反转逻辑。团队协作推荐使用合并请求(MR),强制代码审查与CI验证,结合Squash合并保持主干整

2026-09-12 17:11:11 327

原创 【LLM开发实验】FastAPI 学习笔记

1. [FastAPI 是什么](#1-fastapi-是什么)+2. [路由分发机制(核心)](#2-路由分发机制核心)+3. [路径参数 & 查询参数](#3-路径参数--查询参数)+4. [增删改查 CRUD](#4-增删改查-crud)+5. [连接 MySQL(SQLAlchemy 集成)](#5-连接-mysqlsqlalchemy-集成)+6. [SQLAlchemy 核心机制](#6-sqlalchemy-核心机制)+7. [实战项目解析:04_sqlalchemy(部门/员工)

2026-09-05 17:44:41 358

原创 【LLM开发实验】Docker介绍

Docker 镜像基本知识容器化提供了一种有效方法来打包和隔离机器学习 (machine learning)应用程序,解决了依赖冲突等常见问题,并确保了不同环境之间的一致性。实现这一点的核心组成部分是 Docker 镜像。什么是 Docker 镜像?Docker 镜像是一个轻量、独立、可执行的软件包,包含运行软件所需的一切:代码、运行时(如 Python)、系统工具、系统库和配置。它是一个只读模板。当您想运行镜像定义的软件时,会创建一个 容器,它本质上是该镜像的一个运行实例。

2026-08-31 23:35:52 362 1

原创 【LLM开发实验】Anaconda 入门指南:介绍、Ubuntu 安装、Jupyter远程连接与 PyCharm 使用

1.1 什么是 AnacondaAnaconda 是一个面向数据科学 / 机器学习的 Python 发行版,核心卖点是"开箱即用":自带一个 Python 解释器(安装时可选 3.11 / 3.12 等版本)预装 250+ 常用科学计算包:numpy、pandas、scikit-learn、matplotlib、jupyter 等内置 conda 包管理器:既能装 Python 包,也能管理 Python 版本和环境附带 Anaconda Navigator 图形界面:点鼠标就能管理环境、启动

2026-08-31 10:42:37 396

原创 【LLM开发实验】监督微调实验详解

原始语料 ──预训练──▶ Base模型(知识渊博但不会聊天) │ ▼ SFT(本代码所在阶段) Chat模型(会聊天,但可能不够"讨喜") │ ▼ DPO/RLHF(day05 的 2-DPO.py 所在阶段) 对齐模型(安全、有用、符合人类偏好

2026-08-28 22:02:37 335

原创 【LLM开发实验】LLM推理基本介绍

显存需求估算:参数量经验法则估算运行大型语言模型(LLM)所需的硬件可能看起来很复杂。一个直接的估算方法可以简化这一过程。决定内存需求的最主要因素,特别是图形处理单元(GPU)的显存(VRAM),是模型本身的规模,由其参数 (parameter)数量衡量。可以把模型中的每个参数看作一个数字,需要存储在某个可用于计算的位置。由于GPU是运行LLM的主要计算设备(如第二章所述),这些参数主要加载到GPU的专用内存——显存中。每个参数占用多少空间?这取决于存储时使用的精度或数据类型。常见的精度类型包含:

2026-08-27 20:22:04 183

原创 【LLM开发实验】强化学习实现原理及实战

强化学习 (reinforcement learning)人类反馈(RLHF)是一种旨在解决对齐 (alignment)难题并克服纯监督方法局限性的标准流程。这种多阶段方法旨在引导大型语言模型(LLMs)生成更符合人类偏好和指示的输出。它通常包含三个不同阶段:

2026-08-25 23:34:32 338

原创 【LLM开发实验】 QLoRA实现原理及实战

虽然标准LoRA大幅减少了可训练参数 (parameter)的数量,但微调 (fine-tuning)大型语言模型仍构成主要的内存难题。主要瓶颈通常不是适配器权重 (weight)本身,而是加载庞大基础模型并进行计算所需的内存。即使模型被冻结,基础模型的权重(通常为FP16或BF16等16比特格式)也会占用大量GPU内存。此外,在前向和反向传播 (backpropagation)过程中计算的激活值会显著增加内存占用,这使得在没有高端多GPU配置的情况下,微调亿级参数模型通常不可行。

2026-08-23 22:17:00 373

原创 【HCIE-AI】2.大模型预训练理论(学习笔记)

本文系统性地解析了预训练模型的核心原理与技术框架。主要内容包括:1. 预训练模型的三层理解框架:范式层面(预训练-微调两阶段)、架构层面(Transformer核心结构)、工程层面(PyTorch/Transformers等工具链)2. GPT的预训练机理:通过海量"猜词"任务迫使模型压缩存储语言规律,将文本中的语法、事实、逻辑等知识编码到参数中,规模效应引发智能涌现3. 学习过程的微观理论:前向传播-反向传播-参数更新的三步循环,知识以梯度累积方式写入权重矩阵4. 上下文窗口的四大制约

2026-08-17 23:06:29 408

原创 【HCIE-AI】3.分词到词嵌入 学习笔记

文章摘要 分词是NLP预处理的核心步骤,将文本转化为数字序列供模型处理。其演进分为三代:1)词典匹配依赖人工词典,OOV处理差;2)统计机器学习(如HMM/CRF)通过序列标注解决新词问题,但语义表达不足;3)子词分词(BPE/WordPiece/Unigram)成为主流,平衡词表大小与OOV,通过合并高频子词实现灵活切分(如“lowest”→low+est)。子词分词支持小词表(几万)覆盖海量词汇,新词可拆解为已知子词。后续通过Embedding矩阵将Token映射为向量,再经Transformer编码生

2026-08-13 22:06:04 378

原创 【HCIE-AI】4.NLP 核心任务与技术演进学习笔记

本文系统梳理了自然语言处理(NLP)的技术演进历程,核心内容可分为三部分: NLP四大核心任务框架 文本分类:整体语义映射到类别标签(如情感分析) 序列标注:对每个token打标签(如分词、命名实体识别) 信息抽取:从文本提取结构化信息(如知识图谱构建) 文本生成:自回归式逐词预测(如机器翻译) 三代技术演进历程 统计时代(1950-1990s):基于n-gram的频次统计,面临数据稀疏问题 机器学习时代(1990-2010s):特征工程+浅层模型(SVM/CRF),依赖人工设计 深度学习时代(2013至今

2026-08-13 21:51:35 515

原创 【HCIE-AI】12.deepspeed分布式并行训练进阶版

大模型训练核心技术与选型指南 摘要:大模型训练面临显存、计算、通信和工程四大瓶颈。针对显存问题,ZeRO优化器通过分级分片(优化器状态/梯度/参数)显著降低显存占用;计算瓶颈采用数据并行提升吞吐,张量并行(层内拆分)和流水线并行(层间拆分)解决单层或整体模型过大问题;通信优化通过ZeRO++量化、分层分片等技术降低跨节点通信开销。综合方案推荐3D并行(DP+TP+PP),配合虚拟流水线、梯度累积、FlashAttention等技术。模型规模与硬件配置决定技术选型:7B以下单卡+DDP,7B-70B采用ZeR

2026-07-25 17:14:18 339

原创 【HCIE-AI】11.模型 昇腾迁移适配-精度调试-性能调优

昇腾AI迁移与适配综合指南 本文系统介绍了PyTorch模型从NVIDIA GPU迁移到华为昇腾NPU的全流程技术方案,涵盖三大核心板块: 迁移适配 提供torch.cuda到torch.npu的API对照表,推荐零侵入替换策略 解析常见陷阱:DataParallel不兼容、pin_memory禁用、自定义CUDA算子需重写为TBE/DSL 分布式训练需切换后端为hccl,调整HCCL环境变量优化通信 精度调试 分析三大精度差异来源:算子实现、数据类型、随机性 提供逐层比对工具与方法,包括Hook捕获、官方

2026-07-25 16:35:04 355

原创 【HCIE-AI】10.昇腾 模型迁移分析

昇腾NPU迁移分析工作指南 摘要:本文档详细介绍了从GPU平台迁移到昇腾NPU平台的全流程分析方法。主要内容包括: 前置工作:建立GPU基线(精度/性能指标),搭建昇腾环境并验证基础功能 核心分析: 使用msFmkTrans工具扫描API兼容性(支持/部分支持/不兼容) 检查三方库(如transformers/deepspeed)适配情况 动态Shape识别与优化建议 亲和API替换建议(性能提升20%+的优化机会) 工具链:涵盖静态分析(msFmkTrans)、运行时验证(Shape Dump)、性能分析

2026-07-24 20:51:58 307

原创 【HCIE-AI】9.分布式并行计算算法优化

模型小 → 数据并行模型大但单层放得下 → ZeRO 分片模型单层放不下 → 张量并行模型层数太多 → 流水线并行序列太长 → 序列并行现实世界 → 全都要(混合并行)

2026-07-19 17:06:32 367

原创 【HCIE-AI】8.Transformer 架构详解

本文详细解析了Transformer架构的核心原理与关键组件,重点包括: 架构本质:采用Attention机制+并行计算,突破RNN的序列处理限制; 核心组件:自注意力机制(计算词间关联)、多头注意力(多维度分析)、位置编码(注入顺序信息)、前馈网络(知识内化)等7大模块; 工作流程:以"我爱学习"为例展示Encoder的数据处理过程; 架构变体:对比Encoder-only、Decoder-only和Encoder-Decoder三种模式; KV缓存:详解推理加速技术,分析其&quot

2026-07-13 00:30:00 245

原创 【HCIE-AI】7.Tokenizer 详解

Tokenizer详解:文本与数字的桥梁 Tokenizer的核心任务是将文本转换为模型可处理的数字(Token IDs),主要解决三个问题:切分粒度(词/字符/子词)、词表大小和未登录词(OOV)处理。主流方法包括: Word-level:按单词切分,词表庞大且易遇OOV问题; Char-level:按字符切分,词表极小但序列过长,语义稀疏; Subword(主流):平衡两者,如BPE算法(GPT/LLaMA采用),通过合并高频相邻字符对构建词表,兼具语义完整性和OOV处理能力。 BPE优势:词表可控、无

2026-07-12 11:00:00 394

原创 【HCIE-AI】6.微调数据构造方法

范式一:从种子指令生成└─ 少量种子 + 教师模型 → 大规模扩增范式二:自我改进循环└─ 模型自己生成 → 自己评价 → 自己改进范式三:从教师模型蒸馏└─ 强模型生成数据 → 弱模型学习范式四:从真实数据提取└─ 用户真实交互 / 人工标注。

2026-07-12 01:00:00 474

原创 【HCIE-AI】5.数据类型详解

训练精度演进路线:│┌─── BF16 (A100+, 首选)││└─── FP8 (H100+ 推理)精度 ← 效率。

2026-07-11 09:11:23 515

原创 [智能对话系统架构设计文档]

本文档详细介绍了基于LangGraph和LangChain的智能对话系统Agent框架架构设计,重点阐述了从传统Chatbot到智能Agent的范式转变。框架采用分层设计,包含以下核心模块: 感知层:通过LLM将用户输入转化为结构化指令(Command对象),而非直接生成文本回复 规划层:通过PolicyEnsemble实现确定性策略与AI弹性的混合决策,使用YAML定义业务流程 工具层:采用注册表机制实现插件化Action管理,支持动态加载和独立测试 记忆层:构建层次化记忆系统(Tracker/Dialo

2026-07-11 07:57:37 377

原创 基于主管模式

(yes/no): ")"messages": [{"role": "user", "content": "监控CEO张三的舆情,关注财务相关话题"}]"ceo": {"name": "张三", "title": "CEO", "priority": "P0"},"cfo": {"name": "李四", "title": "CFO", "priority": "P1"},"cto": {"name": "王五", "title": "CTO", "priority": "P1"}

2026-05-18 13:14:14 211

原创 【大模型vLLM 使用】学习笔记

微调不是为了训练,是为了用。LLaMA-Factory 给你一个补丁,vLLM 把你的补丁变成服务。

2026-05-17 11:26:20 436

原创 [大模型LoRA微调]学习笔记

LLaMA-Factory 基本都收录了这些新方法,学会它之后改一行配置就能试用。微调 = 好基座 + 好数据 + QLoRA + 迭代评估不需要理解梯度下降、反向传播,也能做出有效的微调模型。

2026-05-17 10:41:54 711

原创 【LangGraph 多 Agent 编排详解】学习笔记

单 Agent 的能力有限——一个 Agent 只能持有有限的工具集。当业务场景涉及多个领域(如预订航班和预订酒店),就需要多个 Agent 协作。要素要求示例函数名见名知意,蛇形命名参数名语义清晰,LLM 能理解city参数类型使用类型注解strintList[str]docstring必须写(LLM 理解技能的依据)"""预订航班工具。..."""返回值返回可读的字符串"成功预订了..."操作API创建单 Agent创建 Supervisor自定义移交定义 Skill。

2026-05-16 08:30:40 615

原创 【LangGraph 状态持久化(Checkpoint)详解】学习笔记

LangGraph 默认情况下,每次invoke()执行完毕后,State 就销毁了。但很多场景需要跨调用保留状态场景需求多轮对话AI 记住上一轮聊了什么工作流断点续跑某步骤失败后,从失败点继续状态审计查看每一步的中间状态回滚/分支回到历史状态重新执行LangGraph 通过Checkpointer(检查点保存器)实现状态持久化。核心 API:# 编译时指定 checkpointer​# 配置 thread_id(会话 ID)​。

2026-05-15 00:00:00 691

原创 【LangGraph 时间旅行(Time Travel)详解】学习笔记

摘要:时间旅行是LangGraph基于Checkpoint机制的高级功能,允许回到任意执行中间状态修改后继续执行,形成新分支。通过核心API(get_state_history、update_state、invoke)实现四个步骤:执行生成检查点、识别目标状态、修改状态、从新检查点恢复执行。典型应用包括人工纠错、A/B测试和调试,类似Git分支机制。示例展示了故事生成中修改角色后自动适配后续情节的能力,证明该功能在流程控制和状态管理方面的强大灵活性。

2026-05-14 00:30:00 395

原创 【LangGraph 流式输出(Streaming)详解】学习笔记

会一次性返回完整结果。但如果图执行时间很长(如调用大模型),用户需要实时看到中间进度而不是等待最终结果。LangGraph 提供方法,支持多种流模式,让调用方可以逐块接收执行过程中的数据:invoke() 模式: 用户输入 → [等待...] → 最终结果stream() 模式: 用户输入 → 步骤1 → 步骤2 → ... → 最终结果↑ 每一步都可以实时获取values和updates都只在节点执行完毕后才输出。

2026-05-13 07:00:00 565

原创 【LangGraph 子图(Subgraph)详解】学习笔记

在 LangGraph 中,一个编译好的StateGraph不仅可以独立执行,还可以作为另一个图的节点使用。这种用法称为子图(Subgraph)。父图(Parent Graph)│ │ 子图内部逻辑 │ │parent_messages: list # 与子图共享的数据​parent_messages: list # 与父图共享的数据(字段名相同!sub_message: str # 子图私有数据(父图中不存在的字段)

2026-05-10 15:48:58 473

原创 【LangGraph的工作流编排能力】学习笔记

LangGraph三大特殊API详解:Command、ContextSchema和Send分别解决了状态流程控制、运行时依赖注入和动态并行分支三大核心问题。Command通过统一返回值实现状态更新与流程跳转的原子操作,适用于中心化路由场景;ContextSchema支持安全注入敏感配置和运行时依赖;Send则实现了Map-Reduce模式的动态并行处理。这三个API共同扩展了LangGraph的能力边界,使其从静态流程图升级为支持运行时自适应的动态图系统,可组合应用于复杂的工作流编排、多Agent系统和批量

2026-05-10 10:24:03 604

原创 【LangChain 工具调用详解】工具篇

​@tool"""两个整数相加"""​# 调用工具​# 查看工具元信息print(f"{add_number.description=}") # add_number.description='两个整数相加'print(f"{add_number.args=}") # 参数字段定义更清晰的参数描述更好的类型验证支持默认值、默认值校验等高级功能"""..."""pass工具调用要点概念说明@tool 装饰器将函数定义为 LangChain 工具。

2026-05-07 18:45:00 509

原创 【LangChain 记忆系统】记忆篇

本文介绍了LangChain中的记忆系统实现方案,主要包括三种方法:基础方案使用InMemoryChatMessageHistory实现内存存储,简单但无持久化;进阶方案通过RunnableWithMessageHistory自动管理对话历史,支持多会话;持久化方案采用RedisChatMessageHistory实现跨会话记忆存储。这些方案解决了大语言模型无状态的问题,使对话系统能够记住上下文,其中Redis方案最适合生产环境。开发者可根据场景需求选择不同方案,从开发调试到分布式部署均可覆盖。

2026-05-06 07:00:00 768

原创 【LangGraph 基础详解】学习笔记

LangGraph是LangChain生态中的有状态多代理应用构建库,其核心思想是将业务逻辑建模为有向图,由节点(Node)和边(Edge)组成,数据以状态(State)在节点间流转。主要特点包括: 四大核心要素: State:共享数据容器(TypedDict字典) Node:处理函数,接收并更新State Edge:定义节点执行顺序 Graph:组装节点和边形成应用 关键机制: Reducer:控制状态更新策略(覆盖/追加/累加) 条件边:实现动态分支流程 节点重试:提升容错能力 缓存机制:优化性能 典型

2026-05-05 16:29:46 1523

原创 [LangChain Agent]Agent实战篇

本文详细介绍了LangChain框架中的Agent(智能体)技术,重点解析了其核心概念、ReAct推理模式、create_agent高级API使用方法,以及Agent-to-Agent(A2A)多智能体协作架构。文章通过三个实战案例(电商助手、天气查询助手和出行规划系统)展示了Agent的开发流程,对比了Agent与传统链式调用的优势,强调其动态决策、工具调用和循环推理能力。特别深入讲解了A2A架构设计原则、工具封装规范和常见问题解决方案,为开发者提供了从理论到实践的完整指导。附录包含关键概念速查表,帮助快

2026-05-05 15:58:40 681

原创 [Langchain网页抓取与天气查询实战]MCP篇

项目内容功能MCP 服务端提供工具,客户端由 LLM 自动判断调用哪个工具工具(网页抓取)、(天气查询)通信协议组件实现服务端极简版 MCP 服务类,无第三方依赖工具注册装饰器模式客户端LLM 自动判断工具调用工具描述动态生成 OpenAI function calling schema通信协议理解了 MCP 协议的基本工作原理掌握了 LLM Function Calling 的使用实现了 Tool 动态注册和调用机制为 LangChain Agent 开发打下基础。

2026-05-05 09:59:08 433

原创 【LCEL 链式调用详解】调用篇-2

摘要: LangChain LCEL(LangChain表达式语言)是一种声明式、函数式组合LangChain组件的语言,核心理念为“一切皆Runnable”。通过管道符|串联组件(如Prompt、Model、Parser),实现顺序链(RunnableSequence)。并行链(RunnableParallel)可同时执行多条子链并合并结果;分支链(RunnableBranch)根据条件动态选择执行路径;函数链(RunnableLambda)用于中间数据转换或调试。串行链通过Lambda转换实现多次LLM

2026-05-04 16:14:31 416

原创 [RAG 与文本向量化详解]RAG篇

本文深入解析了RAG(检索增强生成)技术的完整实现流程,从文本向量化原理到实际应用开发。主要内容包括:1. 文本向量化核心概念:详细讲解Embedding模型的工作原理、主流模型对比及余弦相似度计算方法;2. RAG全流程实现:涵盖文档加载、文本分割、向量存储、相似度检索等关键环节,并提供FAISS向量数据库的实战示例;3. LangChain开发实践:演示如何构建完整的RAG问答系统,包括链式调用、Prompt工程和结果优化;4. 典型问题解决方案:针对依赖安装、路径处理、模型配置等常见问题提供具体解决方

2026-05-04 16:09:58 814

原创 【LangChain Output Parser 输出解析器】输出篇

Output Parser 是 LangChain 中用于将大模型自由文本输出转换为结构化数据的工具。最简单、最基础的输出解析器。从结果中提取 content 字段转换为字符串输出。​# result 现在是字符串类型将大模型的自由文本输出转换为结构化 JSON 数据(dict 类型)。

2026-05-03 16:23:44 517

原创 【LangChain 多轮对话】记忆篇

本文介绍了LangChain实现多轮对话的核心方法。主要内容包括:1)多轮对话与单轮对话的区别,前者能记住历史上下文;2)对话历史管理,包括手动添加消息和使用MessagesPlaceholder占位符;3)多种记忆机制:BufferMemory完整保存历史、TokenBufferMemory控制token消耗、SummaryMemory自动总结、VectorStoreMemory语义检索;4)实战案例展示如何构建带历史记忆的对话系统,包括基础版、进阶版和生产版实现;5)常见问题解决方案,如处理长对话、理解

2026-05-03 16:17:07 474

原创 【LangChain Prompt 完整指南】提示词篇

LangChain Prompt 使用指南摘要 本文系统介绍了LangChain中Prompt的核心概念和使用方法: 消息类型:详细解析SystemMessage(系统角色定义)、HumanMessage(用户输入)、AIMessage(AI回复)和ToolMessage(工具返回结果)四种消息类型及其应用场景 模板构建: PromptTemplate用于生成格式化文本(字符串输出) ChatPromptTemplate支持多角色对话(消息列表输出) 进阶技巧:包括变量预绑定(partial)、对话历史管理

2026-05-03 15:22:04 515

原创 【LangChain 大模型6大调用指南】调用大模型篇

本文介绍了LangChain调用大模型的6种方式,分为同步和异步两类。同步调用包括普通调用(invoke)、流式调用(stream)和批量调用(batch);异步调用包含异步普通调用(ainvoke)、异步流式(astream)和异步批量(abatch)。文章详细说明了每种调用方式的特点、适用场景和代码示例,并比较了同步与异步调用的选择策略。此外,还介绍了三种核心消息类型(SystemMessage、HumanMessage、AIMessage)的作用及在多轮对话中的应用。最后提供了注意事项和结合消息模板与

2026-05-03 11:44:51 619

HCIE个人ai学习路径

HCIE个人ai学习路径

2026-03-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除