- 博客(60)
- 收藏
- 关注
原创 vite动态引入图片
当数据值超过一层时,就用更深的颜色或不同的颜色填充。流图通过中心布局,减少了这种扭曲,非常适合展示随时间变化的趋势和不同类别权重的波动,这种有机的形态还能给读者带来极强的审美愉悦感。如果把传统的堆叠面积图想象成一块块整齐堆叠的积木,那么流图就像一条蜿蜒流淌的河流,河道的宽窄变化自然流畅,波峰波谷过渡平滑。流图解决了一个视觉错觉问题:在普通堆叠面积图中,上面的数据层会因为下面数据层的起伏而被迫“扭曲”,很难看出它原本的形状。# ============ 地平线图:股价波动对比 ============
2026-05-07 18:03:19
110
原创 PageCache瞬间飙升,原来是日志搞的鬼
本文介绍的关键优化技巧包括:基于测量的针对性优化、内存管理最佳实践、高效的异步编程模式、合理的数据结构选择、数据库访问优化以及生产环境监控等。值得注意的是,性能优化应当遵循"先测量后优化"的原则,避免过早和过度的优化。同时,在追求性能提升的过程中,不应牺牲代码的可维护性和可读性。通过平衡各种因素,开发者可以构建出既高效又健壮的 .NET 应用程序,为用户提供流畅的使用体验,为企业创造更大的价值。最终,持续学习最新的 .NET 性能优化技术,结合实际应用场景进行实践和验证,是保持应用竞争力的关键。
2026-05-07 17:56:23
65
原创 分钟搞懂深度学习AI:实操篇:LSTM/GRU
实际行为:服务器发完剩余数据后,内核构造FIN+ACK报文(FIN=1表示关闭自身数据流,ACK=1确认之前的交互),序号seq=w(w是服务器最后一次发数据的序号+1),确认号ack=u+1(与第二步的ack一致,因为客户端此时已无数据发送),发送给客户端。停止发送新数据,将未发完的数据一次性发完,然后构造FIN+ACK报文(FIN=1表示关闭自身数据流,ACK=1确认之前收到的服务器数据),序号seq=u(u是客户端最后一次发数据的序号+1),确认号ack=v(v是服务器最后一次发数据的序号+1);
2026-05-07 17:48:37
34
原创 【故障公告】数据库服务器磁盘 MBPS 高造成 :-: 期间全站故障
Trae CN:在solo模式下,可以选择Doubao-Seed-Code、GLM、MiniMax和Kimi-K2,在IDE模式下,模型选择多了“Doubao-Seed-1.8”、“DeepSeek-V3.1-Terminus”和"Qwen-3-Coder"ate:模式选择最多“Zulu”、“Ask”、“Plan”、“Architech”、“Page Builder”、“Figma2Code”,模型可以选“Kimi”、“DeepSeek”、“GLM”和“MiniMax”。这明显是想让我先用IDE。
2026-05-07 17:39:10
47
原创 stock-sdk-mcp 的实践整理
项目内存 ./CLAUDE.md 或 ./.claude/CLAUDE.md 项目的团队共享说明 项目架构、编码标准、常见工作流 通过源代码控制的团队成员。项目规则 ./.claude/rules/*.md 模块化、特定主题的项目说明 特定于语言的指南、测试约定、API 标准 通过源代码控制的团队成员。项目内存(本地) ./CLAUDE.local.md 个人的项目特定偏好设置 您的沙箱 URL、首选测试数据 仅您(当前项目)
2026-05-07 17:31:04
37
原创 PageCache瞬间飙升,原来是日志搞的鬼
今天,我们就来聊聊为什么选择它,以及它是如何让我们的开发体验"起飞"的。用过 Python 写构建脚本的朋友肯定遇到过这种尴尬:脚本跑了五分钟,最后报错说 Confi.guration 拼写错了,或者传了一个字符串给了一个本该是数字的参数。当然,这不是绝对的。比如如果你只想跑个测试,不想打包,Nuke 允许你直接执行 nuke Test,它会自动处理好前置的 Restore 和 Compile 步骤。爱的是,一键点击,代码变成产品,那是程序员最迷人的时刻;恨的是,维护那一堆乱糟糟的构建脚本,简直是噩梦。
2026-05-06 22:45:20
173
原创 分钟搞懂深度学习AI:实操篇:LSTM/GRU
print("工具调用:" + func_name + ",参数:" + str(func_args) + ",结果:" + tool_output)print("工具调用:" + func_name + ",参数:" + str(func_args) + ",结果:" + tool_output)print("="*20+"\n第"+str(i+1)+"轮\n"+query+"\n"+"="*20)print("="*20+"\n第"+str(i+1)+"轮\n"+query+"\n"+"="*20)
2026-05-06 22:39:50
138
原创 【故障公告】数据库服务器磁盘 MBPS 高造成 :-: 期间全站故障
这里用的ChatPromptTemplate.from_template和上的ChatPromptTemplate.from_messages不同,区别在于前者比较简单,相当于后者直接用user字典的形式,后者from_messages有langchain框架提供的prompt模板。"你是一位高考作文专家。langchain中提供的chain链组件,能够帮助我门快速的实现各个组件的流水线式的调用,和模型的问答。"请给主题为 {topic} 的议论文写一个 总-递进-总 的简短大纲,一共分为5段。
2026-05-06 22:33:07
200
原创 stock-sdk-mcp 的实践整理
在 DAD 中,Actor 不再只是并发模型,而是领域的最小自治单元。Mailbox 不是 AI Actor 的边界,也不承担语义职责。没有直接调用,没有结构耦合,只有被理解后的意图驱动执行。而是承认:在 AI 时代,系统必须先“理解”,再“执行”。在 DAD 中,领域的最小自治单元是 AI Actor。Agent 才是 AI Actor 的物理与逻辑边界。所有进入 Actor 的信息,必须先经过 Agent。Agent 是唯一的语义入口,也是唯一的语义出口。领域之间的耦合,从方法签名,转移成了消息结构。
2026-05-06 22:26:08
184
原创 stock-sdk-mcp 的实践整理
在 DAD 中,Actor 不再只是并发模型,而是领域的最小自治单元。Mailbox 不是 AI Actor 的边界,也不承担语义职责。没有直接调用,没有结构耦合,只有被理解后的意图驱动执行。而是承认:在 AI 时代,系统必须先“理解”,再“执行”。在 DAD 中,领域的最小自治单元是 AI Actor。Agent 才是 AI Actor 的物理与逻辑边界。所有进入 Actor 的信息,必须先经过 Agent。Agent 是唯一的语义入口,也是唯一的语义出口。领域之间的耦合,从方法签名,转移成了消息结构。
2026-05-06 22:20:16
165
原创 vite动态引入图片
将 Excel 转换为 TXT 不仅是格式的简单转换,更是实现数据自动化流程的重要环节。数据清洗与预处理: 将复杂格式的 Excel 数据转换为 TXT,作为其他数据分析工具(如Spark、Hadoop)的输入源,进行更深层次的处理。配置管理: 将 Excel 中维护的系统配置、参数表等导出为 TXT 格式,便于脚本直接读取,同时更适合使用 Git 等工具进行版本管理。自动化报告生成: 从 Excel 模板中提取数据,生成纯文本格式的报告摘要,方便邮件发送或系统集成。# 将工作表内容保存为TXT文件。
2026-05-05 20:57:26
178
原创 PageCache瞬间飙升,原来是日志搞的鬼
今天,我们就来聊聊为什么选择它,以及它是如何让我们的开发体验"起飞"的。用过 Python 写构建脚本的朋友肯定遇到过这种尴尬:脚本跑了五分钟,最后报错说 Confi.guration 拼写错了,或者传了一个字符串给了一个本该是数字的参数。当然,这不是绝对的。比如如果你只想跑个测试,不想打包,Nuke 允许你直接执行 nuke Test,它会自动处理好前置的 Restore 和 Compile 步骤。爱的是,一键点击,代码变成产品,那是程序员最迷人的时刻;恨的是,维护那一堆乱糟糟的构建脚本,简直是噩梦。
2026-05-05 20:36:41
185
原创 分钟搞懂深度学习AI:实操篇:LSTM/GRU
print("工具调用:" + func_name + ",参数:" + str(func_args) + ",结果:" + tool_output)print("工具调用:" + func_name + ",参数:" + str(func_args) + ",结果:" + tool_output)print("="*20+"\n第"+str(i+1)+"轮\n"+query+"\n"+"="*20)print("="*20+"\n第"+str(i+1)+"轮\n"+query+"\n"+"="*20)
2026-05-05 20:17:17
190
原创 【故障公告】数据库服务器磁盘 MBPS 高造成 :-: 期间全站故障
这里用的ChatPromptTemplate.from_template和上的ChatPromptTemplate.from_messages不同,区别在于前者比较简单,相当于后者直接用user字典的形式,后者from_messages有langchain框架提供的prompt模板。"你是一位高考作文专家。langchain中提供的chain链组件,能够帮助我门快速的实现各个组件的流水线式的调用,和模型的问答。"请给主题为 {topic} 的议论文写一个 总-递进-总 的简短大纲,一共分为5段。
2026-05-05 19:59:36
148
原创 stock-sdk-mcp 的实践整理
在 DAD 中,Actor 不再只是并发模型,而是领域的最小自治单元。Mailbox 不是 AI Actor 的边界,也不承担语义职责。没有直接调用,没有结构耦合,只有被理解后的意图驱动执行。而是承认:在 AI 时代,系统必须先“理解”,再“执行”。在 DAD 中,领域的最小自治单元是 AI Actor。Agent 才是 AI Actor 的物理与逻辑边界。所有进入 Actor 的信息,必须先经过 Agent。Agent 是唯一的语义入口,也是唯一的语义出口。领域之间的耦合,从方法签名,转移成了消息结构。
2026-05-05 19:43:53
196
原创 vite动态引入图片
将 Excel 转换为 TXT 不仅是格式的简单转换,更是实现数据自动化流程的重要环节。数据清洗与预处理: 将复杂格式的 Excel 数据转换为 TXT,作为其他数据分析工具(如Spark、Hadoop)的输入源,进行更深层次的处理。配置管理: 将 Excel 中维护的系统配置、参数表等导出为 TXT 格式,便于脚本直接读取,同时更适合使用 Git 等工具进行版本管理。自动化报告生成: 从 Excel 模板中提取数据,生成纯文本格式的报告摘要,方便邮件发送或系统集成。# 将工作表内容保存为TXT文件。
2026-05-04 20:22:08
189
原创 PageCache瞬间飙升,原来是日志搞的鬼
今天,我们就来聊聊为什么选择它,以及它是如何让我们的开发体验"起飞"的。用过 Python 写构建脚本的朋友肯定遇到过这种尴尬:脚本跑了五分钟,最后报错说 Confi.guration 拼写错了,或者传了一个字符串给了一个本该是数字的参数。当然,这不是绝对的。比如如果你只想跑个测试,不想打包,Nuke 允许你直接执行 nuke Test,它会自动处理好前置的 Restore 和 Compile 步骤。爱的是,一键点击,代码变成产品,那是程序员最迷人的时刻;恨的是,维护那一堆乱糟糟的构建脚本,简直是噩梦。
2026-05-04 20:03:07
132
原创 分钟搞懂深度学习AI:实操篇:LSTM/GRU
print("工具调用:" + func_name + ",参数:" + str(func_args) + ",结果:" + tool_output)print("工具调用:" + func_name + ",参数:" + str(func_args) + ",结果:" + tool_output)print("="*20+"\n第"+str(i+1)+"轮\n"+query+"\n"+"="*20)print("="*20+"\n第"+str(i+1)+"轮\n"+query+"\n"+"="*20)
2026-05-04 19:44:12
217
原创 【故障公告】数据库服务器磁盘 MBPS 高造成 :-: 期间全站故障
这里用的ChatPromptTemplate.from_template和上的ChatPromptTemplate.from_messages不同,区别在于前者比较简单,相当于后者直接用user字典的形式,后者from_messages有langchain框架提供的prompt模板。"你是一位高考作文专家。langchain中提供的chain链组件,能够帮助我门快速的实现各个组件的流水线式的调用,和模型的问答。"请给主题为 {topic} 的议论文写一个 总-递进-总 的简短大纲,一共分为5段。
2026-05-04 19:27:31
232
原创 stock-sdk-mcp 的实践整理
在 DAD 中,Actor 不再只是并发模型,而是领域的最小自治单元。Mailbox 不是 AI Actor 的边界,也不承担语义职责。没有直接调用,没有结构耦合,只有被理解后的意图驱动执行。而是承认:在 AI 时代,系统必须先“理解”,再“执行”。在 DAD 中,领域的最小自治单元是 AI Actor。Agent 才是 AI Actor 的物理与逻辑边界。所有进入 Actor 的信息,必须先经过 Agent。Agent 是唯一的语义入口,也是唯一的语义出口。领域之间的耦合,从方法签名,转移成了消息结构。
2026-05-04 19:09:08
195
原创 VLN 与世界模型的关系
2.使用c命名空间注入属性,语法:c:属性名="属性值" c:属性名-ref="引用类型属性值"</p>// 获取spring容器中的对象。2.使用p命名空间注入属性,语法:p:属性名="属性值" p:属性名-ref="引用类型属性值"--><p> 如果key是简单类型,可以直接使用entry标签的key属性赋值
2026-05-03 21:52:25
244
原创 Oracle RMAN物理备份Web系统
这个要看资源的定义:如果只是管理内存资源,那么这样做是没有问题的,至少是安全的。而关于拷贝语义,绝大多数 C++ 程序员应该都知道这个问题:当在类对象中管理资源时,编译器生成的默认拷贝行为是“浅拷贝”,可能导致双重释放、内存泄漏等问题,因此需要自定义拷贝构造函数和拷贝赋值运算符来实现“深拷贝”的行为。首先要说明的是,要做的不是完整的封装 Hugging Face tokenizers 的 C 的 FFI(Foreign Function Interface)接口,而是封装自己需要的接口就可以了。
2026-05-03 21:43:43
287
原创 记录复现多模态大模型论文OPERA的一周工作
她通读了 CNCF Landscape 的各类技术文章,然后大显身手,引入 Istio 做 Service Mesh,用 Argo 做发布,在 Vault 管理 Secrets,部署 Prometheus + Thanos 做可观测性,还有 cert-manager 处理 TLS,external-dns 管理域名,Velero 搞定备份。是真正的实战培训,而不是丢下一句看文档。我想进一步补充的是,真正致命的问题不在复杂性本身,而在于那些未被文档化的复杂性,也就是只存在于 Maya 脑子里的隐秘经验。
2026-05-03 21:34:30
295
原创 AI 工程化实战:从零手搓代码,这一次彻底搞懂MCP!
虽然接触计算机有一段时间了,但是我的视野一直局限于一个较小的范围之内,往往只能看到于算法竞赛相关的内容,计算机各种文件在我看来十分复杂,认为构建他们并能达到目的是一件困难的事情,然而近期我观看了油管上Magicalbat大神的视频,发现其实它们的本质都惊人地简单:所有计算机文件,都是按特定规则组织的二进制数据,是人为规定好格式再由计算机解析,对于我们来说,只要根据规定格式进行编辑,就能够成功构建。写完这段代码,你可能会发现:生成WAV文件的过程,就是“按格式规范往文件里写二进制数据”的过程。
2026-05-03 21:25:54
177
原创 stock-sdk-mcp 的实践整理
项目内存 ./CLAUDE.md 或 ./.claude/CLAUDE.md 项目的团队共享说明 项目架构、编码标准、常见工作流 通过源代码控制的团队成员。项目规则 ./.claude/rules/*.md 模块化、特定主题的项目说明 特定于语言的指南、测试约定、API 标准 通过源代码控制的团队成员。项目内存(本地) ./CLAUDE.local.md 个人的项目特定偏好设置 您的沙箱 URL、首选测试数据 仅您(当前项目)
2026-05-03 21:16:27
253
原创 VLN 与世界模型的关系
2.使用c命名空间注入属性,语法:c:属性名="属性值" c:属性名-ref="引用类型属性值"</p>// 获取spring容器中的对象。2.使用p命名空间注入属性,语法:p:属性名="属性值" p:属性名-ref="引用类型属性值"--><p> 如果key是简单类型,可以直接使用entry标签的key属性赋值
2026-05-02 19:54:17
270
原创 Oracle RMAN物理备份Web系统
这个要看资源的定义:如果只是管理内存资源,那么这样做是没有问题的,至少是安全的。而关于拷贝语义,绝大多数 C++ 程序员应该都知道这个问题:当在类对象中管理资源时,编译器生成的默认拷贝行为是“浅拷贝”,可能导致双重释放、内存泄漏等问题,因此需要自定义拷贝构造函数和拷贝赋值运算符来实现“深拷贝”的行为。首先要说明的是,要做的不是完整的封装 Hugging Face tokenizers 的 C 的 FFI(Foreign Function Interface)接口,而是封装自己需要的接口就可以了。
2026-05-02 19:47:22
367
原创 记录复现多模态大模型论文OPERA的一周工作
她通读了 CNCF Landscape 的各类技术文章,然后大显身手,引入 Istio 做 Service Mesh,用 Argo 做发布,在 Vault 管理 Secrets,部署 Prometheus + Thanos 做可观测性,还有 cert-manager 处理 TLS,external-dns 管理域名,Velero 搞定备份。是真正的实战培训,而不是丢下一句看文档。我想进一步补充的是,真正致命的问题不在复杂性本身,而在于那些未被文档化的复杂性,也就是只存在于 Maya 脑子里的隐秘经验。
2026-05-02 19:40:04
288
原创 AI 工程化实战:从零手搓代码,这一次彻底搞懂MCP!
虽然接触计算机有一段时间了,但是我的视野一直局限于一个较小的范围之内,往往只能看到于算法竞赛相关的内容,计算机各种文件在我看来十分复杂,认为构建他们并能达到目的是一件困难的事情,然而近期我观看了油管上Magicalbat大神的视频,发现其实它们的本质都惊人地简单:所有计算机文件,都是按特定规则组织的二进制数据,是人为规定好格式再由计算机解析,对于我们来说,只要根据规定格式进行编辑,就能够成功构建。写完这段代码,你可能会发现:生成WAV文件的过程,就是“按格式规范往文件里写二进制数据”的过程。
2026-05-02 19:32:57
205
原创 stock-sdk-mcp 的实践整理
项目内存 ./CLAUDE.md 或 ./.claude/CLAUDE.md 项目的团队共享说明 项目架构、编码标准、常见工作流 通过源代码控制的团队成员。项目规则 ./.claude/rules/*.md 模块化、特定主题的项目说明 特定于语言的指南、测试约定、API 标准 通过源代码控制的团队成员。项目内存(本地) ./CLAUDE.local.md 个人的项目特定偏好设置 您的沙箱 URL、首选测试数据 仅您(当前项目)
2026-05-02 19:25:28
308
原创 Spring with AI (): 搜索扩展——向量数据库与RAG(上)
print("工具调用:" + func_name + ",参数:" + str(func_args) + ",结果:" + tool_output)print("工具调用:" + func_name + ",参数:" + str(func_args) + ",结果:" + tool_output)print("="*20+"\n第"+str(i+1)+"轮\n"+query+"\n"+"="*20)print("="*20+"\n第"+str(i+1)+"轮\n"+query+"\n"+"="*20)
2026-05-01 20:11:51
326
原创 不满意Oh My Zsh启动卡顿,来试试Starship吧
当然,不是所有流都只能读一次,基于内存的流(如 ByteArrayInputStream / CharArrayReader)支持重置指针,因为它们的数据源是内存中的数组(数据不会消失),可以通过 mark() 和 reset() 方法将指针 恢复 到标记位置。log.info("==========进入requestCachingFilter========");每次调用 read() / read(byte[]) / read(char[]) 等读取方法时,指针会向后移动对应字节数;
2026-05-01 20:00:13
336
原创 Spring with AI (): 搜索扩展——向量数据库与RAG(上)
print("工具调用:" + func_name + ",参数:" + str(func_args) + ",结果:" + tool_output)print("工具调用:" + func_name + ",参数:" + str(func_args) + ",结果:" + tool_output)print("="*20+"\n第"+str(i+1)+"轮\n"+query+"\n"+"="*20)print("="*20+"\n第"+str(i+1)+"轮\n"+query+"\n"+"="*20)
2026-04-30 20:17:17
326
原创 不满意Oh My Zsh启动卡顿,来试试Starship吧
当然,不是所有流都只能读一次,基于内存的流(如 ByteArrayInputStream / CharArrayReader)支持重置指针,因为它们的数据源是内存中的数组(数据不会消失),可以通过 mark() 和 reset() 方法将指针 恢复 到标记位置。log.info("==========进入requestCachingFilter========");每次调用 read() / read(byte[]) / read(char[]) 等读取方法时,指针会向后移动对应字节数;
2026-04-30 20:00:19
309
原创 Spring with AI (): 搜索扩展——向量数据库与RAG(上)
print("工具调用:" + func_name + ",参数:" + str(func_args) + ",结果:" + tool_output)print("工具调用:" + func_name + ",参数:" + str(func_args) + ",结果:" + tool_output)print("="*20+"\n第"+str(i+1)+"轮\n"+query+"\n"+"="*20)print("="*20+"\n第"+str(i+1)+"轮\n"+query+"\n"+"="*20)
2026-04-29 19:39:28
303
原创 不满意Oh My Zsh启动卡顿,来试试Starship吧
当然,不是所有流都只能读一次,基于内存的流(如 ByteArrayInputStream / CharArrayReader)支持重置指针,因为它们的数据源是内存中的数组(数据不会消失),可以通过 mark() 和 reset() 方法将指针 恢复 到标记位置。log.info("==========进入requestCachingFilter========");每次调用 read() / read(byte[]) / read(char[]) 等读取方法时,指针会向后移动对应字节数;
2026-04-29 19:28:20
325
原创 Spring with AI (): 搜索扩展——向量数据库与RAG(上)
print("工具调用:" + func_name + ",参数:" + str(func_args) + ",结果:" + tool_output)print("工具调用:" + func_name + ",参数:" + str(func_args) + ",结果:" + tool_output)print("="*20+"\n第"+str(i+1)+"轮\n"+query+"\n"+"="*20)print("="*20+"\n第"+str(i+1)+"轮\n"+query+"\n"+"="*20)
2026-04-28 19:34:28
289
原创 不满意Oh My Zsh启动卡顿,来试试Starship吧
当然,不是所有流都只能读一次,基于内存的流(如 ByteArrayInputStream / CharArrayReader)支持重置指针,因为它们的数据源是内存中的数组(数据不会消失),可以通过 mark() 和 reset() 方法将指针 恢复 到标记位置。log.info("==========进入requestCachingFilter========");每次调用 read() / read(byte[]) / read(char[]) 等读取方法时,指针会向后移动对应字节数;
2026-04-28 19:21:56
172
原创 Spring with AI (): 搜索扩展——向量数据库与RAG(上)
print("工具调用:" + func_name + ",参数:" + str(func_args) + ",结果:" + tool_output)print("工具调用:" + func_name + ",参数:" + str(func_args) + ",结果:" + tool_output)print("="*20+"\n第"+str(i+1)+"轮\n"+query+"\n"+"="*20)print("="*20+"\n第"+str(i+1)+"轮\n"+query+"\n"+"="*20)
2026-04-27 17:31:01
336
原创 不满意Oh My Zsh启动卡顿,来试试Starship吧
当然,不是所有流都只能读一次,基于内存的流(如 ByteArrayInputStream / CharArrayReader)支持重置指针,因为它们的数据源是内存中的数组(数据不会消失),可以通过 mark() 和 reset() 方法将指针 恢复 到标记位置。log.info("==========进入requestCachingFilter========");每次调用 read() / read(byte[]) / read(char[]) 等读取方法时,指针会向后移动对应字节数;
2026-04-27 17:20:28
359
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅