- 博客(75)
- 收藏
- 关注
原创 【大模型应用】揭秘AI Agent OpenClaw的底层运行逻辑与安全风险
生成事件(Events) → 进入队列(Queue) → 代理处理(Agent executes) → 状态保存(State persists)(Isolated container)中(视频推荐了Railway的一键部署),使用隔离账户,限制启用的技能,并严密监控日志。:目前所有看起来“拥有生命力”的AI代理框架(Agent framework),其底层都没有魔法,全部都在使用某种形式的。:会话是按渠道隔离(Per channel)的,同一个用户在WhatsApp和Slack上的对话拥有不同的上下文)。
2026-03-10 12:45:31
367
原创 【后端】MySQL 主从复制原理深度解析
MySQL主从复制的核心机制是通过Binlog日志实现数据同步。主库将数据变更记录为二进制格式的Binlog,从库通过I/O线程异步接收这些日志并存入RelayLog中继日志,再由SQL线程回放执行,实现增量同步。整个过程具有异步性特点,主库不会等待从库同步完成,通过Binlog→RelayLog→SQL线程回放的逻辑顺序,最终保证主从数据一致性。这种机制既保证了同步效率,又通过中继日志起到了缓冲作用。
2026-03-06 13:42:21
254
原创 【后端开发】Redis 基础知识入门-小白立马理解!
GEO(地理位置)、Bitmap(位图)、HyperLogLog(基数统计)、Bloom Filter(布隆过滤器)、Stream(消息队列)。:Redis 共有 16384 个哈希槽,将槽位分配给不同节点,根据数据的 Key 路由到对应的槽位,既能存海量数据又能承载更高并发。:面对极端高并发,搭建“本地缓存 -> Redis 分布式缓存 -> 数据库”的层层过滤机制,大幅减轻底层压力。发现缓存失效时,让请求排队,第一个请求负责查数据库并重建缓存,其余请求等待重建完成后直接读缓存。一旦发现主节点宕机,
2026-03-04 19:40:03
381
原创 RAG 混合检索核心:BM25 算法面试通关笔记
必须在中间加一道工序,将每个 Chunk 转化为独立的词汇列表(List of tokens),否则 BM25 会将 500 字的段落当成“一个超长词汇”,导致倒排索引彻底失效。,单篇文档对全局词汇稀有度的影响极小,为了保证线上写入性能,日常会冻结 IDF 不更新,等到系统空闲(如夜间)再通过批处理任务全量重构一次最新的 IDF 统计。,排名越靠前,RRF 融合后的总分越高,完美解决了跨维度的分数对齐问题。(确保类似“图神经网络”、“星链”、“并发接入”等专业术语不被切碎)。
2026-03-02 12:19:04
607
原创 工业级 RAG 检索流水线 (Ingestion Pipeline) 面试通关笔记 ②
(全局架构视角,主打“高可用”与“落地能力”)“在开发我的 Modular RAG MCP Server 时,我没有采用简单的单路检索,而是设计了一套高可用的多阶段检索流水线。它的核心亮点不仅在于实现了 BM25 与向量的并行双路召回,更重要的是我引入了动态加权融合 (wRRF)来适配不同业务场景。同时,为了抵御线上突发流量洪峰,我在底层加入了部分召回 (Partial Recall) 的优雅降级机制,并在精排层引入了服务熔断器 (Circuit Breaker)。
2026-02-28 23:25:45
505
原创 工业级 RAG 数据摄取流水线 (Ingestion Pipeline) 面试通关笔记 ①
其最大的工程亮点在于:在**纯本地化、无重量级中间件(仅依赖 SQLite 和 Chroma)**的限制下,通过精妙的架构设计,完美解决了增量更新、数据一致性、高并发竞态和 API 容错这四大工业级难题。用户只改了 500 页 PDF 里的 1 个错别字,文件 Hash 全变了,你的系统会重新算 500 页的 LLM 和 Embedding 吗?来生成 Chunk ID,配合原生的 Upsert 机制,实现了真正的零成本增量更新,从根本上杜绝了 RAG 系统的脏数据幽灵。先在 SQLite 把状态。
2026-02-28 20:33:04
605
原创 【大模型应用】RAG系统中:离线数据摄取Ingestion Pipeline 的五个阶段:解析、切分、增强、向量化和存储
本文介绍了离线数据摄取Pipeline的五个核心阶段:1)解析阶段将原始文档转为结构化Markdown并提取元数据;2)切分阶段采用递归字符分割保留语义连贯性;3)增强处理通过LLM重写和图片摘要提升文本块独立性;4)向量化阶段采用稠密向量和稀疏向量的混合检索策略;5)存储阶段使用幂等写入确保数据一致性。整个流程旨在将非结构化文档转化为适合大模型理解的高质量向量数据,重点解决了语义保留、上下文连贯和精准检索等关键问题。
2026-02-28 12:39:36
493
原创 【大模型应用】Rerank——交叉编码器Cross-Encoder面试问题
摘要:Cross-Encoder精排解决了双路召回中语义交互不足的问题,通过Query和Doc的深度交叉注意力计算提升相关性判断精度。虽然计算开销大,但在个人科研助手系统中,通过限定Top-10文档进行精排,在保证检索质量的同时将延迟控制在几百毫秒,实现了检索精度与系统响应速度的最佳平衡。这种架构选择体现了对Bi-encoder快速但粗糙与Cross-Encoder精准但耗时特性的深刻理解,以及工程实践中必要的性能权衡。
2026-02-27 23:35:15
250
原创 【大模型应用开发】混合检索:Dense 和 BM25 是否会互相干扰?如何解决?(面试版)
摘要:本文分析了BM25和Dense检索在RAG系统中存在的"召回噪声相互污染"问题,包括BM25的字面匹配陷阱和Dense的过度泛化现象。针对这些问题,提出了三种工程优化策略:1)采用动态加权的Weighted RRF方法,根据场景调整不同检索方式的权重;2)设置前置阈值过滤低质量结果;3)关键性地引入Cross-Encoder作为最终排序器,利用其深层语义理解能力纠正前两阶段的错误排序。这些策略能有效提升混合检索系统的准确性和鲁棒性。(149字)
2026-02-27 23:01:56
368
原创 RAG(检索增强生成)的系统中,向量稀释
摘要:RAG系统中的"向量稀释"现象指长文本在有限维度向量空间中信息熵承载不足的问题。主要表现为语义模糊、均值池化噪声和相似度中庸化三大痛点,导致检索精度下降。目前解决方案包括:文本分块优化、父子文档结构、多向量表征以及重排序技术。这些方法通过提升语义聚焦度和关键信息曝光率,有效缓解了长文本处理中的信息稀释问题。(149字)
2026-02-27 15:03:24
489
原创 私有化知识库助手RAG vs 在Chatgpt聊天上传附件的区别
摘要:直接上传附件方式存在上下文窗口限制、注意力衰减和算力成本高等问题,而RAG技术通过按需检索相关文本块显著提升回答精准度并降低API成本。RAG还能实现知识持久化存储,支持随时调用完整资料库,同时通过本地存储和脱敏处理增强数据隐私性。相比临时附件上传,RAG更适合构建长期私有化知识库助手。
2026-02-27 13:41:06
426
原创 【大模型应用】大模型RAG系统回答评分机制RAG AS(Retrieval Augmented Generation Assessment)
摘要:RAGAS是针对RAG系统的评估框架,通过LLM-as-a-Judge方法将评估拆解为生成质量(Faithfulness和AnswerRelevance)和检索质量(ContextRelevance/Precision和ContextRecall)两大维度。其创新点包括:1)无需标准答案的评估设计;2)逆向工程计算回答相关性;3)支持冷启动阶段的测试集自动生成。落地时需注意API成本控制、评估LLM的能力偏差以及多语言Prompt适配问题。该框架解决了传统NLP指标无法衡量语义理解和幻觉的痛点。
2026-02-26 14:05:04
639
原创 【大模型应用】稠密向量和稀疏向量
稠密向量和稀疏向量是机器学习中两种核心的数据表示方式。稠密向量(如BERT、GPT生成的嵌入)维度较低(通常几百到上千维),能捕捉语义信息但可能遗漏专业术语;稀疏向量(如TF-IDF、BM25生成)维度极高(可达百万级),擅长精确匹配关键词但无法理解语义。实际应用中常采用混合检索策略,结合两者的优势,通过RRF等算法优化检索结果。这两种向量在语义理解和精准匹配方面各有侧重,共同支撑现代NLP系统的检索需求。
2026-02-26 13:34:19
644
原创 【大模型应用】AI领域新概念“Skill”的深度解析与核心工作原理
摘要: "Skill"是AI提示词管理的新机制,旨在解决传统提示词存在的Token浪费和AI理解干扰问题。其核心结构是一个包含SKILL.md文件的文件夹,通过元数据(Metadata)实现高效匹配。运行机制分为三步:发现(匹配需求)、激活(按需加载完整提示词)、执行(读取文件或运行脚本)。Skill支持文件引用、脚本执行及AI动态生成代码,显著提升灵活性和管理效率。本质是通过元数据筛选和动态加载实现"知行合一",使AI在限定边界内高效完成任务。
2026-02-21 11:42:03
1287
原创 【机器学习】Transformer核心架构与工作原理深度解析
本文解析Transformer模型的核心机制:1)自注意力与多头机制通过多维度分解实现语义解耦,8个独立头分别捕捉指代、修饰等不同特征;2)编码器采用"注意力+残差+归一化+FFN"闭环结构,经N次堆叠输出全局语义向量;3)解码器采用自回归生成方式,通过掩码注意力避免信息泄露,并利用交叉注意力实现输入输出对齐;4)模型可裁剪为纯解码器架构(如GPT),广泛应用于翻译、问答等场景。Transformer通过模块化设计实现高效特征提取与稳定训练,成为大语言模型的基石架构。
2026-02-20 16:01:45
959
原创 Vscode终端命令彻底卸载扩展Extensions
(扩展已成功卸载),但侧边栏图标依然存在。这是因为 VS Code 的界面刷新有时会有滞后,或者扩展的进程仍在后台运行。如果重载窗口后图标还在,可能是由于 VS Code 的缓存没刷新。VS Code 在卸载插件后,通常需要重启界面来清除内存中的图标和残留进程。界面刷新后,侧边栏的图标应该就会消失了。:对于 Cline,它的 ID 通常是。如果你没打开 VS Code,也可以去。你可以直接复制你想要删除的那个 ID。开头的文件夹,如果有,请手动删除。在右侧详情栏的底部,你会看到。),最快的方法是通过。
2026-02-19 12:05:11
569
原创 【大模型应用】MCP (Model Context Protocol):AI界的USB接口
MCP是由Anthropic提出的AI应用连接标准协议,类似AI界的USB接口,旨在统一LLM与数据源/工具的交互方式。其核心架构包含Host(主程序)、Client(连接插件)和Server(数据接口)三个角色,通过Tools(执行函数)、Resources(只读数据)和PromptTemplates(结构化指令)三类资产提供服务。支持本地Stdio和远程HTTP流式传输两种通信方式,开发者可通过无代码工具(n8n)或编程方式(Python/TS)构建MCP Server。该协议解决了AI应用连接不同服务
2026-02-18 21:07:13
730
4
原创 【大模型应用】入门了解AI Agent
定义:不是简单直接让AI一步到位(直上直下),而是将大任务拆解。Agentic Workflow(智能体工作流):包含“思考-研究-输出-修改”的循环迭代(Circular iterative process)过程。最终形态:完全独立弄清楚步骤、挑选工具的 Truly autonomous AI agent(真正自主的智能体)。
2026-02-15 16:10:31
615
原创 【大模型开发】学习笔记一:RAG & LangChain 实战核心笔记
以为是把 API Key 嵌进去,或者是简单的插入操作。:Embedding 是将**人类语言(文字)计算机语言(向量/数字列表)**的过程。计算机看不懂“苹果”,但 Embedding 模型把它变成。计算机通过计算两个向量的**距离(余弦相似度)**来判断意思像不像。:入库(Indexing)和查询(Query)必须使用Embedding 模型,否则就像一个说英语一个说日语,完全鸡同鸭讲。
2026-02-05 17:55:49
542
原创 【大模型开发】Langchain:为大模型应用提供通用接口,简化应用程序的开发流程
摘要:LangChain是一个开源框架,旨在简化基于大型语言模型(LLM)的应用程序开发。其核心组件包括模型交互接口、数据连接、处理链、记忆存储、代理工具和回调机制,支持Python和JavaScript。最新v0.3版本改进了架构设计,增强了可观察性和流式处理能力,提供700+技术集成。LangChain生态系统包含核心库、CLI工具、部署服务和开发者平台,支持从开发到部署的全流程。该框架特别适合构建检索增强生成(RAG)等复杂应用,通过模块化设计简化了LLM与外部数据和工具的集成。
2026-01-13 16:45:44
657
原创 云服务器ECS 2GB内存太小总是爆满崩溃解决办法
【摘要】在低内存服务器(1-2GB)使用VSCode打开.py文件时,Pylance插件的内存消耗会触发Linux的OOMKiller机制导致连接中断。通过free-h或top命令可验证内存不足问题。解决方案是创建2GB的Swap虚拟内存:依次执行dd创建交换文件、设置权限、格式化并启用Swap,最后配置开机自动挂载。该方法能有效解决内存不足导致的连接中断问题,使小内存服务器稳定运行VSCode。
2026-01-13 14:42:51
316
原创 Streamlit:快速创建应用界面,无需了解 Web 开发
Streamlit是一个开源Python库,用于快速构建交互式数据应用,无需前端开发知识。它提供简洁API(如st.write()、st.dataframe())来展示文本、图表和表格,并通过st.slider()等组件实现交互功能。安装只需pip install streamlit,运行应用使用streamlit run app.py命令。特色包括实时重载、侧边栏布局和缓存优化(@st.cache_data)。相比传统Web框架,Streamlit能以纯Python脚本快速创建可视化应用,适合数据分析和机
2026-01-12 20:10:48
745
原创 【大模型】向量数据库:Chroma、Weaviate、Qdrant
本文分析了三种主流向量数据库的特点与适用场景。向量数据库专为高维向量数据设计,支持高效存储、索引和相似度检索。Chroma定位轻量级Python优先,适合原型开发和教学;Weaviate强调混合搜索功能,适用于高质量语义检索;Qdrant以性能优先,适合高并发生产环境。选型建议:快速原型选Chroma,复杂搜索选Weaviate,高性能需求选Qdrant。不同场景下各系统在搜索范式、并发能力和运维复杂度等方面各有侧重。
2026-01-08 16:34:15
841
原创 【大模型】RAG&向量数据库
这张图最精髓的地方在于中间那个圆柱体——向量数据库。它左边连着用户的查询。它右边连着知识库的存储。它是连接“用户需求”和“私有知识”的桥梁,通过向量化(Embedder)让两者在数学空间中相遇,最后由 LLM 完成漂亮的各种语言输出。
2026-01-08 15:42:38
521
原创 从零开始安装到精通的 Jupyter Notebook 完整教程
摘要:Jupyter Notebook是基于Web的交互式计算环境,支持实时代码、可视化和文档编写。安装步骤包括通过pip安装和启动服务。核心功能包括代码单元格(运行Python代码)和Markdown单元格(编写文档),通过快捷键高效操作。常用快捷键分为代码执行、单元格管理和导航控制三类,如Shift+Enter运行代码、Esc切换模式等。建议通过创建Notebook、转换单元格类型等实战练习巩固操作。
2026-01-08 11:38:55
1017
原创 【GNN】图神经网络入门笔记:核心、架构、应用
本文系统阐述了图神经网络(GNN)的核心原理与实现方法。首先介绍了图数据的两个核心矩阵:特征矩阵X表示节点属性,邻接矩阵A描述拓扑结构。重点讲解了消息传递范式,包括邻居信息聚合与更新机制。随后详细分析了GCN的数学实现,将其分解为特征变换和结构传播两个步骤,并指出其全图依赖的局限性。针对这一问题,GraphSAGE采用邻居采样和特征拼接策略,通过固定采样数量实现可扩展性。最后探讨了mini-batch训练中的邻居加载器和层级计算图,解释了如何通过分层依赖实现高效计算。全文从理论基础到工程实现,完整呈现了GN
2025-11-25 16:39:24
687
原创 【机器学习】线性回归
线性回归模型由三大核心组件构成:1) 模型表达式Y=XW,假设输入输出为线性关系;2) 均方误差(MSE)损失函数,最小化预测误差平方和;3) 最小二乘法求解,通过伪逆矩阵X^+直接计算最优参数W。实际应用中,特征矩阵X需添加常数项以包含截距。Python实现可通过numpy手动计算(X^TX)^(-1)X^TY,或调用sklearn的LinearRegression自动拟合。该模型通过寻找最佳线性超平面,使预测值与真实值的垂直距离最小化。
2025-08-21 15:26:01
558
原创 MDP(马尔可夫决策过程)与 RL(强化学习)
你可以把 MDP 想成一个游戏规则系统。状态 State (s):游戏当前的局面。动作 Action (a):玩家能做的选择。状态转移 Transition (P):当你做了动作 a,游戏会以一定概率转移到新的状态 s′。奖励 Reward (r):这一步动作会给你一个分数,可能正可能负。公式上记作:这里的t就是时间步。👉 举个生活例子:你玩“迷宫逃脱”——状态 s= 你现在的位置。动作 a= 向上/下/左/右走。转移 P= 如果墙挡住了,你就原地不动;否则走到新格子。奖励 r。
2025-08-20 16:01:02
540
1
原创 【后端】struct.pack()
I就是 4 字节无符号整型(uint32)Q就是 8 字节无符号整型(uint64)H是 2 字节无符号整型(uint16)加是小端,加是大端packunpack。
2025-08-11 15:52:15
599
原创 【后端】FastAPI的Pydantic 模型
你可以把 Pydantic 理解成“接口数据说明书”。当别人调用你的接口时,FastAPI 用它来帮你检查数据合法性 ✅当你返回数据给别人时,FastAPI 用它来帮你自动生成标准 JSON 📦。
2025-07-23 16:56:13
410
原创 【后端】 FastAPI
API 就是别人(客户端)通过URL 请求,你(服务器)给他数据的接口。FastAPI 会帮你处理这段请求,然后你写代码告诉它怎么响应(比如生成一个 JWT 令牌,返回给客户端)。
2025-07-23 16:53:40
769
原创 【vscode】vscode中python虚拟环境的创建
运行了activate后,最前面有(.venv)的标识,意思是激活成功,接下来的操作都在该虚拟环境中运行。②新建一个终端,注意不是默认的powershell,①打开vscode,进入你的工作文件夹。
2025-07-22 16:51:43
455
原创 【扩散模型】正向扩散过程(Forward Diffusion)
这说明我们对上一步的图像进行缩放(<1),意思是“保留一部分原图内容”。就像你用 Photoshop 滤镜一点点“模糊”一张照片。这就是实际 PyTorch 实现中最核心的一行代码。Diffusion Model(扩散模型)是一类。学会从噪声中一步步“去噪”还原出原始数据。的经典形式:当前状态只依赖于上一个状态。),再撒一层噪声粉末(加高斯噪声)”。是一个正态分布随机变量”。把数据逐步加噪变成纯噪声,的基础上加噪声得到的。这中间的每一步,都是基于。“在给定上一时刻图像。得到的,而公式就是在。
2025-06-23 16:25:11
674
原创 【深度学习】深度学习中的张量:从多维数组到智能计算单元
项目内容张量定义通用的n维数组与NumPy区别支持GPU & 自动微分关键能力高效计算 + 梯度追踪应用场景模型输入/输出/参数的基础单位。
2025-06-11 20:04:43
704
原创 【js】JavaScript的变量提升、函数声明提升
JavaScript中的变量提升(Hoisting)是指在代码执行前,变量和函数的声明会被提升到当前作用域的顶部。对于var声明的变量,只有声明会被提升,赋值不会,因此访问未赋值的变量会返回undefined。函数声明会被整体提升,而函数表达式则不会。let和const虽然也会被提升,但在初始化前访问会触发暂时性死区(TDZ),导致报错。建议在新项目中使用let和const,避免使用var,并将变量声明放在使用之前,以提高代码的清晰度和可维护性。函数提升是JavaScript特有的行为,其他语言如Pytho
2025-05-15 17:18:42
1093
原创 【verilog】Verilog 工程规范编码模板
多个 if-else 控制一个变量时,一定要确保是互斥的,或统一组合后赋值。状态机推荐三段式写法(状态跳转 + 状态寄存器 + 输出逻辑分离)尽量避免推测 latch(即组合逻辑中没有默认值)<='(非阻塞赋值)
2025-04-17 10:38:00
683
原创 【verilog】多个 if 控制同一个变量 是否不是标准的语言规范,标准的语言规范应该如何写?
在 RTL 中,同一个变量最好只赋值一次,并通过互斥的结构(if-else / case)来清晰表达优先级和行为。
2025-04-17 09:57:29
581
原创 【verilog】多个 if 控制同一个变量(后面会覆盖前面)非阻塞赋值真的并行吗?
即使两个赋值语句都在非阻塞、在行为上并行,它们还是描述了两个竞争的硬件连接,Verilog 编译器不可能自动帮你“合并”这两个赋值。所以。
2025-04-17 09:53:31
853
1
原创 【verilog】在同一个 always 块中写了多个“看起来独立”的 if / if-else,到底谁先谁后,怎么执行?会不会冲突?
情况行为说明多个 if 控制不同变量并行谁条件满足谁执行,互不干扰多个 if 控制同一个变量顺序后面赋值覆盖前面if/else + case 控制同一变量顺序+可能冲突后面的 case 会覆盖前面 if 的赋值插入打拍语句合法不影响并行结构,但要注意覆盖风险多个嵌套 if按照语句顺序但并不表示电路是串行运行,是条件表达上的判断顺序。
2025-04-17 09:51:48
1625
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅