自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 LLM模型开发教程(十七)MCP/A2A/Memory一篇搞定(文末附源码)

MCP(Model Context Protocol)是一个开源标准协议,旨在标准化AI模型(Agent)与外部系统之间的连接。它采用类似USB接口的统一标准,解决传统集成中的碎片化问题,降低开发维护成本。MCP基于JSON-RPC 2.0协议,支持多种传输方式(HTTP/HTTPS、IPC等),实现Client(客户端)与Server(服务端)的安全高效通信。其核心价值包括即插即用、安全隔离和促进生态繁荣。开发者可通过MCP轻松实现Agent与各类工具的对接,适用于企业级AI应用和复杂系统构建,是AI时代

2026-03-02 20:16:36 1118

原创 LLM模型开发教程(十六)Agent核心技术(ReAct,FunctionCall,Tool Json Schema)

给 LLM 装上“外挂”,让它能查资料、用工具。

2026-03-02 20:02:18 928

原创 LLM模型开发教程(十五)RAG核心技术和RAG与蒸馏/微调的选型建议

摘要:RAG技术通过检索增强生成,解决大模型的三大缺陷:幻觉、知识滞后和数据隐私问题。关键环节包括文档切割(推荐递归字符分割算法)、向量数据库选型(Milvus适合大规模,Qdrant适合轻量级),以及参数调优策略(合理设置chunk_size和重叠度)。特别针对中文场景,需调整分隔符并防范信息割裂风险。该技术可有效提升大模型在专业领域的可靠性和实用性。

2026-03-02 19:46:05 1077

原创 LLM模型开发教程(十四)模型蒸馏-一文搞定(文末附源码)

模型蒸馏:大模型能力迁移到小模型的工程方法 知识蒸馏通过将大模型(Teacher)的推理过程编码为信号,让小模型(Student)模仿学习,实现能力迁移。主要应用于资源受限场景,如移动设备部署、低延迟要求或成本敏感业务。技术方案分为白盒(利用模型内部logits)和黑盒(基于API输出)两种,核心流程包括数据准备、损失计算和模型优化。典型应用包括手机AI助手(GPT-4蒸馏到1.8B模型)、工业质检(延迟从1.2s降至80ms)和低成本SaaS服务(成本降低10倍)。工程实践中常结合蒸馏与微调,先压缩模型体

2026-02-26 17:29:45 1196

原创 LLM模型开发教程(十三)模型微调-一文搞定(文末附源码)

模型微调:从通用到专属的智能助手 微调(Fine-tuning)是在预训练大模型基础上,通过特定领域数据(如prompt-response对)调整模型参数,使其适应专业场景(如代码生成、金融分析等)。相比训练,微调更注重个性化输出,需解决数据质量、评估指标(如准确率、一致性)及技术选型(如LoRA、Adapter)等挑战。数据可从开源项目(如Alpaca)、人工设计或模型生成获取,并需转换为标准提示词格式。最终目标是让通用模型“懂你”,成为高效领域助手。

2026-02-12 14:46:48 843

原创 LLM模型开发教程(十二)模型预训练-模型的训练-评估-优化-保存/加载

模型预训练与文本生成过程 本文介绍了GPT模型的预训练和推理两个核心阶段。在预训练阶段,模型通过Transformer架构并行计算每个预测词与真实词之间的梯度,不断更新参数以提高预测准确率。推理阶段则采用自回归方式逐个生成token,每次只关注最后一个token进行预测。文章还提供了文本生成代码实现,展示了如何通过滑动窗口截取输入、计算概率分布和贪婪解码等步骤完成文本生成。当前预训练前的模型由于参数随机初始化,生成文本尚不连贯。代码中实现了完整的token转换流程,支持文本与token ID之间的双向转换。

2026-02-08 13:33:16 685

原创 LLM模型开发教程(十一)开发一个GPT2【必备基础+实战一篇搞定】文末附全注释源码和源码阅读指南(包学会)

本来 Encoder 的作用就是把已存在的 Token 内容进行语义理解。但是 GPT 的目标是”生成“!根据用户“”输入内容“进行预测和生成,当用户输入后直接向量化交给 Decoder 符合他预测下一个 token ,所以实际工程落地就是使用 Decoder 工作流就够了,所以被称为 GPT 用的是 Transformer Decoder-only block,只用 Decoder 就可以完成任务。GPT 的版本迭代并非 Transformer block 迭代,而是在训练参数,Decoder 层数等方面

2026-02-06 13:13:10 985

原创 LLM模型开发教程(十)Transformer架构核心原理解读(一文搞定)

Transformer是一种革命性的序列模型,通过注意力机制取代传统循环结构,解决了RNN/LSTM训练慢和长距离依赖难的问题。其核心技术包括: 位置编码:在输入层添加位置信息,使模型感知词序 多头注意力:并行捕捉语法、语义等多种关系 残差连接:稳定深层网络训练,防止信息丢失 架构采用Encoder-Decoder框架,支持序列到序列任务(如机器翻译)。Encoder处理输入时保持token位置不变但语义不断丰富,Decoder生成输出时使用掩码防止信息泄露。这些设计使Transformer成为现代AI大模

2026-01-27 22:00:55 693

原创 LLM模型开发教程(九)注意力机制解读(一文拿下)

摘要 注意力机制是现代深度学习的核心技术,通过动态权重分配实现信息聚焦。其核心原理是计算输入词之间的相关性(注意力权重),加权融合关键信息。相比RNN的顺序处理,注意力机制能并行计算所有词汇间的关联,直接建立长距离依赖关系。该机制包含Q(查询)、K(键)、V(值)三要素:Q与K计算相似度得分,softmax归一化为权重后与V加权求和输出。注意力机制解决了RNN的两大痛点:长距离依赖和并行计算问题,成为GPT、BERT等大模型的基础架构,使AI具备真正的上下文理解能力。

2026-01-26 12:46:09 653

原创 LLM模型开发教程(八)向量化工作原理、向量与tokenID的关系

文章摘要 本文深入解析了Embedding的核心概念与应用。Embedding本质是一张可训练的查找表,将TokenID映射为多维向量,通过训练逐步构建语义空间坐标系。其演化经历四个阶段:随机初始化、剧烈调整、结构成型和最终稳定。关键特性包括语义相近词向量距离近、类别区分明显,并能反映结构化关系(如程度递进)。实践部分演示了如何用PyTorch将TokenID转为向量,强调需控制ID在词汇表范围内。最终指出Embedding实现了从离散编号到连续语义空间的转化,是模型理解语言关系的数学基础。

2026-01-23 15:30:50 743

原创 LLM模型开发教程(七)模型分词技术原理和实践

我们与智能语音,智能客服,搜索引擎交互时,他们如何知道我们在表达什么呢?"乒乓球拍卖完了"模型又是如何解析的呢?到底是“乒乓球/拍卖/完了”还是“乒乓球拍/卖完了”,因为不同的分词就会导致理解千差万别结构化数据可以用表格表示的,比如excl,比如数据库中存储的,都是结构化非结构化数据语言,文本,视频,音频等叫做结构化数据将非结构化的文本数据转换为计算机可理解的数值向量,其目标是捕获文本的语义信息、上下文关系等。补充说明。

2026-01-23 13:35:36 725

原创 LLM模型开发教程(六)模型训练的数据集获取与清洗

本文详细介绍了训练大语言模型(LLM)的三个关键阶段及其所需数据:预训练阶段使用Common Crawl等未标注文本数据建立基础语言能力;指令微调阶段采用Alpaca、BELLE等结构化问答数据提升任务执行能力;对齐阶段运用Anthropic HH-RHLF等人类偏好数据进行RLHF训练,确保回答安全可靠。文章还对比了手工爬虫与工程化框架(如Scrapy)的优劣,强调数据质量比数量更重要,并指出90%的模型评估仍需依赖人工判断。

2026-01-21 19:49:50 842

原创 LLM模型开发教程(五)模型训练基础

本文介绍了使用HuggingFace平台训练GPT2模型的完整流程。主要内容包括:1)HuggingFace平台的核心价值,包括丰富的预训练模型资源和便捷的Transformers库;2)LLM训练的两个关键阶段:预训练(自监督学习海量文本)和微调(有监督学习特定任务);3)大模型工作原理,重点解析了自回归生成、掩码机制等核心技术原理;4)训练与推理阶段的区别,训练阶段通过因果掩码学习预测下一个token,推理阶段则基于prompt生成连贯文本。文章还提供了学习建议,推荐从pipeline快速体验开始,逐步

2026-01-20 19:44:22 658

原创 LLM模型开发教程(四)深度案例篇-图片识别

本文系统讲解了深度学习核心训练机制与 PyTorch 实战全流程。重点涵盖:三种梯度下降方法(全批量、随机、小批量)的优劣对比;主流优化器(SGD、Adam、RMSprop)原理与适用场景;动量、RMSprop、Adam 等自适应优化算法的数学思想;Batch Normalization 的作用与实现;以及完整的 MNIST 手写数字识别项目实战。内容从理论到代码逐层递进,提供可直接运行的标准化训练、评估、保存与预测模板。学习者不仅能掌握 PyTorch 核心组件(DataLoader、nn.Module、

2026-01-19 14:22:23 654

原创 LLM模型开发教程(三)渡劫篇(争取两篇搞定深度学习)

本文系统介绍了深度学习模型优化的核心原理与方法。首先阐明了理论最优模型与工程最优模型的区别,强调模型优化的本质是通过调整参数寻找最佳函数。重点讲解了梯度下降算法:通过计算损失函数对参数的导数(梯度)来迭代更新参数,逐步逼近最小值。文章详细分析了学习率对收敛速度的影响,并比较了线性回归与逻辑回归的差异,后者通过sigmoid激活函数实现分类。最后介绍了深层神经网络的前向传播机制,说明各层神经元如何通过线性变换和非线性激活逐步处理输入数据。全文以线性回归为例,由浅入深地揭示了参数优化的数学原理,为理解复杂模型奠

2026-01-13 23:21:05 663

原创 LLM模型开发教程(二)内功筑基

本文摘要: 深度学习开发环境配置指南,包含关键软件包安装、硬件配置建议和效率工具推荐。主要内容包括: 开发环境搭建:列出PyTorch、Transformers等核心包的指定版本及安装命令,强调Python 3.10.18环境要求。 硬件配置方案:对比NVIDIA与AMD显卡性能,推荐RTX4090等配置,提供完整硬件选型表。 免费GPU资源:汇总阿里云、Kaggle和Google Colab的免费GPU获取方式。 效率工具:介绍通义灵码、GitHub Copilot等AI编程助手,以及GPT、Claude

2026-01-09 20:20:36 925

原创 LLM模型开发教程(一)目标手动实现一个自己的大模型

LLM 比早期的 NLP 更通用LLM 都是基于 Transformer 实现的LLM 是通过海量数据训练出来的深度学习LLM 中的 Large 指的是参数量大,训练数据量大。

2026-01-08 13:20:01 553

原创 Agent入门-只要十分钟包教包会

coze.cn。

2025-04-11 11:22:36 890

原创 阿里qwen大模型AI智能分析实时对话生成病例的DEMO

在HIS或者其他医疗系统中,为了提高医生的现场或者线上问诊工作效率,在系统的开病例这块可以通过对话录音,实时的把录音内容通过Qwen大模型直接生成病例数据,即医患对话完成即可生成病例,避免医生在手动开病例。

2025-03-21 21:20:50 776

原创 多人协作项目代码规范统一约定(完整全面)

强制代码校验:eslint强制代码formate:prettier统一提交信息格式:commitizengit钩子监听:husky代码自动修复工具:lint-staged

2023-12-18 10:40:21 1856

原创 记一次完成coding运维平台私有服务器部署流程

基于腾讯coding运维平台,完整的服务器ci流程

2023-02-23 17:25:26 571

原创 Node版本升级(linux)

node升级

2023-01-16 18:10:39 937

原创 serverless技术实践全程指北

serverless 实践入门指北

2022-10-26 13:56:12 812

原创 团队管理之高效开发基础认知

程序员的工作特点不断挑战各种难题,每天都在bug和需求之间挣扎与成长。必须不能停止学习,躺平即淘汰。对我的代码,产品负责。工作意识觉醒的第一步,就是我的代码,产品就像我的孩子,希望他茁壮成长,不被诟病。永远没有通用的管理方法,所有所谓的理论都是不断借鉴,摸索,实践,总结而来,包括我今天所分享的内容,或许只适合我。但希望对诸位有点滴参考价值作为管理者,我不轻言放弃任何一个项目,任何一个bug,任何一个人。为的是打造更好的项目,培养更好的人才,更重要的,是建立我们之间的信任。...

2022-08-16 18:40:09 662

原创 微前端-qiankun-落地指北

微前端落地指北

2022-01-04 16:36:14 1417 3

原创 订阅发布和观察者模式

发布订阅模式把多个方法暂存起来,最后一次触发执行作用: 解偶使用场景: 如,多个类或者函数内,可以分散订阅某个操作,最后统一发布。分散的好处就是不做代码侵入,各自为政,实现代码低耦合。几乎所有的库,都会有基于该设计模式的功能案例事件调度中心// 事件中心,做事件调度 const fs = require("fs"); let events = { _events: [], on(fn) { this._events.push(fn); }, e

2021-09-15 20:31:53 217

原创 js函数柯里化

函数柯里化: 把多个参数的传入转成n个函数,可以暂存变量柯里化,要求参数一个个传,通常参数长度确定(定参)如果多个参数严格意义讲,就不算柯里化,成为偏函数不定参可以吗?可以…成本太高,得不偿失典型柯里化函数的体现function fn(a) { return function a(b) { return function b(c) { return function c() { // ... }; }; };}let.

2021-09-15 18:21:24 238

原创 js高阶函数

高阶函数?两种应用方式可称之为高阶函数函数内部返回一个函数,外层函数可以叫做高阶函数function A() { return function () {}; }函数的参数是一个函数,也是高阶函数 function A(B) { B(); }举一个应用场景 (AOP)AOP:即面向切面编程,可以理解为不动原有业务逻辑,额外增量扩展功能// DEMOfunction core(...args) { // 这是原有业务,我们希望不动这个原有业务,.

2021-09-15 18:10:41 362

原创 一图说明带团队(实践中)

怎么带团队?先推荐一本书吧《管人先管己,带人先带心》下面这张图是我实践得出的经验,纯粹的实践凝练的干货,或有不合理地方我也在持续优化我自己的管理策略,欢迎斧正,指点,唯有出错,识错,方能成长。带团队呢,其实说难很难,说简单也简单,说难呢那就说不清道不明了。那就简而言之吧,不变的原则“挣钱”,公司的存在其实99.99%都是为了搞钱,为了公司能挣钱,那么就要有好的创意和产品(此处只谈产品),好的产品想占有市场,那就要产出的质量更高,版本迭代更快。这背后就需要有一个高素质,产能卓著的团队做支撑。有一

2021-09-14 18:48:55 212

原创 eventbus-免手动解绑方案

为什么会写这个包?跨层级组件传值,平级组件传值方案众多,五花八门,维护起来很费劲(如eventbus,inject-provider等等)vuex?redux?注意了,这两个技术产生的应用场景是全局数据管理,而不是用来处理大量业务数据监听,如果坚持用,那么最后随着项目庞大,store也会庞大,维护成本不言而喻。嗯~modules可以分模块维护,但是,依旧不建议,做技术的严谨性还是要有的eventbus不是可以解决以上问题嘛?没错的,但是会有一个问题,很多同学协作开发过程代码不规范,那就是只监听,不解

2021-09-06 17:57:36 407

原创 判断windows系统类型和IE浏览器版本

判断系统类型,IE版本 function detectOS() { var sUserAgent = navigator.userAgent var isWin = navigator.platform == 'Win32' || navigator.platform == 'Windows' var isMac = navigator.platform == 'Mac68K' || naviga

2021-07-16 19:09:43 513

原创 网站导航部分-鼠标跟随滑动效果

htm部分<div class="header"> <div class="logo" id="toIndex"> <img src="../imgs/pc/common/header/logo.png" alt="" /> </div> <ul class="menu" id="menu"> <li id="menu_know" class="menu-item">了解OKR</li> .

2021-07-06 15:57:40 405

原创 0-1实现CI/CD [ 第一章 ]

什么是CICI 的意思是 持续构建 。负责拉取代码库中的代码后,执行用户预置定义好的操作脚本,通过一系列编译操作构建出一个 制品 ,并将制品推送至到制品库里面。常用工具有 Gitlab CI,Github CI,Jenkins 等。这个环节不参与部署,只负责构建代码,然后保存构建物。构建物被称为 制品,保存制品的地方被称为 制品库什么是CDCD 则有2层含持续部署(Continuous Deployment)持续交付(Continuous Delivery) 。持续交付 的概

2021-06-27 21:49:44 467 2

原创 富文本编辑器-tinymce的各种应用

为什么用这个编辑器?pc和H5皆可,纯粹的html?vue?angular?react?皆可简单,直接,输出dom功能强大,你想要的几乎都有了安装这里建议下载源码到本地使用下载地址然后引入js你的路径+/tinymce/js/tinymce/tinymce.min.js初始化tinymce.init({各种配置})配置项随心所欲吧自定义配置选择H5H5的基本配置框架中使用?vue,react,anular以及其他框架怎么用?Java,python等等也行哟汉化包也给你

2021-05-26 15:54:15 1854

原创 vue.config.js常用基础配置留档

1.分享一个vue.config.js的基本配置,至少能让你的代码体积缩小2/3,嗯,就这样,复制急用const CompressionPlugin = require('compression-webpack-plugin') // 代码压缩const UglifyJsPlugin = require('uglifyjs-webpack-plugin') // 去掉打印,注释等多余代码const { HashedModuleIdsPlugin } = require('webpack') // 只打

2021-03-26 16:12:59 277

原创 vue组件库和组件文档生成

公司现役组件库项目,公共资源或者新老项目切换仓库调整 src 目录结构|--src|-- App.vue|-- main.js|-- packages // 新建此文件夹用来存放组件 |-- index.js // 组件入口 |-- button.vue // 新增一个button组件,记得带上name |-- icon // 新增一个icon组件,记得带上namepackages/index.js// 所有组件的入口import

2021-03-09 20:52:18 3492 1

原创 部署npm私服-verdaccio 基于nginx

服务器:linux系统环境:centos 7软件环境:node安装nodejssudo yum install epel-releasesudo yum install nodejsnode --versionnode版本问题版本管理工具:nnpm install -g n安装指定版本:n 版本关于node版本n 会列出所有安装的版本供你切换n latest 安装最新版本n stable 安装最新稳定版n lts 安装最新长期支持版本n rm [版本号] 删除某一版本

2021-03-05 13:44:15 1439

原创 30分钟包你入门D3

D32d 数据展示渲染库,本质通过 js 操作 svg,css,在数据可视化自定义图表领域大放异彩特征可链式调用语法神似 jquery学习方式也类似 jquery使用方式vue 或者 react 等框架引用cnpm i d3 --serve-dev按需加载import {} from 'd3'接下来就想用 jquery 一样用 api不过是操作 dom以 vue 为例;<div ref="base">index</div>im

2021-02-19 20:25:12 372

原创 js常用函数封装和vue开发小技巧(持续添加)

移动端适配方案viewport插件选择 postcss-px-to-viewport配置 //安装插件 npm i postcss-px-to-viewport -D //根目录新建 .postcssrc.js // 文件内容 const path = require('path')module.exports = ({ file }) => { // 记住这里:设计搞多大就给多大,然后剩下的就按照设计稿实际宽高,写就好了 let designWidth =

2021-01-12 14:26:16 531

原创 vue怎么支持seo?

前言:首先明确一个知识点,为什么vue对seo支持不友好?其次仅仅vue对seo 的支持不好吗?react呢?angular呢?答:凡是spa项目对seo都非常不友好,为什么?这个跟网络爬虫有关跟spa的特性有关。第一,网络爬虫喜欢收录原创内容,于是乎我们很常用的手段就是发文章,原创或者伪原创去勾搭爬虫引起爬虫的重视,以此增长网站的权重对吧?但是spa呢偏偏收录不了,为什么?因为spa是单文件内容,意思是项目打包后,只有一个index.html对吧,此时你写一个文章页面如:article/1.html 这个

2021-01-11 18:29:26 955 1

空空如也

空空如也

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

TA关注的人

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