- 博客(607)
- 资源 (5)
- 收藏
- 关注
原创 从 MSE 到交叉熵:一文搞懂损失函数
机器学习模型究竟依靠什么完成"学习"?它凭什么判断自身的表现是否达标、又该在哪些方面做出改进?我们可以通过一个类比来理解——学生在完成课后作业时,老师会给出一个分数。无论是80分、90分还是不及格,学生都能通过这个分数发现自己哪里掌握得不够牢固,并据此调整后续的学习策略,争取下一次取得更好的成绩。机器学习的模型同样具备类似的反馈机制,这个机制的名称就叫——损失函数。损失函数在机器学习中占据着比较重要的位置。如果无法理解损失函数的工作原理,就很难真正搞清楚模型是如何完成训练的。
2026-06-21 11:48:50
436
原创 Claude Code 免费接入讯飞星辰 Qwen3.6-35B-A3B 模型,白嫖攻略来了!
限时免费到6月30日,手慢无!最近讯飞星辰 MaaS 平台可以免费领取Qwen3.6-35B-A3B、Qwen3.5-35B-A3B两个 Qwen 系列模型的调用权益,这意味着你可以把这个强大的模型接入到 Claude Code 中,享受免费的高质量代码生成和智能编程体验。本文就来手把手教你,如何把Qwen3.6-35B-A3B、Qwen3.5-35B-A3B模型接入 Claude Code。
2026-06-09 00:55:09
1548
4
原创 让 AI Agent 跨会话接住工作:一场对照实验
仓库中的多个小文件(ARCHITECTURE.md、PRODUCT.md、session-handoff.md)各司其职,按需读取,效果更好。当你的 agent 能在一分钟内搞清"这是哪、到哪了、下一步去哪",你就有了一个真正可交接的 AI 工作流。不是某个 agent 的记忆,不是聊天记录,不是某个巨大的指令文件——而是仓库里的结构化文档。如果把所有规则塞进一个巨大的 system prompt,agent 会"迷失在细节里"。代码能告诉你"怎么做",但很难告诉你"做了什么、为什么没做、下一步做什么"。
2026-06-07 14:38:00
265
原创 只写提示词让 agent 做,和定好规则再让它做,差多少
编号功能要求kb-001窗口启动npm start后 Electron 窗口正常打开kb-002左侧文档列表左侧面板显示文档列表区域kb-003右侧问答面板右侧面板包含输入框和对话区域kb-004本地数据目录应用启动时创建数据目录,包含 documents/、qa/ 子目录。
2026-06-07 08:21:47
405
原创 为什么 temperature=0,模型输出依然不完全一致?
因为从数学上看,逻辑似乎很简单。当 temperature 趋近于 0 时,概率分布会迅速向最大值集中,最终接近一个:最高概率的 token 概率接近 1,其余 token 接近 0。既然最大值是确定的,那么输出自然也应该是固定的。但问题在于:数学世界是理想化的,而模型推理发生在真实硬件上。大模型真正运行时,底层依赖的是 GPU 的并行计算架构,而不是一台计算器按顺序一步一步算。GPU 为了追求吞吐量,会把大量运算同时展开。
2026-06-06 17:50:42
655
原创 零基础看懂机器学习:不用数学,只要生活经验
简单说,特征就是描述一件事的各种属性,是模型的输入。预测外卖时间时,距离、天气、时段就是特征;判断快递时,包装文字、重量、发货地就是特征;人脸识别时,眼睛大小、鼻子高低、脸型轮廓就是特征。标签就是咱们想预测的结果,是模型的输出。机器学习里:预测外卖时间,标签就是"38分钟";判断快递,标签就是"易碎"或"普通";诊断疾病,标签就是"健康"或"生病";需要注意的是,标签只在监督学习里有。其实它就是一个函数。啥函数?从特征到标签的映射函数,数学上写成y = f(x)。
2026-06-04 21:56:12
317
原创 你的RAG系统是怎么进行Query改写的?
在多轮对话场景下,用户经常会使用代词(比如它,那个)来指代他前面提到的某件事,但是检索模块根本就听不懂这种表述,接下来对话进行到第四轮,第五轮,系统就开始出现记忆断裂,回复的内容就开始莫名其妙,导致的结果就是用户体验感直线下降。解决办法是设置相似度检测阈值,改写完成后,系统自动计算改写内容和原始提问的语义相似度,如果低于某个值,比如0.75,就放弃改写版本,直接用原始问题去检索,宁可保守一点,也不能让模型乱改。别用GPT4这样的大模型来改写,用一个经过专项微调的小模型,速度更快,成本更低。
2026-06-04 17:15:58
453
原创 Prompt Engineering和context engineering有什么区别?为什么Transformer架构在处理超长上下文时会变慢?
第三个问题就是外推性差,很多大模型其实是在相对较短的文本上训练的,如果给他塞进一个长文本,虽然物理硬件层面上可能扛得住,单模型内部的位置编码机制并不知道这些超长距离的Token之间应该如何交互,导致的结果就是深层内容开始乱套,困惑度PPL疯狂飙升。在推理阶段,这个问题更加明显,每次生成一个新的Token,模型都要反复去显存里搬取之前计算过的键值缓存KV cache,结果,计算核心大部分都在等数据这个动作上,而不是在真正算数据,这才是变慢的物理本质。这就是所谓的二次方爆炸,长度双倍增长,代价是4倍的计算量。
2026-06-04 17:14:35
279
原创 GoCloud - 基于 WebSocket 的实时聊天应用
一个使用 Go 语言开发的多房间实时聊天应用,支持用户注册/登录、房间切换、聊天历史记录等功能。
2026-06-03 17:16:55
394
原创 Windows系统Codex 接入阿里云百炼的国产大模型
Codex作为 OpenAI 推出的终端级 AI 编程智能体,凭借其对 Responses API 的原生支持、强大的插件/技能系统和灵活的工具调用能力,迅速成为开发者日常编码的得力助手。然而在国内使用 Codex 时,相信在通过Microsoft Store安装好Codex之后,很多人一定见过这个图片:本文将介绍如何将平台的国产大模型接入 Codex,配合开源增强工具,实现更快、更稳、更低成本的编码体验。
2026-06-02 00:21:35
2882
原创 SLKJ笔试题解析
偶数长度时,p1 与 p2 的初始距离为 len-1(奇数),每次循环距离减 2,因此距离永远是奇数,不可能等于 0。奇数长度时,初始距离为偶数,距离最终会减到 0,循环正常终止。偶数长度时,p1 与 p2 的初始距离为 len-1(奇数),每次循环距离减 2,因此距离永远是奇数,不可能等于 0。先构造这三位的位模式:0x7(二进制111)左移 4 位,得到0x7 << 4(对应 bit4-6 为1,其余为0)生成m个连续的1:(1 << (m)) - 1(比如m=3时,结果为0b111)
2026-05-31 00:09:30
316
原创 机器人Java后端算法笔试题解析
除了对添加、删除和遍历加锁或同步的方式——因为如果对遍历加同步,可能会阻塞很长时间,因为遍历一遍可能要很久,会阻塞添加、删除等操作,也会阻塞其他线程的遍历操作。21 . 一种常见的攻击手段是huge body,比如请求报文是JSON,但构造一个很大的JSON字符串,几百M甚至几个G,解析JSON会把CPU干爆,甚至把内存用光。utf8mb4 下英文字母通常 1 字节,中文常见汉字一般 3 字节,部分扩展字符可能占 4 字节,但 varchar(100) 限制的是字符数,因此最多依然存 100 个字符。
2026-05-22 23:01:24
377
原创 分布式事务其实很简单:下单场景带你吃透核心原理
我们常说的分布式事务强一致性,核心是原子提交级的强一致分布式事务的提交对调用方是原子性的,要么所有分支事务全成功提交,要么全回滚,对外不存在部分成功的中间状态,调用方在事务完成前,不会读到部分修改的数据。放到我们的下单场景里,就是账户中心扣钱和商品中心扣库存,两个操作对用户来说必须同时成功、同时失败,不会出现一个成功一个失败的情况。
2026-05-03 16:02:57
569
原创 Spring Boot 核心就这 3 件事
你只需要在Controller里,给对应的Service属性加上这个注解,Spring 就会自动从容器 Map 里,按类型或类名找到对应的 Bean 实例,注入到Controller中,你就可以直接调用Service的方法了。对象的创建、实例化、管理,全都交给Spring容器(也就是那个大Map)来做,你的代码里不用再手动new对象了,只需要等着Spring把你需要的对象给你送过来。说白了,就是把代码按功能拆分成4个模块,对应项目里的4个包,各司其职,互不干扰,既方便维护,也便于团队协作。
2026-05-03 10:53:23
196
原创 解决 Windows 虚拟内存迁移失败的全过程实录
最近发现C 盘空间告急,看了一下,有一个十几GB的虚拟内存()文件,于是,我打算把它搬到D盘去,给C盘腾出点空间来。但是呢,我在【系统属性】里设置了N次,每次重启后都是弹出那句令人崩溃的:“本文,主要是为了复盘一下这次的排坑经历,从底层彻底解决这个顽疾。
2026-04-29 23:49:57
610
原创 面试官:你有用过Java的流式吗?比如说一个列表.stream这种,然后以流式去处理数据。
面试官问:你有用过Java的流式吗?比如说一个列表.stream这种,然后以流式去处理数据。
2026-04-18 15:03:48
96
原创 面试官:SpringBoot里面会有一些注解,比如@Controller,这个是作什么用的?@Service呢?
面试官:“我看你简历上写了SpringBoot,那SpringBoot里面会有一些注解,比如@Controller,这个是作什么用的?@Service呢?这个问题,如果你只是回答“一个是控制层,一个是业务层”,那是远远不够的。首先,不管是@Service还是,它们的底层其实都是@Component。你可以把它们理解为给类打上的、带不同语义的 “标签”。它们本质上都是@Component的派生注解,Spring 启动时会执行组件扫描,只要类上带着@Component。
2026-04-16 18:02:39
310
原创 面试官:String是基础类型吗?Object有哪些通用方法?
方法作用备注equals比较对象是否相等默认比地址,业务通常比内容hashCode获取哈希码和 equals 是“连体的”,必须同时重写toString对象的字符串描述方便调试和日志记录getClass获取类信息反射的基石clone拷贝对象注意深浅拷贝的区别线程间通信必须配合 synchronized 使用。
2026-04-16 17:15:57
300
原创 量化Python笔试题
map 是一个 “映射工具”,主要是从 a 里按顺序取一个数,从 b 里按顺序取一个数,然后把这两个数扔给lambda定义的匿名函数做乘法。接受函数作为参数或返回函数的函数被称为“高阶函数”(Higher-order function)。是一个匿名函数(没有名字的小函数),作用是:接收两个数 x 和 y,返回它们的乘积。选项A和B都是创建字典的正确方式,两种方式均有效,只是字面量写法A更常用。是其他语言(如 PHP)的关键字,在 Python 中使用会报错。Python 的默认参数在函数定义时仅评估一次。
2026-04-14 23:45:00
289
原创 量化C++笔试题
在C++中,创建子类并没有像 Java 那样的专用关键字(如 extends),而是继续使用 class(或 struct)关键字来定义新类,并通过冒号(:)符号来表示继承关系。实际上,选项 A(栈 std::stack)、B(队列 std::queue)和 D(链表 std::list)在 C++ 标准库(STL)中全部都是模板类。严格来说,void 是一个数据类型(表示无类型),而不是一种“语句”,而C++ 定义函数时必须指定返回类型。**q 等同于 *(*q) ➡️ *§ ➡️ x,所以输出 10。
2026-04-12 12:12:49
82
原创 为什么基于Selenium实现浏览器自动化操作时,建议搭配WebDriverManager使用以及什么是WebDriver?
Selenium是一套完整的Web自动化测试工具集,而WebDriver是其中最核心的组件。我们写的代码(比如),会被WebDriver转换成浏览器能识别的协议命令(比如W3C WebDriver协议)。浏览器收到命令后执行操作(网页截图),再把结果通过WebDriver返回给我们的代码。这些驱动都是 Chrome、Firefox 等浏览器厂商官方维护发布的,而非 Selenium 官方提供,这也是浏览器版本更新后,对应驱动必须同步更新的原因。
2026-04-11 12:57:34
255
原创 一文吃透TCP三次握手与四次挥手
两次握手只能保证客户端确认服务端的收发能力正常,服务端却没法确认客户端的接收能力是正常的。官话那么多,举个例子好理解一点:如果客户端发的同步标志位(SYN=1)报文在网络里滞留了,客户端自己都放弃了,但是,这个报文在滞留结束后,还是来到了服务端。这种情况,如果是两次握手,服务端收到后就会直接建立连接,一直等着客户端发数据,但是,客户端根本就不认这个连接,也不会发数据,这样就白白浪费了服务端的资源。
2026-04-10 20:10:09
433
原创 面试官:你知道CAS,Compare and swap吗
聊CAS之前,得先说说写并发代码最头疼的事——多线程同时改一个共享变量,怎么保证线程安全?最常用的就是加锁,比如或者Lock,但不管哪种锁,只要涉及到线程阻塞和唤醒,就有性能开销,尤其是高并发场景下,大量线程抢锁,CPU光花在上下文切换上了,很不划算。那有没有无锁的线程安全方案呢?有,这就是CAS。CAS全称它的执行规则只有一条:只有当内存地址V里的真实值,等于我们预期的旧值A时,才会把V的值更新成B;否则不执行更新,返回当前V的真实值。整个操作是原子的,执行中途不会被其他线程打断。
2026-04-07 19:38:44
221
原创 Spring Boot + Vue 前后端联调踩坑记录
最近在搞那个 AI 内容创作平台 的前后端联调,踩了一堆坑,从 SSE 时序到参数类型,再到响应数据结构,一个接一个。本文记录一下,大概有4个比较典型的。
2026-04-03 18:24:30
455
1
原创 哈希、对称_非对称加密、数字签名,一次性讲清
不管你输入多长的内容,它都能生成固定长度的哈希摘要字符串;相同的输入,永远会得到完全相同的输出;最关键的是它单向不可逆,也就是说你没法从生成的哈希摘要,反推出原来的原始数据。理论上它存在哈希碰撞的概率(也就是两个不同的输入,生成了相同的哈希值),但在正常的生产环境里,这个概率可以完全忽略不计。
2026-04-02 18:43:59
487
原创 别再搞混了!Redis、Jedis、Lettuce、Spring Data Redis、Redisson、Spring Session Redis 一次讲透
平时做Java开发,只要引入Redis做缓存,pom.xml里总会看到一堆名字相似的东西:一会儿是jedis,一会儿是lettuce,还有Spring Data Redis、Redisson、Spring Session Redis……刚接触的时候真的头大,甚至会把Redis服务端和Java客户端混为一谈,踩了不少坑。今天就把这些东西理清楚,分清谁是底层、谁是封装、谁是专门解决某个场景的。
2026-04-01 19:17:35
614
原创 Java线程与操作系统线程的生命周期
平时不管是面试还是线上排查问题,线程生命周期都是绕不开的点,但我发现Java线程的状态和操作系统(OS)底层的线程状态很容易搞混,本文就来理清楚二者的区别。先说个大前提:我们常用的HotSpot虚拟机,采用的是——也就是说,你在Java代码里new的一个Thread,会直接映射到操作系统的一个内核线程,JVM本身不参与线程的调度,调度权完全在操作系统内核手里。JVM只是对内核线程的状态做了一层封装和抽象,这也是两者状态不一样的根本原因。
2026-04-01 14:12:15
426
原创 一篇搞懂:Java包名、Maven artifactId、Spring application.name到底有啥区别?
项目文件夹叫,Java包名是,Maven的artifactId是,Spring配置里还有个叫。这几个到底有啥区别?必须要对上吗?其实,这几个是完全不同维度、不同作用、没有任何强制绑定关系的配置,给谁用、管什么、能不能乱改,差别还是挺大的。我就用项目当例子,先从最核心、最容易踩语法坑的 Java 包名说起。
2026-03-27 21:33:09
449
原创 一篇搞懂:LangChain4j结构化输出、TokenStream、SSE、Flux、Reactor到底是什么?
结构化输出、TokenStream、SSE、Flux、Reactor这几个概念刚接触时感觉很混乱,本文就来理一理,我用【AI生成一个电商商品详情页】的真实项目场景,把这些概念串起来,从业务需求到底层技术,一次性搞明白。
2026-03-26 20:42:49
322
原创 【面试真题拆解】十万用户并发下,Caffeine+Redis+MySQL多级缓存怎么设计?
面试官问了这么一道场景题:“平台用了Caffeine本地缓存、Redis分布式缓存、MySQL数据库,现在有十万个用户同时访问,相当于每个用户对应一个请求,这多级缓存该怎么设计?多级缓存就是“分层扛压”,把十万用户的请求,从快到慢、从近到远,一层层分流,别让所有请求都直接打MySQL。
2026-03-26 14:59:06
406
原创 【面试真题拆解】你知道登录用到的Token是什么吗?
用户注册登录模块几乎是每一个项目都有的,有一次面试的时候,面试官问:你既然说到了登录,那你知道Token是什么吗?一句话:Token = 用户登录成功后,服务器给你颁发的一张加密的临时电子通行证,最常用的就是 JWT 格式的 Token。它本质上就是一段加密字符串,作用就是证明三件事:你是谁、你已登录、你有权限访问这个接口。
2026-03-26 12:06:32
303
原创 【面试真题拆解】为什么用SSE做流式输出?和WebSocket有啥区别?
面试官问:“你项目里用了SSE做流式输出,为什么选SSE?它的原理你知道吗?为什么不用WebSocket?
2026-03-25 17:41:32
471
原创 【面试真题拆解】平时会收发短信吧?你知道短信里那种 `CodeEdge` 的短链接,点击之后是怎么跳转到长链接的?它是怎么生成的?
面试官问:“平时会收发短信吧?你知道短信里那种xxxxx的短链接,点击之后是怎么跳转到长链接的?它是怎么生成的?
2026-03-24 21:34:02
539
原创 Spring Boot + 通义千问 AI 数据分析助手:一句话生成 SQL + 图表 + 智能结论
用户输入一句自然语言 → 系统自动解析意图 → 智能生成 SQL → 执行查询 → 自动出图表 + 专业分析结论。我用 Spring Boot 3.2 + 通义千问 API打造了一个。可以作为学习 LLM + 数据库落地的案例。
2026-03-24 16:19:59
1520
原创 【面试真题拆解】Java里面的线程池都有哪些参数?
那下一个问题,面试官接着问:“ Java里面的线程池都有哪些参数?我当时就记得“核心线程数、最大线程数”,其他的应该还有5个,支支吾吾答不上来,直接就凉了。线程池是用来管理线程的,避免频繁创建和销毁线程带来的性能开销。来一个任务就招一个新工人(创建线程),任务干完就辞退(销毁线程),频繁招工辞退,效率极低,还费钱;
2026-03-22 15:09:10
591
原创 【面试真题拆解】Java的Static关键字到底怎么用?
面试官上来就问:“ 那个Java里面的Static关键字,一般是怎么用?一句话:Static是“类级别的”,不是“实例级别的”。被Static修饰的东西,属于,所有实例共用一份,不用new对象就能直接用;而没被Static修饰的东西,属于,每个实例有自己的一份,必须new对象才能用。
2026-03-22 13:06:05
332
原创 【面试真题拆解】你知道ThreadLocal是什么吗
ThreadLocal 是线程专属的,它的设计是给每个线程创建一份独立的变量副本,线程之间完全不共享数据,天然实现线程隔离,全程无锁竞争,性能远高于加锁保证线程安全的方案。每个Thread内部都有一个专属的成员变量(不是的!),Key是实例本身(弱引用),Value是存的变量(强引用)。官话太多,直接上例子。
2026-03-21 17:34:29
406
原创 【面试真题拆解】被问懵的计算机网络7层_5层_4层模型
好几次面试都被问了计算机网络模型,一次是让我讲讲7层模型,还有让我讲讲5层模型,4层模型的。这群面试官完全不按套路出牌,昨天刚问完 7 层模型,今天就换成了 4 层模型。我当场脑子一片空白,支支吾吾说不清楚,直接就凉了。首先,为什么会有三个版本?这是国际标准化组织定的,是网络分层的“祖宗”,但实际互联网几乎不用。互联网实际在用的,我们现在上网、写代码用的HTTP、TCP、IP,全是基于这个模型跑的,是真正“干活”的模型。国内计算机教材最常用的,把4层模型的最底层拆成了2层,方便理解学习。
2026-03-21 09:04:13
502
原创 【面试真题拆解】5秒内限10次HTTP接口访问,结合数据结构和算法说说你的思路
面试官问:做Web项目的时候,会暴露出一些HTTP接口,我现在想对它进行限流,限制5秒内只能访问10次,结合数据结构和算法,看如何实现,说说你的思路当时只说了个滑动窗口就没说其他的,然后就没有然后了。。。首先,为什么要限流?
2026-03-20 15:00:00
482
大模型微调与部署实战:LoRA/QLoRA微调、DPO对齐与vLLM量化部署全流程项目源码及教程
2026-08-11
API接口设计规范实战包:RESTful/GraphQL/gRPC设计与OpenAPI版本管理测试模板
2026-08-11
Go语言+WebSocket+多房间实时聊天应用完整源码
2026-06-03
Windows 平台 OpenClaw 非系统盘安装及千问大模型配置
2026-03-26
Java Spring Boot停车场管理系统毕业设计实战项目
2026-03-26
Java Spring Boot + 通义千问 AI 数据分析助手:自然语言转 SQL 智能分析系统完整项目源码
2026-03-24
STM32串口发送字符或字符串控制LED灯
2022-01-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅