- 博客(36)
- 收藏
- 关注
原创 大模型微调实战 -基于SWIFT框架
🍲 ms-swift是魔搭社区提供的大模型与多模态大模型微调部署框架,现已支持500+大模型与200+多模态大模型的训练(预训练、微调、人类对齐)、推理、评测、量化与部署。
2025-08-01 15:42:22
1044
原创 基于阿里云10分钟微调,让0.6B模型媲美235B模型!
摘要 本文提出了一种通过模型蒸馏技术,在保持任务效果的同时降低推理成本的解决方案。以物流信息抽取任务为例,使用Qwen3-235B大模型生成训练数据后,对Qwen3-0.6B小模型进行微调。方案采用魔搭社区的ms-swift框架简化微调流程,仅需单条命令即可完成。实验结果显示,微调后的小模型准确率从14%提升至98%,且响应速度更快、成本更低。方案详细介绍了数据准备、模型微调、效果验证的全流程,并提供了测试代码和业务应用建议,30分钟内即可完成部署,成本控制在5元以内,为实际业务场景提供了一套高效可行的模型
2025-07-23 17:56:43
731
原创 PyTorch深度学习房价预测完整教程
PyTorch深度学习房价预测项目摘要 本项目基于PyTorch框架构建了一个多层感知机(MLP)模型,用于预测加州房价。项目从数据预处理、特征工程到模型训练和优化提供了完整解决方案。数据集包含47,439个训练样本和31,626个测试样本,涵盖41个房屋特征。 核心亮点: 采用5层神经网络架构(33→256→128→64→32→1),包含批标准化和Dropout层 实现特征筛选、缺失值处理、异常值过滤和标准化预处理 使用Adam优化器、学习率调度和早停机制优化训练过程 通过梯度裁剪和大批量训练(1024)
2025-07-22 14:14:48
619
原创 自己训练大模型?MiniMind 全流程解析 (三) DPO训练
MiniMind DPO训练教程解析了一种无需奖励模型的强化学习方法。DPO通过直接优化人类偏好数据,简化了传统RLHF流程。文章详细介绍了DPO的核心算法、数据格式要求和完整训练实现,包括模型初始化、损失函数计算和训练循环。DPO采用对比"好/差回答"的概率比来学习人类价值观,其损失函数基于参考模型与训练模型的概率差异。训练过程需要同时维护可更新的训练模型和冻结的参考模型,通过批次数据处理和反向传播优化模型参数。该教程为开发者提供了完整的DPO训练技术实现方案。
2025-07-18 16:56:01
923
原创 自己训练大模型?MiniMind 全流程解析 (二) 监督微调SFT
本文详细解析了MiniMind框架的监督微调(SFT)全流程,主要内容包括: 整体流程概述:从初始化到模型评估的完整训练流程,包括参数解析、模型加载、数据准备、训练循环等关键步骤。 核心技术实现: 对话模板处理:将原始对话转换为ChatML标准格式 损失掩码机制:仅对助手回复部分计算损失 预训练模型加载:支持标准模型和MoE架构切换 专用损失计算:应用损失掩码并保持MoE辅助损失 数据格式规范:采用标准JSONL格式存储对话数据,支持多轮对话交互。 该流程显著提高了模型对话质量,通过技术优化实现了高效训练,
2025-07-17 17:38:03
830
原创 自己训练大模型?MiniMind 全流程解析 (一) 预训练
MiniMind是一个开源的大语言模型训练框架,提供从预训练到推理的全流程解决方案。本文解析其预训练流程的核心技术:1)采用余弦退火学习率调度平衡收敛与精度;2)混合精度训练结合float16前向计算与float32梯度管理加速训练;3)梯度累积技术突破显存限制;4)基于NCCL的分布式训练实现多GPU并行。框架通过模块化设计(参数解析、数据加载、训练循环等)支持高效训练,并确保实验可复现性(随机种子管理)。项目完全开源,代码详见GitHub仓库。
2025-07-15 16:28:57
1043
原创 深度学习入门教程(五)- 线性回归与优化算法
本文介绍了深度学习中的线性回归基础及其优化算法。主要内容包括: 线性回归模型的基本原理,将其视为单层神经网络,并通过房价预测案例说明应用场景 模型求解方法: 使用均方误差(MSE)作为损失函数 解析解(正规方程)和梯度下降两种求解方式 不同批量大小对梯度下降效果的影响 代码实现: 从零开始实现数据生成、模型训练全流程 使用PyTorch框架简化实现 包含参数初始化、损失计算、反向传播等关键步骤 优化算法对比: 批量梯度下降、随机梯度下降(SGD)和小批量梯度下降的特点 学习率和批量大小对训练效果的影响 文章
2025-07-11 16:48:01
254
原创 深度学习入门教程(四)- 自动求导教程
本教程系统介绍了向量链式法则与自动求导的数学原理及PyTorch实现。主要内容包括:1)向量链式法则的概念及其在线性回归中的应用;2)自动求导的基本原理和重要性;3)计算图的概念及其梯度传播机制;4)前向模式与反向模式自动求导的对比分析;5)PyTorch中自动求导的具体实现方法。通过数学案例和代码示例,详细演示了梯度计算过程,包括梯度清零、非标量反向传播等实用技巧。该内容为深度学习模型训练提供了关键理论基础和实践指导。
2025-07-11 15:42:24
400
原创 深度学习入门教程(三)- 线性代数教程
本文介绍了深度学习中的线性代数基础概念及其PyTorch实现。主要内容包括:1) 特征值和特征向量定义及其几何意义;2) 标量运算基础;3) 向量运算如长度计算和标量倍数;4) 矩阵运算包括矩阵转置和对称矩阵特性。文章通过数学案例和Python代码演示了PyTorch中的标量、向量和矩阵操作,如创建、访问元素、计算范数等。这些线性代数知识是深度学习的基础,应用于神经网络权重、特征提取、数据降维等场景。
2025-07-11 15:32:36
335
原创 深度学习入门教程(二)- 数据操作、数据预处理教程
本文介绍了深度学习中的基本数据操作与预处理方法,重点讲解N维数组和张量的使用。主要内容包括:1)N维数组在不同场景下的应用(1维特征/时间序列、2维图像/表格、3维彩色图像);2)PyTorch张量的创建(全0/1张量、特定值张量)、形状操作(reshape)和访问方法;3)常用张量运算(算术运算、逻辑运算、合并操作、累加运算);4)广播机制在不同形状张量间的运算应用。通过代码示例展示了如何在实际任务(如图像处理、特征工程)中运用这些操作,为深度学习模型准备数据。
2025-07-10 17:44:53
928
原创 深度学习入门教程(一)
简单来说,深度学习(Deep Learning)就是更复杂的神经网络(Neural Network)。那么,什么是神经网络呢?我们通过一个简单的房价预测例子来理解神经网络的基本概念。
2025-07-09 17:27:27
1349
原创 Word2Vec模型详解:CBOW与Skip-gram
Word2Vec模型解析:CBOW与Skip-gram是两种高效的词向量训练方法,分别通过上下文预测目标词和目标词预测上下文来实现词嵌入学习。CBOW使用平均池化处理上下文信息,适合高频词和完形填空任务;Skip-gram采用双嵌入层和负采样技术,更擅长处理低频词。两者都基于分布式假设,将语义相似的词映射到相近的向量空间位置。代码实现展示了两种模型的结构差异和训练方法,包括完形填空功能示例。实验结果表明,这两种架构在不同任务中各有优势,能够有效捕捉词汇间的语义和语法关系。
2025-07-08 17:07:29
964
原创 我的大模型应用到底行不行?LLM应用评估工具Ragas完整指南
Ragas是一个专业的大语言模型(LLM)应用评估工具包,提供端到端的解决方案。它能自动生成测试数据,支持多维度评估指标(如准确性、相关性、忠实度等),并与LangChain等主流框架无缝集成。Ragas解决了传统评估方法的主观性、测试数据匮乏等问题,通过数据驱动的方式持续优化LLM应用性能。其核心功能包括智能测试数据生成、批量评估执行、以及生产环境下的性能追踪。开发者可以快速安装并通过Python API进行单样本或数据集批量评估,特别适合RAG应用的全面质量评估。
2025-07-04 16:42:42
1133
原创 Spring AI Alibaba入门教程
Spring AI Alibaba是阿里巴巴推出的企业级AI开发框架,为Java开发者提供统一AI服务接口和生态集成。教程展示了如何快速开发智能天气预报助手,包含:1)创建Spring Boot项目并配置阿里云通义千问模型;2)编写后端控制器实现天气问答功能;3)设计前端界面展示交互效果。该框架支持多智能体工作流、企业级观测工具集成,简化了AI应用开发流程,适合构建专业天气服务等场景化解决方案。
2025-07-03 17:30:56
797
原创 超绝AI 编程助手:快速上手 Augment Code,提升开发效率!
Augment Code入门教程摘要Augment Code是一款基于AI的智能编程助手,提供代码生成、重构和补全功能。它支持VSCode和JetBrains IDE插件安装,提供两种工作模式:Agent模式:自动化执行代码生成、优化和测试,适合大型项目Chat模式:对话式交互解决问题,适合快速开发教程演示了如何使用Agent模式自动创建Spring Boot项目,包括:读取本地文件理解项目现状制定开发计划调用各类工具执行任务生成代码后确认使用Augment Code提供免费版(50次
2025-06-30 15:54:46
5932
原创 Jaeger开源分布式追踪平台深度剖析(三)Jaeger默认存储Badger原理剖析
Badger Value Log是键值分离存储的核心组件,将大值存储在独立日志文件中,LSM树只保存键和值指针。其设计包含值阈值判断机制、优化的文件格式和高效的读写流程。写入时根据值大小决定存储位置,采用CRC32校验保证数据完整性。读取过程通过值指针快速定位,支持缓存友好的mmap读取。这种架构显著降低了写放大,提升了存储性能。
2025-06-10 16:36:33
1244
原创 Jaeger开源分布式追踪平台深度剖析(二)Jaeger默认存储Badger原理剖析
Badger是一个用纯Go编写的嵌入式、高性能键值数据库。它采用LSM-Tree(Log-Structured Merge Tree)架构,结合值日志(Value Log)设计,实现了键值分离存储,显著减少了写放大和LSM树的大小。
2025-06-10 16:34:40
613
原创 从零手写Java版本的LSM Tree (八):LSM Tree 主程序实现
LSM Tree主程序实现展现了以下核心特性:1. **分层存储架构**: 内存MemTable + 磁盘SSTable的分层设计2. **WAL-first原则**: 确保数据持久性和一致性3. **并发安全**: 读写锁机制支持高并发访问4. **优雅降级**: 从内存到磁盘的渐进式查找策略5. **可靠恢复**: 完整的系统崩溃恢复机制6. **监控友好**: 丰富的统计信息支持运维监控
2025-06-09 16:49:08
737
原创 从零手写Java版本的LSM Tree (七):压缩策略
压缩策略是LSM Tree性能的关键:1. **文件管理**: 控制文件数量和大小2. **空间回收**: 清理冗余和删除的数据3. **性能平衡**: 在读写性能间找到平衡4. **自适应**: 根据负载模式调整策略
2025-06-09 16:41:01
694
原创 从零手写Java版本的LSM Tree (六):WAL 写前日志
🔧 WAL核心机制:双重保障:采用先写日志后存内存的流程,确保崩溃恢复时不丢失数据高效设计:文本格式日志(操作|键|值|时间戳)配合缓冲写入器提升IO性能线程安全:通过synchronized锁和立即刷盘策略保证高并发下的数据一致性智能恢复:流式读取WAL文件,严格验证格式,自动跳过无效条目💡 技术价值:为理解LSM Tree核心原理提供完整实现范例WAL模块展示如何平衡性能与可靠性适合存储引擎开发、分布式系统学习等应用场景
2025-06-09 16:32:00
686
原创 从零手写Java版本的LSM Tree (五):布隆过滤器
布隆过滤器是一种空间高效的概率型数据结构,用于快速判断元素是否可能存在于集合中。其核心特性包括无假阴性(确定不存在)和有假阳性(可能误判存在)。在LSM Tree中,布隆过滤器被用于SSTable文件,通过跳过无效磁盘I/O提升查询性能。实现原理基于多个哈希函数映射位数组,插入时标记所有哈希位,查询时检查所有位是否均为1。优化设计采用双重哈希技术,并支持序列化存储。布隆过滤器能以极小内存代价显著减少LSM Tree的无效磁盘操作,是高性能存储系统的关键组件。
2025-06-09 16:23:33
943
原创 从零手写Java版本的LSM Tree (四):SSTable 磁盘存储
本文介绍了高质量的Java LSM Tree开源项目java-lsm-tree,该项目专为高并发写入场景设计,具有写入超40万ops/秒的高性能。文章重点解析了第4章SSTable磁盘存储的实现细节,包括SSTable的三大特性(不可变性、有序性和自包含性)以及文件格式设计。核心代码展示了如何从内存数据创建SSTable文件,包含条目数量、有序键值对和布隆过滤器的写入过程,同时提供了从文件加载SSTable的静态工厂方法。该项目适合需要深入理解LSM Tree原理或构建高性能存储系统的开发者。
2025-06-09 16:14:49
867
原创 从零手写Java版本的LSM Tree (三):MemTable 内存表
文中重点解析了MemTable的设计原理,通过对比数据结构说明选择跳表的原因:相比红黑树和B+树,跳表在并发性能、实现简单性等方面更具优势。详细图解了跳表的层级结构和查找路径,并展示代码实现,包括使用ConcurrentSkipListMap确保线程安全、volatile保证可见性等关键设计。该项目适合存储引擎开发者、数据库学习者和面试准备者参考学习。
2025-06-09 16:08:10
846
原创 从零手写Java版本的LSM Tree (一):LSM Tree 概述
🔥 Java LSM Tree开源项目详解文章介绍了基于Java实现的Log-Structured Merge Tree(LSM Tree)开源项目,这是一种专为高并发写入优化的数据结构。核心架构包含内存层(WAL日志+MemTable)和磁盘层(SSTable文件),通过顺序写入和分层存储实现超40万次/秒的写入性能。项目亮点:完整组件:跳表MemTable、SSTable文件、WAL日志、布隆过滤器高性能设计:顺序写入+批量刷盘+无锁并发数据可靠:WAL确保崩溃恢复零丢失详细教程:1
2025-06-09 15:14:56
1133
原创 从 0 开始学习大模型应用开发(加餐一)- 手把手带你开发MCP系统
摘要:Model Context Protocol (MCP) 是Anthropic推出的标准化协议,用于连接AI模型与外部工具数据,简化开发对接。通过MCP,大模型可便捷调用各类服务(如地图、数据库、GitHub等)。文章以Claude接入GitHub为例,演示了MCP的配置与使用流程,并介绍了其架构(客户端与服务端协作)。此外,还提供了开发MCP应用的步骤,包括使用uv工具初始化Python环境,并示例了基于天气API的MCP服务开发代码。MCP协议显著扩展了AI模型的功能边界,支持复杂场景的自动化处
2025-05-27 15:37:28
1631
原创 从 0 开始学习大模型应用开发(三)- LangChain 核心组件深度实践
本章详细介绍了使用LangChain构建大模型应用的关键技术。主要内容包括:1) 使用PromptTemplate创建可复用的提示模板,实现动态内容填充;2) 接入OpenAI等在线大模型服务,并处理API密钥等配置;3) 通过LangGraph添加对话记忆功能,使系统能记住上下文,实现连贯对话。文中提供了完整代码示例,涵盖核心组件如状态管理、线程ID生成、内存检查点等技术实现。这些技术让问答系统具备了更智能的交互能力,能够处理多轮对话并维护上下文信息。
2025-05-26 17:44:57
997
原创 从0开始学习大模型应用开发(二)- 使用langchain开发大模型应用
在本文中,我们介绍了Langchain框架的基础知识、核心功能以及如何将其与Ollama Deepseek模型结合,构建一个简单的问答系统。Langchain作为一个灵活且强大的框架,为开发者提供了处理大语言模型的工具和组件,使得多步骤任务和模型集成变得更加简便。通过本文的学习,相信读者能够理解Langchain框架的基本概念,并能够运用它构建出适用于各种场景的大模型应用。希望大家能在实际开发中,充分发挥Langchain的优势,构建出更强大、灵活的语言模型应用。
2025-05-21 15:51:12
1327
原创 从0开始学习大模型应用开发(一)- Ollama运行本地大模型
Ollama是一个开源工具,旨在简化大语言模型(LLM)在本地计算机上的部署和运行。它支持Linux、MacOS和Windows系统,提供一键下载、安装和切换不同模型的功能,优化了资源需求以适应消费级硬件,并提供了标准API接口以便集成到应用程序中。
2025-05-19 17:02:11
1037
原创 Jaeger开源分布式追踪平台深度剖析(一)Jaeger入门和环境搭建
Jaeger 是由 Uber Technologies 于 2016 年开源发布的一个分布式追踪平台,后来捐赠给了CNCF云原生计算基金会,并成为其毕业项目。Jaeger作为云原生领域专业的分布式追踪系统,主要提供以下核心功能:我们来看几张jaeger的截图:这张视图是Jaeger分布式追踪系统的核心交互界面,主要用于通过多维度过滤和可视化分析快速定位与诊断分布式系统中的请求链路问题。用户可在左侧通过服务名称(如"frontend")、HTTP状态码(如200/400)、时间范围(如回溯1小时)及耗时区间(
2025-04-16 15:33:17
1259
原创 【Spring AI 0基础教程】3、基础篇 | 文生图 - 电商广告图片生成器
在上一小节中,我们学习了 Spring AI 中聊天客户端的使用方法,当然 AI 大模型的能力远远不至于回答你的问题,包括文生图、音频转文字、文字转音频等等功能在后面的章节中都会慢慢学习到。那么这一小节,我们将学习 Spring AI 中非常强大的功能:文生图,通过这种技术完成一个新的案例:电商广告图片生成器。我们先来看下最终的效果以及本章实现的系统具备的功能:一、提示词优化 : 提示词是文生图的关键,优化它能提升生成图片质量与精准度,帮助用户精准描述所想画面。如想要梦幻森林,起初用 “森林”,生成场景普通
2025-04-04 20:48:51
629
1
原创 【Spring AI 0基础教程】2、基础篇 | 聊天客户端 - 智能健康助手
学习目标:基于之前对 Spring AI 的基础学习,探索使用ChatClient接入不同大模型,实现智能健康助手开发,该助手具备问题咨询、示例参考和症状处理等功能。后端开发:比较ChatClient和ChatModel,鉴于无需特定模型定制,选择更便捷强大的ChatClient。设置并优化引导模型回复,进行少样本学习提升准确性。开发接口处理用户请求,调用大模型并处理异常。前端开发:前端通过fetch方法调用后端接口,将响应解析为 JSON 后展示健康咨询报告。
2025-04-04 20:42:07
1833
原创 【Spring AI 0基础教程】1、基础篇 | 环境搭建 - 智能天气预报助手
(https://spring.io/projects/spring-ai)]是 Spring 官方于 2023 年推出的 AI 应用开发框架,它如同 AI 世界的"Spring 生态连接器",致力于简化开发集成了 AI 功能的应用程序。它主要解决两大核心问题:如上图所示,Spring AI 成为了连接企业数据以及 API 和生成式 AI 的桥梁。Spring AI 具备的能力如下:它具备以下特点:那么 Spring AI 到底能做什么呢?这里我给出几个常见案例,在咱们这套课程中也会带着大家完成这些案例:场
2025-04-04 19:35:48
4389
7
原创 Java开发基于Spring AI Alibaba玩转 MCP:从发布、调用到 Claude 集成
Spring AI MCP 为模型上下文协议提供 Java 和 Spring 框架集成。它使 Spring AI 应用程序能够通过标准化的接口与不同的数据源和工具进行交互,支持同步和异步通信模式。整体架构如下:Spring AI 应用程序:使用 Spring AI 框架构建想要通过 MCP 访问数据的生成式 AI 应用程序Spring MCP 客户端:MCP 协议的 Spring AI 实现,与服务器保持 1:1 连接通过 Spring AI MCP,可以快速搭建 MCP 客户端和服务端程序。
2025-04-04 19:06:58
3421
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人