自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Vue中选项式和组合式API的学习

Vue中选项式和组合式API

2025-12-11 11:18:34 540

原创 ROS2的Daemon进程

ROS2的Daemon进程

2025-12-11 11:17:20 979

原创 ROS相关概念认识

ROS相关概念认识

2025-12-04 09:15:58 615

原创 ROS2中用Python开发服务接口(二)

本文介绍了在ROS2中使用Python开发服务接口的最佳实践方法。主要内容包括: 自定义服务接口(srv)和消息(msg)的最佳实践是单独使用ament_cmake构建功能包,然后在业务功能包中引入。 详细说明了如何创建自定义srv/msg功能包: 创建工作目录和功能包 创建srv和msg目录结构 定义服务接口文件(.srv)和消息文件(.msg) 配置CMakeLists.txt和package.xml 编译构建 在其他功能包中引用自定义接口的方法,包括Python和C++两种方式。

2025-11-27 09:14:18 472

原创 ROS2中用Python开发服务接口(一)

WeatherQuery.srv:将的服务定义放在文件中。# 请求消息(客户端发送给服务端的参数)string city_name # 城市名称(必填,如 "Beijing")string country_code # 国家代码(可选,如 "CN",用于区分同名城市)---# 响应消息(服务端返回给客户端的结果)bool success # 查询是否成功(true=成功,false=失败)string message # 状态提示(如 "查询成功" 或 "未找到城市")

2025-11-27 09:11:38 652

原创 Vue 中的HTTP接口调用和Vue示例代码

Vue 中的HTTP接口调用

2025-11-20 09:20:05 698

原创 JAVA中JSch远程服务器访问实践

JSch 为 Java 开发者提供了强大而灵活的 SSH 连接能力。对于大多数自动化任务,是简单直接的选择。而当需要模拟复杂的手工操作流程时,则提供了必要的交互能力。同时,通过可以轻松实现安全的文件传输。愿你我都能在各自的领域里不断成长,勇敢追求梦想,同时也保持对世界的好奇与善意!

2025-11-17 09:26:12 709

原创 Vue 3 中 ref 和 reactive 的区别与使用场景

Vue 3 中 ref 和 reactive 是两种响应式处理方式,主要区别如下: ref 适用于所有数据类型,访问需要.value,支持重新赋值;reactive 仅适用于对象类型,直接访问属性,不支持重新赋值 在模板中,ref自动解包不需.value,reactive直接使用属性 使用场景: ref:基本类型、需要重新赋值的数组/对象 reactive:表单对象、相关联的配置组 解构时都需要使用toRefs保持响应式。

2025-11-06 16:18:12 491

原创 VUE3项目的创建

本文系统介绍了Vue 3项目的创建方法和工程化实践。详细对比了四种创建方式的特点和适用场景,包括官方推荐的create-vue、基于Vite的模板创建、传统Vue CLI以及在线工具。文章深入分析了Vite、Webpack和Rspack三大主流打包工具的核心差异,提供了项目结构对比和配置验证方法。针对不同项目需求,给出了打包工具选型建议:新项目推荐Vite以获得极致开发体验,大型现有项目可继续使用Webpack,对性能有极致追求的则可考虑Rspack。全文兼顾理论指导和实践参考,帮助开发者快速掌握Vue 3

2025-11-03 07:00:00 628

原创 稠密向量和稀疏向量

Milvus提供内置的全文搜索功能,使用BM25方法自动将文本转换为稀疏向量,无需手动预处理。BM25是传统统计技术的一种,它根据词在语料库中的频率和重要性为词分配权重。密集向量通常表示为连续数组,每个位置都有值(如[0.3,0.8,0.2,0.3,0.1]),而稀疏向量仅存储非零元素及其维度索引,通常表示为键值对。传统统计技术如TF-IDF(词频-逆文档频率)和BM25(最佳匹配25),根据词在语料库中的频率和重要性为词分配权重。稀疏向量是一种特殊的高维向量,其中大部分元素为零,只有少数维度具有非零值。

2025-10-24 16:06:42 314

原创 RAG向量数据库的选型与使用实践

RAG(Retrieval-Augmented Generation,检索增强生成)是一种将信息检索与大型语言模型相结合的技术,它通过从外部知识库中检索相关信息,然后让LLM基于这些信息生成回答,显著提高了回答的准确性和时效性。数据规模:小规模数据优先考虑Chroma,超大规模选择Milvus部署复杂度:快速原型开发选择Chroma或LanceDB,生产环境考虑Qdrant或Milvus功能需求。

2025-10-17 17:06:09 927

原创 RAG的优化思路

优化一个RAG系统,是一个系统工程,绝非一蹴而就。分块策略确保了“原料”的精细度。Query优化确保了“问对问题”。多路召回重排确保了“找全且找准答案”。多模态则极大地扩展了系统的“知识边界和应用场景”。在生产环境中,这些策略往往是组合使用的。一个强大的RAG系统可能会采用“优化后的Query”进行“多路召回”,对包含“大小块”的候选集进行“重排”,并最终将文本、图表等多模态信息一并交给LLM生成最终答案。愿你我都能在各自的领域里不断成长,勇敢追求梦想,同时也保持对世界的好奇与善意!

2025-10-10 16:58:25 600

原创 代码设计之实现压缩文件的统一处理

摘要:本文介绍了一种通过接口多态实现不同压缩格式统一处理的代码设计方法。首先定义ArchiveEntry公共接口,然后为ZipEntry和TarArchiveEntry创建包装类实现该接口,最后通过List<ArchiveEntry>进行统一处理。这种设计具有解耦、易扩展、类型安全等优点,特别适用于需要处理多种压缩格式的场景。文章还提出了进一步优化的方向,如结合工厂模式和Stream API,并强调这种面向接口的编程思想是解决异构系统统一处理的通用范式。

2025-10-09 16:53:26 618

原创 LangChain框架中Agent类型的总体认识

追求与 OpenAI 模型的最佳集成和工具调用的准确性:create_openai_functions_agent或 create_tool_calling_agent是首选,尤其是 create_tool_calling_agent,它代表了更新的设计思路。需要模型推理透明化、使用非 OpenAI 模型或处理复杂推理任务:create_react_agent非常合适,它能提供清晰的决策链条。

2025-09-25 17:56:17 921

原创 解决 Vue SPA 刷新导致 404 的问题

这是一个非常常见的问题,当使用 Vue.js 等前端框架构建单页面应用(SPA)并在浏览器中刷新时,由于前端路由路径被直接发送到后端服务器,而服务器没有对应的路由处理,导致返回 404 错误。通过vue展示页面,在地址栏中会出现前端的地址导航栏,而用户点击浏览器中的刷新按钮时,浏览器会将地址栏中前端的导航路径发送get请求到后台,导致404。最常用的解决方案是在后端服务器配置中,将所有非 API 和非静态资源的请求都重定向到 Vue 应用的入口文件(通常是。

2025-09-18 16:53:05 398

原创 GPT与BERT BGE

它通过大规模无监督预训练学习语言统计规律,并能生成连贯、自然的文本,广泛应用于文本创作、对话系统、问答、翻译、摘要生成等多个领域。:BERT 在预训练时,会随机遮盖输入文本中的一些词元(Token),然后让模型根据上下文来预测这些被遮盖的词。这个过程迫使模型学习词汇深层的双向上下文表示,而不仅仅是单向的(像之前的 GPT)。它在许多权威的嵌入模型评测榜单(如 MTEB)上,尤其是在中文任务中,表现非常出色。,使得语义相似的文本在向量空间中的距离更近,从而提升检索、聚类、语义相似度计算等任务的性能。

2025-09-11 09:46:13 774

原创 AI中的“预训练”是什么意思

总而言之,Transformer中的“预训练”是一个让模型在大规模数据上预先学习通用知识和特征表示的基础阶段。它为模型后续高效地适应各种下游任务奠定了坚实的基础,是现代AI领域一项非常核心和强大的技术范式。愿你我都能在各自的领域里不断成长,勇敢追求梦想,同时也保持对世界的好奇与善意!

2025-09-09 17:27:27 324

原创 量化模型部署工具llama.cpp

llama.cpp 是一个强大而高效的工具,它极大地降低了大语言模型的使用门槛。它的核心优势在于量化和纯C++实现,使得在消费级硬件上进行推理成为现实。下载 GGUF 格式的量化模型(如从 TheBloke 处)。获取 预编译 的main可执行文件。通过命令行或 Python API 进行推理。对于任何想在本地运行大模型的人来说,llama.cpp几乎都是首选方案。

2025-08-28 13:28:24 1074

原创 AI生态中的常用名词学习整理

适应模型输入:大多数深度学习模型要求输入数据是数值型的向量形式。Model Hub (模型中心):一个像 GitHub 一样的仓库,托管了超过几十万个由社区共享的预训练模型(包括 Transformers 格式和 很多其他格式的模型)。功能:它的核心任务是将人类熟悉的、连续的自然语言文本,拆分成模型能够处理的、离散的基本单元(tokens),并将其转换为数值ID。影响模型性能:Tokenizer的选择直接影响模型的词汇量、处理未登录词的能力和输入序列的长度,进而影响模型的表达能力、泛化能力和计算效率。

2025-08-21 13:05:59 701

原创 Infinity Embeddings容器化多模型服务部署

Infinity Embeddings是一个开源的企业级嵌入模型服务框架,提供OpenAI兼容API、多模型并行支持和硬件优化功能,特别适合需要兼顾性能与隐私的RAG应用场景。本文详细介绍了其容器化部署方案,包括Docker原生部署和Compose编排两种方式,并提供了多模型管理、性能调优以及LangChain集成的实践指南。相比SaaS服务,Infinity在数据隐私、延迟和成本方面具有显著优势,尤其适合金融、医疗等合规要求高的领域。

2025-08-19 13:39:24 1006

原创 大模型级部署方案

本文系统解析了大模型(LLM、Embedding、Rerank)的标准化部署方案,涵盖从本地轻量化到云原生的全场景实践。重点对比了Ollama本地部署与vLLM集群方案的技术特点,详细介绍了Embedding模型的容器化实践和Rerank模型在RAG中的关键作用。针对不同规模企业,提供了云平台选型指南和部署决策树,并给出量化压缩、缓存策略等优化技巧。文章指出,未来混合部署模式(关键业务本地化+通用能力上云)仍是平衡安全与成本的最优解,随着技术进步,消费级设备运行百亿模型将成为可能。

2025-08-19 13:36:35 1126

原创 Streamlit:快速构建数据应用的 Python 框架

摘要: Streamlit 是一个开源的 Python 框架,专为快速构建交互式数据应用而设计。它允许数据科学家无需前端知识,仅用 Python 代码就能创建 Web 应用,支持实时预览和丰富的数据可视化组件。

2025-08-07 13:21:17 761

原创 基于规则架构风格对业务的重构

本文探讨了基于规则的架构风格在业务系统中的应用,通过将业务逻辑从代码中抽离为独立规则文件,提高系统可维护性。文章介绍了Java和Python生态中的主流规则引擎,重点分析了ZEN Engine这一跨平台开源规则引擎的特点。ZEN Engine采用JSON格式定义规则,支持Python/Go/NodeJS集成,通过案例演示了如何实现电商折扣规则管理。文章指出这种方案相比硬编码方式更符合开闭原则,能有效应对频繁变化的业务需求,同时提供了ZEN Engine的实践指南和官方资源参考。

2025-07-24 16:43:24 712

原创 MCP Server构建方式

MCP是一种开发协议,皆在标准化LLM大模型与外部工具,数据源之间的通信。它如同“AI界的USB-C接口”, 统一了智能体与外部资源的交互方式,是智能体的“万能工具手”。Higress是一款云原生 API 网关,其内核基于Istio和Envoy。它可以使用 Go、Rust、JS 等编写 Wasm 插件,并提供了数十个现成的通用插件以及开箱即用的控制台。对于简单小型的项目,可以直接采用相关兼容技术栈实现MCP服务,避免在架构中引入Higress,增加管理复杂度。

2025-07-17 06:45:38 805

原创 Windows WSL子系统通信

接下来,在 Windows 11 主机上使用管理员权限打开命令提示符或 PowerShell,并执行以下命令来设置端口转发规则。首先,需要知道 WSL 子系统分配的 IP 地址。来测试端口转发是否工作正常。如果一切配置正确,请求应该被转发至 WSL 子系统上对应的端口。这将列出所有分配给 WSL 实例的 IP 地址。通常情况下,会看到一个类似于。的私有网络IP地址。记下这个IP地址,因为在设置端口转发时需要用到它。端口请求转发到 WSL 子系统的。确保刚刚添加的规则出现在列表中。

2025-07-17 06:41:57 350

原创 Java接口报错:Packet for query is too large - 解决方案与架构思考

摘要: MySQL报错"Packet for query is too large"源于max_allowed_packet参数限制(默认4MB)。解决方案包括: 服务端配置:修改my.cnf文件或动态设置参数,需重启生效; 客户端优化:JDBC连接添加maxAllowedPacket参数,连接池配置调整; 架构改造:分页查询、分批提交、大字段外存等根本性优化。 云环境需通过控制台或ConfigMap调整,建议建立监控预警机制。该问题本质暴露数据交互设计缺陷,临时修改参数仅为止血措施,优

2025-07-03 15:15:40 512

原创 Python 项目管理工具总结

本文总结了Python主流项目管理工具的特点和适用场景。

2025-07-03 15:14:14 1227

原创 使用Windows embeddable package安装Python

本文介绍了在Windows系统上使用embeddable package安装Python的方法。相比标准安装包,嵌入式版本需要手动配置:解压后需启用site-packages目录,安装pip和virtualenv工具,并设置镜像源。文章详细说明了各步骤操作,包括下载get-pip.py脚本、配置清华镜像源、创建虚拟环境等。同时对比了venv和virtualenv的区别,推荐新项目使用Poetry进行依赖管理。最后建议日常使用可直接安装标准版或Anaconda来简化环境管理。嵌入式版本适合需要精简部署的场景,

2025-06-30 17:41:54 1574

原创 AI智能体:从功能封装到自主决策的进化之路

《AI智能体:从功能封装到自主决策的进化之路》一文探讨了智能体技术的革新发展。文章通过医疗急诊场景案例,展示了AI智能体实时调取病历、生成预诊报告等自主决策能力。与传统程序不同,智能体具备五大核心特征:动态决策路径、环境感知、工具学习、反思迭代和目标理解。文中详细解析了MCP协议和A2A协作框架如何推动智能体生态发展,并以金融分析智能体为例说明PEER四步引擎的实现逻辑。最后指出医疗、教育等领域的智能体应用前景,强调这项技术正将人机关系从"操作"升级为"指挥"协作模式

2025-06-23 17:10:06 993

原创 Windows开发必备:端口进程管理

这篇文章介绍了Windows开发中端口和进程管理的实用技巧。主要内容包括:使用netstat命令查找特定端口对应的进程PID,通过taskkill终止进程(支持按进程名或PID终止),以及用tasklist查看进程详情。文章还提供了三步走的问题解决流程和实用的BAT脚本,能够批量处理端口占用问题。最后提醒注意事项,如管理员权限要求、数据丢失风险等,并建议将常驻进程配置为系统服务。这些命令组合能有效解决开发中常见的端口冲突和进程管理问题。

2025-06-12 09:20:49 774

原创 构建高性能软件服务系统的深度优化

本文主要讲述软件服务系统的优化的思考,从系统性能瓶颈甄别到具体的优化措施,从开发人员角度,全面总结开发实践。

2025-06-10 09:38:41 1137

原创 深入解析MySQL索引

本文深入解析MySQL索引的核心分类与特性。从数据结构维度,对比B+树索引(高效范围查询)、哈希索引(极速等值查询)和全文索引(文本搜索)的差异;从存储方式维度,剖析聚簇索引(数据物理排序)与非聚簇索引的区别;从字段特性维度,解读主键、唯一、普通等索引的应用场景。文章还提出索引优化黄金法则,强调要根据业务场景选择最合适的索引类型,持续监控调优以实现性能平衡。全文深入浅出地揭示了MySQL索引的工作原理与实践策略。

2025-05-29 18:11:02 816

原创 软件开发方法:从结构化到领域驱动的演进

需求分析:采用用例图(Use Case Diagram)和用户故事识别参与者和用例(如用户、管理员、下单、支付),初步识别对象(如Order、Product、Payment)。| 设计 | 设计顶层架构(组件划分、技术选型),输出架构文档。| 需求分析 | 用模型描述业务需求(如业务流程模型、用例模型)。| 用UML类图设计“用户订单商品”的关系,不涉及具体编程语言。| 设计 | 定义构件的接口规范(输入、输出、依赖关系),设计如何组合构件实现系统功能。

2025-05-27 17:54:15 1113

原创 Redis内存管理深度解析

通过深度理解Redis内存管理的内核机制,结合业务特征设计多级缓存策略、动态调整算法参数、建立立体监控体系,可构建出具备弹性的内存管理系统。注意事项:1.避免大量键同时过期:批量写入数据时,为键设置随机过期时间(如 EX 3600 + rand(0, 300))避免集中过期导致清理延迟。2.监控与调优:使用 redis-cli info 观察 expired_keys 和内存使用情况,若发现过期键清理不及时,可逐步调高 hz 或 active-expire-effort。

2025-05-17 13:40:30 1118

原创 CAP理论:分布式系统的权衡

CAP理论由计算机科学家Eric Brewer于2000年提出,其核心观点是:在分布式系统中,一致性(Consistency)、可用性(Availability)、分区容忍性(Partition Tolerance)三者不可兼得,最多只能同时满足其中两项。一致性(Consistency)定义:所有节点在同一时刻看到的数据是相同的(强一致性)。核心逻辑:写入操作完成后,后续所有读操作必须返回最新值。技术实现:同步复制(如ZooKeeper)、分布式锁(如Redis RedLock)。

2025-05-08 20:47:06 991

原创 MySQL事务隔离机制与并发控制策略

事务隔离级别的选择本质上是并发性能与数据一致性的权衡。默认使用REPEATABLE READ隔离级别关键业务操作显式加锁建立完善的监控告警体系定期进行压力测试验证结合业务特点定制重试策略愿你我都能在各自的领域里不断成长,勇敢追求梦想,同时也保持对世界的好奇与善意!

2025-05-08 20:37:17 1089

原创 MySQL性能优化实践

某系统通过上述优化体系,将查询响应时间从1200ms降至80ms,QPS提升15倍愿你我都能在各自的领域里不断成长,勇敢追求梦想,同时也保持对世界的好奇与善意!

2025-04-27 13:46:00 1167

原创 MyBatis动态SQL:从理论到生产级实践

本文展示了Mybatis的一些基础用法,同时融入了生产环境中的实战经验与架构思考。愿你我都能在各自的领域里不断成长,勇敢追求梦想,同时也保持对世界的好奇与善意!标签的作用远不止自动添加。语法错误,引发线上事故。:某系统曾因开发者在。

2025-04-27 10:23:11 815

原创 软件工程中数据一致性的探讨

正确性优先:金融、政务等场景必须强一致,通过分布式事务和共识算法保障。性能优先:高并发场景(如社交、电商)可接受最终一致,通过异步化和缓存提升吞吐。兜底机制:监控、日志审计、定期对账是最后防线。在需求阶段明确一致性要求(SLA)。避免过度设计,优先满足业务核心需求。通过混沌工程(Chaos Engineering)测试系统的一致性容错能力。在技术的天平上,数据一致性是砝码,而业务需求是刻度。唯有理解其本质,方能在正确性与性能的博弈中找到最优解。

2025-04-18 14:16:22 907

原创 Java并发编程总结:实现方式、场景与陷阱(JDK8+)

实现原理:通过继承 Thread 类并重写 run() 方法定义线程逻辑,调用 start() 方法启动线程。示例代码:@Override// 启动线程特点:• 优点:实现简单,直接通过 this 访问当前线程。• 缺点:因Java单继承限制,无法再继承其他类。适用场景:简单任务且无需共享资源的场景。

2025-04-09 13:43:54 765

winsw-2.1.2-bin.zip

可用于将windows进程转为windows服务管理

2024-11-18

空空如也

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

TA关注的人

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