- 博客(85)
- 收藏
- 关注
原创 freeswitch的proxy_media模式下video流的问题与修正
其实人的一生只有在懵里懵懂的时候感觉很长,当知晓了这个世界的运行规则和往后要走的路的期望的时候就会感觉时间过得太快了。和大多数人一样,创业极少是那么顺利的。在上家公司呆了10几年,年复年,日复日的工作,实在是感觉人生快走到头了,没啥变化了。智能购物推荐 - 对话方式获取多个平台的商品信息并支持一键跳转购买,只是为了方便一次性获取对比多个购物平台的商品信息,不用跳来跳去的。项目主要用到的开发框架是langchain.js,对的,没错,纯js开发的,包括前后端。网页是自适应的,服务器环境也是我自己搭建的。
2025-11-19 21:24:29
269
1
原创 从w到w播放量,我的一点思考。
哟吐磊肛Blazor 是由Microsoft开发的一款基于.NET的开源交互式Web UI框架。Blazor使开发人员能够使用C#和HTML建立全堆栈的单页应用程序,并避免使用JavaScript。Blazor基于组件模型,该模型提供了以具有强类型的符合Razor标准的页面和组件的形式构建用户界面的能力。Blazor的加入使得.NET开发人员有机会在客户端和服务器上使用同一种编程模型,同时享受到.NET的优势,比如其功能强大的运行时,标准库,语言互操作性和辅助开发者高效开发的工具等。
2025-11-19 21:20:41
937
原创 Bun v. 重磅发布:一站式全栈 JS 运行时,前端开发、数据库、Redis 全内置
这里需要知道dapo的reward_manager_cls 具体是什么,因为reward需要batch数据才能计算,因此对于reward manager咱们先按下不表(其实dapo对应的reward_manager_cls是在verl/verl/workers/reward_manager/dapo.py),先去dapo_ray_trainer.py看一下batch是怎么采样的,再回来仔细阅读reward的具体计算方法。# max_num_gen_batches是最多可以使用的gen_batch的个数。
2025-11-19 21:17:04
688
原创 WM有约II(七):番外篇
Console.WriteLine($"性能提升:{((watch1.ElapsedMilliseconds - watch2.ElapsedMilliseconds) / (double)watch1.ElapsedMilliseconds):P2}");这会延长对象的生命周期,因为 GC 会认为这个对象 “仍在被使用”。例如,元组解构时,var (_, name, _) = data 生成的 IL 代码仅包含对 name 的存储指令,而传统方式会包含所有成员的存储指令,减少了 CPU 执行的指令数。
2025-11-19 21:13:39
649
原创 前端性能分析工具:dynaTrace Ajax Edition
一般为了美观会增加一点圆角,可以使用在线的工具增加一下圆角,然后通过png转ico工具制作ico图片。首先想一下这个项目图标想要运用在哪些地方。在WPF中你想为你的应用增加你的项目图标主要在这三个地方。以上就是在开发WPF应用时如果你想为这个应用添加自己的图标最常设置的几个地方,希望对你有所帮助。本文梳理一下怎么给WPF应用增加自己的项目图标,还是以Rouyan为例进行说明。将指定的文件标记为WPF应用程序的资源文件。文件会随应用程序一起分发,不需要单独部署。1、应用程序图标设置。3、系统托盘图标设置。
2025-11-18 22:28:42
317
原创 (原创)构建嵌入式小型Linux系统
通信顺序进程(Communicating Sequential Process,CSP)是 Tony Hoare 在 1978 年提出的一种描述并发系统交互的模式,它正是Golang并发模型的灵感源泉。该模型的另一显著特征是,消息的发送与接收是异步进行的。CSP模型的关键特性是,进程的执行不会受到其他进程的直接影响,进程间的交互仅通过通道发送和接收消息来实现。Golang通过轻量级的Goroutine和通信机制Channel,实现了CSP模型的核心思想,即通过消息传递而非共享内存实现并发控制。
2025-11-18 22:25:01
268
原创 对于事件、事件流、事件触发的顺序随便说说
如果你看到了“别动”的标签(底层 const 修饰的指针),想根据这个标签给瓶子再贴一个标签,或者把别的瓶子上的标签移过来(创建新指针/修改旧指针),那么另一个标签上也得写“别动”(底层 const 修饰)。但是你还是可以根据这个标签,移动其它可以移动的标签(将其它无顶层 const 修饰的指针,赋值为它),或者创建一个新的标签,是否为强力胶都可以(创建新的指针时,顶层 const 修饰并不重要)。顾名思义,指针本身是常量,不能变(不能改变保存的位置,即不能修改它指向的对象是哪一个)。
2025-11-18 22:20:35
379
原创 正因为我们是前端,所以代码更需要优雅
的分布可能非常复杂,甚至是多模态的,即在某个状态下,数据集中可能存在多组不同的、有效的动作。通过使用去噪模型(denoising model)将杂乱的观察结果转移(transfer)到干净的观察结果上,SCMA 可以作为各种 policy 的即插即用的增强功能,以减轻视觉上的干扰。然而,这些方法可能会施加过度的限制或有偏见的价值估计,从而可能限制性能改进。虽然许多方法利用探索奖励来鼓励探索,而不是仅仅依赖外在奖励,但这些基于奖励的方法往往面临学习效率和可扩展性的挑战,尤其是在具有高维状态空间的环境中。
2025-11-18 22:16:35
290
原创 NHibernate实例分享:Northwind Mapping
查看switch_core_media.c的switch_core_media_patch_sdp函数,在处理video信息时,强制重选了video本地端口,而audio端口处理正常。查看调用堆栈,mod_sofia模块在处理183sdp的流程中,proxy_media模式下会主动调用“switch_core_media_patch_sdp”这一并无必要的操作。经过修改后的fs虽然可以正常转发rtp媒体流,但是仍然无法转发rtcp消息,在网络较差的情况下,视频媒体流无法利用rtcp的特性修复视频卡顿。
2025-11-17 21:11:55
299
原创 跟我一起学写jQuery插件(附完整实例及下载)
至于这个端口为3000的服务,我是用了一个docker安装的镜像为zenato/puppeteer-renderer的容器,对外端口为3000,作用就是进行服务端渲染。Vue类型的博客的内容是通过实时加载去渲染的,如果蜘蛛只获取了html而没有去加载js的话实际是没有内容的。对于live2d,基础的js和css的优化就不说了,顺便提一下live2d的图片因为要拼接起来,所以很大,记得也要压缩。gzip是针对文本类型进行压缩的,例如html、js、css、txt等格式,可以在nginx处打开。
2025-11-17 21:07:53
279
原创 关于using及foreach的一点看法,及其他
console.log('难度提升至: ' + this.difficulty.toFixed(1));type: Math.floor(Math.random() * 3), // 0-2随机形状。// 确保UI在最上层。size: Math.random() * 4 + 3 // 放大5倍。Math.random() * 80 - 40, // X: -40到40随机位置。Math.random() * 10 - 5 // Z: -5到5增加深度变化。
2025-11-17 21:03:11
906
原创 PDC :微软采用HTML 搞砸自己Web战略个原因[原文]
前邮谌捞模型原理与特点Kajiya-Kay模型是一种专门用于模拟头发、毛发等纤维状材质各向异性高光的光照模型,其核心特点是用切线方向替代传统法线方向计算高光反射。该模型具有以下特性:?切线空间计算?:使用切线向量(Tangent)或副切线(Bitangent)替代法线向量,通过TdotH = dot(tangent, halfVector)计算高光强度,再转换为TsinH = sqrt(1 - TdotH2)实现条状高光效果。?双层高光特性?:主高光(Primary Specular)靠近发梢,次高光(Se
2025-11-17 20:58:49
241
原创 面向对象实践之路-提升抽象层次
很明显的,由于client和server的数量是非常多的(因为多个服务可能公用一个公网IP),所以转发表是一个非常宝贵的资源,一旦转发表满了,就无法创建新的连接路径了。从上面代码中我们可以看到,LVS通过设置的timeout_table来设置转发表项超时时间,而不同的tcp状态会有不同的超时时间,而默认的established的超时时间是15 * 60 * HZ也就是15min。为了解决第一种的方案的问题,我们可以依旧复用连接,只不过这个复用时间特别短,例如6s之内复用,超过6s的连接就直接丢弃。
2025-11-17 20:53:52
241
原创 SQL Server中的Merge关键字
通过利用这些特性,你能写出更高效、清晰、易维护的 PHP 代码。无论是构建小项目还是大型应用,像这样的现代 PHP 工具都能帮你创建更好的软件,在快速演进的 Web 开发世界中保持领先。另外,当处理大量常量时,很容易搞不清它们的含义,也难以确保使用的一致性。随着 Enums、Fibers 和 Attributes 的引入,PHP 开发者现在有了能显著提升代码可读性、性能和可维护性的工具。类型安全:不像 docblocks,attributes 是类的实例,意味着你可以在应用中强制类型检查和验证。
2025-11-16 15:36:25
623
原创 协议森林 瑞士军刀 (ICMP协议)
本文将介绍基于 SurfaceControlViewHost 实现跨进程渲染普通 View 和 GlSurfaceView,力求用最简单的 Demo,介绍 SurfaceControlViewHost 的应用,方便读者轻松扣出核心代码应用到自己的业务中。// 创建SurfaceControlViewHost。// 将View附加到SurfaceControlViewHost。// 创建要渲染的View。
2025-11-16 15:32:12
639
原创 如何通过预加载器提升网页加载速度
如果一个“计算密集型”的进程(比如 A 用户)拿到 CPU,它可能执行很长时间(比如一个耗时循环),导致后面所有“交互密集型”的进程(比如 B、C 用户的轻量任务)都被阻塞,系统响应速度急剧下降。这其实就是操作系统级的时间片轮转调度算法在分布式系统中的应用。“动态权重调整机制”的目的,我个人理解是为了给每个生产者一个合适的权重,从而决定这次生产的任务是应该放在队列的前面还是后面。“吵闹的邻居”会留在轮询队列中,“空闲的邻居”会自动退出,并且无论他们排队的工作量有多少,每个人都能公平地获得处理时间。
2025-11-16 15:28:21
676
原创 代码的印象派:写点好代码吧
一旦虚拟机成功启动,Docker命令行工具就会自动连接到Colima提供的Docker守护进程,此时我们就可以在Mac上正常使用所有Docker命令了。# 当未指定时,会从https://github.com/abiosoft/colima-core/releases下载适当的磁盘镜像。colima start --cpu 1 --memory 2 --disk 10 ## 指定配置启动。# docker daemon的配置,即`daemon.json`# 为虚拟机指定自定义磁盘镜像。
2025-11-16 15:24:02
174
原创 charliethinker
现实生活中,若宫保鸡丁的必需食材(例如花生)突然缺货,真正的专业厨师会主动寻找替代食材,而不会要求顾客重新“下指令”或“换个点餐方式”。同理,在软件中,一个设计得足够“智能”的对象,也应该能在外部条件或业务需求变化时,自行调整内部逻辑,而不影响调用者的使用方式。对 AI 的误导:当 AI 工具在大规模代码库中搜索或补全时,见到“RestaurantService”可能以为这里面能找到任何与餐厅运营相关的逻辑,补全时也可能把更多不相干的功能(例如“采购食材”、“营销活动”等)一股脑塞进来,很容易导致上帝类。
2025-11-16 15:19:37
776
原创 【Redis分布式锁实现】基于 Redis 单节点保姆级教程(Spring Boot 示例)
Assert.assertEquals("[测试, 新增, 新增]", sensitiveWordBs.findAll(text).toString());Assert.assertEquals("[测试, 新增, 新增]", sensitiveWordBs.findAll(text).toString());Assert.assertEquals("[测试, 新增, 新增]", sensitiveWordBs.findAll(text).toString());工具方法配置都是默认的。
2025-11-15 16:42:40
413
原创 【Azure Bot Service】在中国区Azure上部署机器人的 Python 版配置
不要过分指望按照文本主题进行分隔, 因为实战中的资料太多而且没有规律, 根本没办法保证每个chunk是一个完整的主题内容, 哪怕人为干预也很难。由于文本读取过来后, 还需要分成一段一段的片段(分块chunk), 分块是为了更好地拆分语义单元,这样在后面可以更精确地进行语义相似性检索,也可以避免LLM的Token限制。// 不同的PDF生成工具可能使用不同的坐标系 , 如果内容识别有问题, 可以设置该属性为true。接下来,如果每个块的大小超出了预定义的块大小限制,则将其拆分成更小的块。
2025-11-15 16:38:35
886
原创 你应该懂的AI大模型(十三) 之 推理框架
当你的程序调用一个 CUDA API(比如申请显存)时,HAMi-core 会先“劫持”这个请求,然后根据你设置的限制(比如 2GB 显存)进行判断和管理,最后再把一个“修改过”的请求或者一个“虚拟”的响应回传给你的程序。这就像一场没有规则的“大乱斗”。在 AI 大模型“军备竞赛”白热化的今天,谁能把算力用得更精、更省,谁就掌握了未来的主动权。总结一下,HAMi 可以将 GPU 从一个混乱、不可预测的“公共资源”,转变为多个独立、稳定、可度量的“私有资源”,这就是它实现 GPU 高效利用的核心所在。
2025-11-15 16:34:05
861
原创 当加密ID需要变成Guid:为什么我选择了AES-CBC而非GCM?
destPath: 'xxxx/a.zip' // destPath是接收文件的自定义路径,完整的沙箱路径是fileStoragePath+destPath,详情请参见应用沙箱目录。srcPath: '/data/xxxx/a.zip', // srcPath是需要发送文件的沙箱路径,详情请参见应用沙箱目录。needShowSystemUI: false // 是否展示系统UI,true为展示,false为不展示,默认为false。若当前设备为接收端,请设置为true,否则请设置为false。
2025-11-15 16:28:59
513
原创 Java MCP 的鉴权?好简单的啦
但是在复杂系统中,不同的业务消息(例如“下单”、“扣库存”、“发积分”)在投递失败时,需要采取不同的补偿逻辑。策略模式的核心思想是:定义一系列算法(或行为),让它们可以相互替换,且算法的变化不会影响使用算法的客户。//根据bean的名称从map中获取相应的实现类。
2025-11-15 16:23:47
713
原创 谁说的YOLO只能目标检测?手把手教你解锁它隐藏的热力图视野!
Assert.assertEquals("[测试, 新增, 新增]", sensitiveWordBs.findAll(text).toString());Assert.assertEquals("[测试, 新增, 新增]", sensitiveWordBs.findAll(text).toString());Assert.assertEquals("[测试, 新增, 新增]", sensitiveWordBs.findAll(text).toString());工具方法配置都是默认的。
2025-11-14 14:18:19
421
原创 Redis缓存一致性
不要过分指望按照文本主题进行分隔, 因为实战中的资料太多而且没有规律, 根本没办法保证每个chunk是一个完整的主题内容, 哪怕人为干预也很难。由于文本读取过来后, 还需要分成一段一段的片段(分块chunk), 分块是为了更好地拆分语义单元,这样在后面可以更精确地进行语义相似性检索,也可以避免LLM的Token限制。// 不同的PDF生成工具可能使用不同的坐标系 , 如果内容识别有问题, 可以设置该属性为true。接下来,如果每个块的大小超出了预定义的块大小限制,则将其拆分成更小的块。
2025-11-14 14:13:48
943
原创 为什么要用async、await ?
当你的程序调用一个 CUDA API(比如申请显存)时,HAMi-core 会先“劫持”这个请求,然后根据你设置的限制(比如 2GB 显存)进行判断和管理,最后再把一个“修改过”的请求或者一个“虚拟”的响应回传给你的程序。这就像一场没有规则的“大乱斗”。在 AI 大模型“军备竞赛”白热化的今天,谁能把算力用得更精、更省,谁就掌握了未来的主动权。总结一下,HAMi 可以将 GPU 从一个混乱、不可预测的“公共资源”,转变为多个独立、稳定、可度量的“私有资源”,这就是它实现 GPU 高效利用的核心所在。
2025-11-14 14:09:09
495
原创 Oracle c asm单机OPatch补丁报错“checkSystemCommandAvailable“ failed.
destPath: 'xxxx/a.zip' // destPath是接收文件的自定义路径,完整的沙箱路径是fileStoragePath+destPath,详情请参见应用沙箱目录。srcPath: '/data/xxxx/a.zip', // srcPath是需要发送文件的沙箱路径,详情请参见应用沙箱目录。needShowSystemUI: false // 是否展示系统UI,true为展示,false为不展示,默认为false。若当前设备为接收端,请设置为true,否则请设置为false。
2025-11-14 14:04:27
899
原创 鸿蒙应用开发从入门到实战(十一):ArkUI组件Text&TextInput
但是在复杂系统中,不同的业务消息(例如“下单”、“扣库存”、“发积分”)在投递失败时,需要采取不同的补偿逻辑。策略模式的核心思想是:定义一系列算法(或行为),让它们可以相互替换,且算法的变化不会影响使用算法的客户。//根据bean的名称从map中获取相应的实现类。
2025-11-14 13:59:28
406
原创 一款专门为 WPF 打造的开源 Office 风格用户界面控件库
但是每个 LLM 框架的 Plugin 实现方式不一样,其使用和实现机制跟语言特性深度绑定,不能实现跨服务跨平台使用,所以出现了 MCP Tool, MCP Tool 是对标 Plugin 的一类功能,主要目的跟 Plugin 一样提供 Function,但是 MCP 有统一协议标准,跟语言无关、跟平台无关,但是 MCP 也不是完全替换 Plugin ,Plugin 依然具有很大的用武之地。
2025-11-13 16:53:50
323
原创 ControlNet——AI图像生成的“精准操控工具”
这篇论文语义Id的生成也是用的tiger论文提出的RQVAE方法,只不过这里是将语义Id用于排序阶段,将语义Id作为增强特征与其他特征进行拼接后,送入传统的排序模型。然而,这种“死记硬背”的方式也带来了明显的弊端:模型对新出现的、缺乏交互的长尾物品束手无策,因为这些随机ID本身不携带任何语义信息,无法帮助模型进行泛化推理。原理: 借鉴NLP中广泛应用的SentencePiece模型,该方法不再使用固定的N,而是根据ID组合在训练数据中出现的频率,动态地、自适应地学习最优的子词切分方案。
2025-11-13 16:49:36
388
原创 前端框架文档新思路:基于源码解析的自动化方案
Font里有各种各样的表,存储了Unicode code point与GlyphID的映射关系,每个Glyph绘制时的advance width 和left side bearing等,后续会有单独的文章详细解析Font文件内容,这里先理解二者的概念。一个字符可以有多种方式绘制,比如字母A,可以有不同的大小、粗细、斜体、衬线等,但都是同一个字符;这些不同的绘制方式,都叫字形。Character也叫字符,是一个抽象概念,比如字母A、中文你等都可以视为一个字符,它只是一个语义单位,不关心具体长什么样。
2025-11-13 16:44:15
332
原创 RFSOC学习记录(六)混频模式分析
俗喊康诖NET 团队在官方博客上发布了.NET 10 RC2[1], .NET 10 作为继 .NET 9 后的长期支持版本(LTS),提供3年官方支持。RC2 是正式版(GA)前的最终候选版本,已具备生产环境可用性(Go-Live License),支持企业级部署。.NET MAUI:XAML 强类型源码生成器提升构建性能与 IntelliSense 支持,新增 ShadowTypeConverter、Switch.OffColor 等控件 API。RC1(2025年9月10日):聚焦稳定性与性能优化。
2025-11-13 16:39:30
353
原创 Serverless社区
汉股匾渴NET 团队在官方博客上发布了.NET 10 RC2[1], .NET 10 作为继 .NET 9 后的长期支持版本(LTS),提供3年官方支持。RC2 是正式版(GA)前的最终候选版本,已具备生产环境可用性(Go-Live License),支持企业级部署。.NET MAUI:XAML 强类型源码生成器提升构建性能与 IntelliSense 支持,新增 ShadowTypeConverter、Switch.OffColor 等控件 API。RC1(2025年9月10日):聚焦稳定性与性能优化。
2025-11-13 16:33:14
283
原创 读《输赢》所想到的——关于CRM和团队管理
而且是纯粹的那种,不要框架,只依赖原生。早期 JavaScript 没有类的概念,通过 “构造函数+原型链” 模拟面向对象,this 因“动态绑定”特性,从强类型语言的角度看,其表现堪比怪物,this 指向完全依赖调用方式,稍不注意就出错。继承的先父后子,无论是隐式调用父类无参构造,还是显式调用有参构造,父类的构造函数总是先执行,父类成员先行完成初始化,不会出现子类访问未就绪的父类属性的情况。JavaScript 的 this 像怪物,核心是指向由函数调用时的方式决定,属于动态绑定,而非定义时的静态绑定。
2025-11-12 15:18:15
548
原创 重温数据库访问——故事篇
但是每个 LLM 框架的 Plugin 实现方式不一样,其使用和实现机制跟语言特性深度绑定,不能实现跨服务跨平台使用,所以出现了 MCP Tool, MCP Tool 是对标 Plugin 的一类功能,主要目的跟 Plugin 一样提供 Function,但是 MCP 有统一协议标准,跟语言无关、跟平台无关,但是 MCP 也不是完全替换 Plugin ,Plugin 依然具有很大的用武之地。
2025-11-12 15:13:12
547
原创 从团购网的漏洞看网站安全性问题
这篇论文语义Id的生成也是用的tiger论文提出的RQVAE方法,只不过这里是将语义Id用于排序阶段,将语义Id作为增强特征与其他特征进行拼接后,送入传统的排序模型。然而,这种“死记硬背”的方式也带来了明显的弊端:模型对新出现的、缺乏交互的长尾物品束手无策,因为这些随机ID本身不携带任何语义信息,无法帮助模型进行泛化推理。原理: 借鉴NLP中广泛应用的SentencePiece模型,该方法不再使用固定的N,而是根据ID组合在训练数据中出现的频率,动态地、自适应地学习最优的子词切分方案。
2025-11-12 15:08:14
262
原创 Windows Phone 培训总结
Font里有各种各样的表,存储了Unicode code point与GlyphID的映射关系,每个Glyph绘制时的advance width 和left side bearing等,后续会有单独的文章详细解析Font文件内容,这里先理解二者的概念。一个字符可以有多种方式绘制,比如字母A,可以有不同的大小、粗细、斜体、衬线等,但都是同一个字符;这些不同的绘制方式,都叫字形。Character也叫字符,是一个抽象概念,比如字母A、中文你等都可以视为一个字符,它只是一个语义单位,不关心具体长什么样。
2025-11-12 15:02:48
412
原创 细说 ASP.NET控制HTTP缓存
衫鄙棺备NET 团队在官方博客上发布了.NET 10 RC2[1], .NET 10 作为继 .NET 9 后的长期支持版本(LTS),提供3年官方支持。RC2 是正式版(GA)前的最终候选版本,已具备生产环境可用性(Go-Live License),支持企业级部署。.NET MAUI:XAML 强类型源码生成器提升构建性能与 IntelliSense 支持,新增 ShadowTypeConverter、Switch.OffColor 等控件 API。RC1(2025年9月10日):聚焦稳定性与性能优化。
2025-11-12 14:57:15
260
原创 如何优雅的使用RabbitMQ
而且是纯粹的那种,不要框架,只依赖原生。早期 JavaScript 没有类的概念,通过 “构造函数+原型链” 模拟面向对象,this 因“动态绑定”特性,从强类型语言的角度看,其表现堪比怪物,this 指向完全依赖调用方式,稍不注意就出错。继承的先父后子,无论是隐式调用父类无参构造,还是显式调用有参构造,父类的构造函数总是先执行,父类成员先行完成初始化,不会出现子类访问未就绪的父类属性的情况。JavaScript 的 this 像怪物,核心是指向由函数调用时的方式决定,属于动态绑定,而非定义时的静态绑定。
2025-11-11 14:38:51
557
原创 从零开始入门 Ks | 手把手带你理解 etcd
但是每个 LLM 框架的 Plugin 实现方式不一样,其使用和实现机制跟语言特性深度绑定,不能实现跨服务跨平台使用,所以出现了 MCP Tool, MCP Tool 是对标 Plugin 的一类功能,主要目的跟 Plugin 一样提供 Function,但是 MCP 有统一协议标准,跟语言无关、跟平台无关,但是 MCP 也不是完全替换 Plugin ,Plugin 依然具有很大的用武之地。
2025-11-11 14:34:15
329
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅