自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 LangChain v1.0 Middleware(中间件)使用指南

这篇《LangChain 中间件使用指南》系统介绍了LangChain框架中一系列用于增强和定制Agent行为的可插拔中间件组件。文档将中间件定义为用于拦截、处理请求-响应流的机制,以实现重试、限流、日志等通用功能。核心内容是对十余种生产级中间件的详细解析,包括用于成本控制和防止无限循环的调用限制中间件、自动压缩长对话的摘要中间件、保护隐私的PII检测中间件、确保任务稳定执行的重试与回退中间件、提升性能的工具选择器,以及文件系统、Shell命令执行、人机协作和子代理等高级功能中间件。

2026-02-18 11:51:38 764

原创 LangChain v1.0+ 中Memroy的管理

这篇《LangChain v1.0+ 全面解析》文档,系统性地介绍了LangChain新版中对Memory(记忆)架构的重构。其核心变革在于将对话历史管理与Agent逻辑解耦,引入了两大新组件:负责底层存储的 ChatMessageHistory(如 RedisChatMessageHistory)和负责管理Agent完整运行状态的 Checkpointer(如 RedisSaver)。文档详细说明了如何从简单的 RunnableWithMessageHistory应用到与Agent深度集成的生产级部署

2026-02-18 11:43:47 869

原创 Tenacity 原理与基本使用

好的,这篇文章详细介绍了 Python 库 Tenacity,它是一个用于实现函数重试机制的强大工具。其核心是通过 @retry 装饰器,以声明式的方式为函数提供灵活、可配置的重试能力。文章阐述了其四大核心组件:停止条件(stop,如最多尝试次数)、等待策略(wait,如指数退避)、重试触发条件(retry,如特定异常)以及回调函数(如重试前后钩子)。文章通过多个代码示例展示了常见应用场景,并总结了最佳实践与常见陷阱,强调其能有效提升分布式系统的容错性和健壮性。

2026-02-12 23:17:00 782

原创 PyBreaker 原理与基本使用

这篇文档详细介绍了 PyBreaker,一个用于 Python 的熔断器模式实现库。其核心功能是通过状态机(闭合、打开、半开)自动保护分布式系统,避免因下游服务持续故障导致资源耗尽的级联故障。文档阐述了其可配置的触发阈值、线程安全特性、多种集成方式(如装饰器与上下文管理器),并强调了结合监听器进行状态监控和设置降级函数等最佳实践,以提升微服务架构的容错能力和韧性。

2026-02-12 23:13:16 616

原创 Streamlit完整教程,从基础到进阶

Streamlit是一个专为机器学习和数据科学设计的Python Web框架,以极简高效著称。它允许开发者仅用纯Python代码快速构建交互式Web应用,无需前端知识。其核心机制包括自动重载(Rerun)、会话状态(Session State)和丰富的内置组件(Widgets),支持实时数据可视化和用户交互。通过缓存优化性能,Streamlit适用于数据仪表板、模型演示和快速原型开发。它深度集成Pandas、Plotly等库,提供从数据加载、图表生成到布局管理的全流程支持,并支持多页面应用和自定义组件,可轻

2026-02-11 23:55:41 855

原创 二维码技术概览

这篇文章全面系统地介绍了二维码技术,从基本概念、结构原理到实际应用。文章首先阐述了二维码相比一维码在信息容量、数据类型和容错能力上的优势,并详细解析了其由功能图形和编码区域组成的物理结构,以及包含数据分析、纠错编码和掩模处理在内的完整生成流程。重点说明了基于Reed-Solomon算法的四种容错级别原理,并分类介绍了文本、URL、WiFi、电子名片等多种二维码类型及其静态与动态的区别。最后,文章涵盖了二维码广泛的商业与生活应用场景,并提醒了相关的安全注意事项,为理解和应用这项技术提供了扎实的知识基础。

2026-02-11 22:57:32 886

原创 Weaviate 简介与基本使用

Weaviate 是一个开源的 AI 原生向量数据库,支持存储对象和向量嵌入,提供高效的混合搜索(结合语义向量搜索和关键词搜索)、内置 RAG 生成式搜索能力,以及多租户隔离等企业级功能。它采用模块化架构,支持多种向量化模型(如 OpenAI、Cohere),基于 HNSW 算法实现高性能向量检索,适用于构建知识库问答、推荐系统和语义搜索引擎等 AI 应用。通过 Docker 或云服务(WCS)可快速部署,提供 Python/GraphQL/REST 等多种交互方式,是 LLM 应用的核心数据基础设施。

2026-01-31 23:21:40 980

原创 Marp CLI快速入门

Marp CLI 是“Markdown 演示文稿生态系统”中的核心命令行工具,专为追求高效、纯文本驱动的开发者和技术人员设计。它基于 Marpit 框架,能够将标准的 Markdown 文档无缝转换为 HTML、PDF、PPTX 及多种图片格式。

2026-01-31 18:09:36 714

原创 Claude Code token使用量统计神器 ccusage

ccusage 是一款专为 Claude Code 和 Codex CLI 用户设计的命令行使用量分析工具,通过解析本地存储的 JSONL 格式日志文件,提供 token 消耗、费用计算和额度监控等核心功能。该工具采用本地数据处理方式,确保用户隐私安全,支持按日期 、会话、项目等多维度统计分析,并可根据 Anthropic 官方定价自动计算使用成本。ccusage 提供零安装运行方式(npx ccusage@latest),同时支持全局安装作为日常工具使用,有效弥补了 Claude Code 内

2026-01-30 21:20:33 1704

原创 RAG检索增强优化指南

这份指南深度解析了 RAG(检索增强生成) 技术的演进与实战方案,旨在通过“外挂知识库”消除大模型的幻觉并提升答案实时性。内容涵盖了从基础架构到模块化 RAG 的三代演进历程,详细介绍了 HyDE 查询增强、混合检索(BM25与向量融合)、父子文档/摘要检索 以及关键的 Re-ranking 重排序等核心算法。通过对比多种索引策略及提供 LangChain 与 LlamaIndex 的生产级代码实现,本文为构建高精度、企业级的 AI 检索系统提供了从理论到工程化的完整路径。

2026-01-30 16:17:32 1047

原创 Python logging模块完整教程

Python logging模块是标准库中强大的日志记录工具,支持多级别日志记录、灵活配置和多种输出方式。本教程从基础概念开始,详细介绍了Logger、Handler和Formatter三大核心组件,以及它们之间的关系。内容包括日志级别控制、基本配置方法、高级配置技巧和实际应用场景,帮助开发者快速掌握日志系统的使用。通过示例代码演示了从简单日志输出到复杂日志处理的完整流程,并提供了性能优化和最佳实践建议,适合Python开发者系统学习日志记录技术。

2026-01-26 21:07:42 882

原创 python asyncio教程

asyncio 是 Python 的异步 I/O 框架,它让编写高性能的并发程序变得简单。本教程将从基础概念开始,逐步深入到高级特性,包括协程、任务、事件循环、同步原语等核心概念,并通过实际项目帮助你掌握 asyncio 的使用方法。无论你是初学者还是有经验的开发者,都能通过这个教程系统地学习 asyncio。

2026-01-26 21:03:34 1115

原创 Docker具体使用

Docker是一个开源的容器化平台,通过操作系统级虚拟化技术将应用及其依赖打包成轻量级、可移植的容器。它采用Linux内核特性(如cgroups和namespaces)实现资源隔离,具有轻量级、启动快、资源占用低等特点。Docker的核心架构包括客户端-服务器模型,支持镜像分层存储和环境一致性。安装简单,支持Linux/Windows/macOS平台,常用命令包括运行容器(docker run)、构建镜像(docker build)等。通过Dockerfile可实现自定义镜像构建,支持端口映射、数据卷挂载、

2026-01-24 14:35:37 851

原创 Docker的简单介绍

Docker 是一个开源的容器化平台,通过操作系统级虚拟化技术将应用及其依赖打包成轻量级、可移植的容器。核心特性包括轻量级隔离、镜像分层存储和环境一致性,采用Linux内核的cgroups和namespaces实现资源隔离。Docker采用客户端-服务器架构,支持快速部署和跨平台运行。优势包括接近原生性能、低资源占用和强大生态系统,但也存在隔离性较弱、镜像质量参差不齐等问题。最佳实践包括数据持久化、使用轻量级镜像和非特权用户运行容器。Docker适用于微服务架构和CI/CD流程,是现代应用部署的重要工具。

2026-01-24 11:42:09 822

原创 Window 环境下安装Poetry

本文介绍了在Windows环境下安装Poetry的步骤:1)使用官方脚本通过PowerShell命令安装;2)配置环境变量,将Poetry路径添加到用户变量中;3)验证安装,通过poetry --version命令确认安装成功。整个过程详细说明了从安装到验证的具体操作流程,并配有图示说明,帮助用户顺利完成Poetry的安装配置。

2025-12-28 12:30:06 561

原创 动态规划: 背包DP大合集

dp[i][j]:表示前i个主件及其附件,在背包容量j时的最大价值。

2025-06-13 21:11:46 1063

原创 GCC 和 G++的基本使用

本博客聚焦于gcc和g++在Linux系统中的基本使用方法。gcc和g++是GNU开发的编译器,gcc主要用于C语言编译,g++则专注于C++编译。首先介绍了它们的基本介绍及二者区别,随后通过简单示例展示了如何使用gcc和g++进行预处理、编译、汇编和链接操作,如指定包含路径的-I选项等。同时还提到了常用的一些编译选项及其作用。了解gcc和g++的基本使用,对在Linux环境下进行C和C++程序的开发具有重要意义。

2025-02-25 21:27:24 1686

原创 vscode多文件编译构建(CMake)和调试C++

本博客聚焦于在VS Code环境下使用CMake进行项目的构建与调试。先介绍CMake作为跨平台构建系统生成器,通过CMakeLists.txt文件描述构建流程。接着阐述tasks.json文件的配置,包括任务类型、命令、依赖关系等关键字段含义;launch.json配置则关乎调试设置,详细说明各字段作用。对CMakeLists.txt中的关键设置如调试标志配置也做了详解。还展示了构建项目全过程,包括操作步骤、文件夹内容及断点调试方法,助你在VS Code高效开发调试项目。

2025-02-25 15:53:29 3875

原创 在 Windows 上使用 CMake 生成 Makefile

当在 Windows 上运行 CMake 命令而不指定生成器时,CMake 会尝试选择一个适用于 Windows 的默认生成器。CMake 可能会生成一个适用于 Visual Studio 的项目文件,而不是 Makefile,正是这个原因导致。这意味着生成的构建文件将是针对 Visual Studio 的,而不是 Makefile。打开终端,并将以下行添加到你的 shell 配置文件中(比如。如果你使用的是 CMake 3.19 或更高版本,你可以使用。或其他兼容的 Makefile 生成器。

2025-02-21 16:15:17 1547

原创 Linux(Ubuntu)安装pyenv和pyenv-virtualenv

本文详细介绍了如何安装和使用 `pyenv` 和 `pyenv-virtualenv` 来管理 Python 版本和虚拟环境。首先通过 `curl` 安装 `pyenv`,并配置环境变量;然后安装系统依赖和 `pyenv-virtualenv` 插件。接着,讲解了如何使用 `pyenv` 安装、切换和卸载 Python 版本,以及如何使用 `pyenv-virtualenv` 创建、激活、停用和删除虚拟环境。最后,提供了一个从零开始的示例,帮助用户快速上手。通过本文,用户可以轻松管理多个 Python 版本

2025-02-11 23:55:15 2335

原创 解决 ComfyUI-Impact-Pack 中缺少 UltralyticsDetectorProvider 节点的问题

首先确保 已经下载地址: https://github.com/ltdrdata/ComfyUI-Impact-Pack由于新版本的 不再提供这个节点了。需要再安装一个 才可以使用这个节点。地址: https://github.com/ltdrdata/ComfyUI-Impact-Subpack重新启动即可

2025-02-11 23:54:00 4594 2

原创 Linux(Centos)安装allnnlp失败,jsonnet报错

是一个工具,允许你在不影响系统默认软件版本的情况下,安装和使用更新版本的软件。通过 SCL,你可以同时安装多个版本的软件,而不会相互冲突。这对于开发和测试环境非常有用。安装支持 C++17 的编译器根据报错信息,安装 allnnlp 时失败的主要原因是编译器不支持 -std=c++17 选项。这通常是因为系统中缺少支持 C++17 的编译器版本。

2025-02-04 21:25:00 931

原创 jupyter使用 Token 认证登录

Jupyter 默认使用 Token 认证来保护服务器访问。查看url中的token,使用token登录。

2025-01-24 14:46:56 1168

原创 WARNING: overwriting environment variables set in the machine overwriting variable [‘PATH‘]

conda 在激活环境时出现警告: WARNING: overwriting environment variables set in the machine overwriting variable ['PATH']

2025-01-06 16:38:28 2081

原创 ARP表、MAC表、路由表的区别和各自作用

在同一网络内,为了获取目标的MAC地址,使用ARP协议。ARP通过广播请求和单播响应来实现这一过程。数据封装遵循OSI七层模型,从应用层到物理层依次封装;解封装则相反。首次通信时,设备通过ARP请求学习目标MAC地址并缓存至ARP表中,后续通信直接查表。交换机根据MAC地址表转发帧,未找到记录时采用泛洪方式,并定期刷新MAC表以防止攻击。对于不同网络间的通信,则需借助路由器及其路由表完成跨网传输。

2024-11-30 12:44:43 3265

原创 pip 与当前python环境版本不匹配, pyenv, pipenv, conda

电脑中安装了多个python虚拟环境, 有anaconda创建的虚拟环境,也有pyenv创建的虚拟环境,但是环境变量配置的是anaconda的路径。可以看出powershell使用的是环境变量中配置的anaconda的python环境,但上述问题仅限于vscode, 在cmd命令行中不存在该问题。因此, 当使用pip安装依赖时, 需要在命令前添加。这些问题好奇怪, 能力有限,不理解,请大佬赐教哈哈。从而导致在vscode中选择的。在使用pip命令前加上。

2024-11-23 23:15:58 2660

原创 有向图中环路判断

标记节点i为已访问,初始化递归栈为真。遍历节点i的所有邻接点。邻接点v在递归栈中?继续检查下一个邻接点。

2024-11-23 23:04:14 922

原创 并查集算法及其优化策略(路径压缩, 按秩合并, 启发式合并)

本文深入探讨了并查集(Union-Find)算法及其三种优化策略:朴素版、路径压缩和按秩/大小合并。并查集是一种高效的数据结构,用于处理网络连通性、图的连通分量等问题。文章首先介绍了并查集的基本原理,包括find和union操作,然后详细阐述了朴素版并查集的实现和其局限性。接着,文章介绍了路径压缩技术,这是一种在find操作中减少树高度的优化方法,显著提升了查找效率。

2024-11-22 13:39:49 810

原创 python将图片转换为pdf格式

通过python将图片转换为pdf格式

2024-11-15 12:08:22 1498

原创 C++实现解决最大流问题的Edmonds-Karp 算法

Edmonds-Karp 算法是一种用于求解网络中最大流问题的算法。它是 Ford-Fulkerson 方法的一个变种,使用广度优先搜索(BFS)来寻找增广路径,从而保证了找到的每条路径都是阻塞流。这种方法在处理稠密图时特别有效,因为它的时间复杂度较低。

2024-11-12 00:06:25 700

原创 C++ 中 priority_queue 与自定义比较函数的使用

priority_queue pq(比较函数);元素类型: 优先队列中存储的元素的类型。容器类型: 用于存储元素的底层容器类型,默认为 vector。比较类型: 定义元素排序方式的比较函数类型。如果比较函数是一个lambda 表达式,你可以使用decltype。

2024-11-09 20:49:05 996

原创 Android下拉刷新, MaterialRefreshLayout开源库的使用

Github地址基本效果如下:使用方法两种:在此我用的是导入library库方法, 步骤如下:将上述的library库导入到自己的项目中,效果如下,放在Java目录下即可:导入后就可以直接使用了在需要下拉刷新功能的布局外面添加一层即可使用方法大致如上, 具体的使用方法,和相关的属性,以及想自定义刷新, 参考上述Github地址

2024-09-20 16:57:48 774

原创 Android 他人开源库自定义imageview实现图片圆角,操作简单

【代码】Android 他人开源库自定义imageview实现图片圆角,操作简单。

2024-09-19 22:38:16 746

原创 AS右侧边栏报错: java.lang.IllegalArgumentException: No drawer view found with gravity LEFT

AS右侧边栏报错: java.lang.IllegalArgumentException: No drawer view found with gravity LEFT, `NavigationUI` 依然尝试使用` GravityCompat.START `来控制侧边栏,这导致了` No drawer view found with gravity LEFT` 的错 解决办法: 手动处理侧边栏的打开和关闭,而不是依赖 `NavigationUI.setupWithNavController` 来自动处理。

2024-08-24 18:57:06 529

原创 Android读取相册图片以及报错java.io.FileNotFoundException: /storage/emulated/0/ (Permission denied)

Android使用onActivityResult方法获取相册图片,以及报错java.io.FileNotFoundException: /storage/emulated/0/ (Permission denied)解决办法

2024-08-21 20:19:48 2827

原创 Java中的反射与注解

本文主要讲解了java中的反射与注解的基本概念和使用方法,以及相应的实例来加深对其的理解

2024-08-06 12:07:57 380

原创 摩尔投票算法 和 N/K 推广

本篇文章介绍了摩尔投票算法(Boyer-Moore Majority Vote Algorithm)的理念及其实现。在给定数组中寻找占多数元素时,摩尔投票算法以常数空间复杂度高效解决问题。文章首先阐述了算法的基本思路,包括如何通过维护候选数和计数器来判断元素的频率,结束时需要检验元素是否满足多数条件。接下来,提供了 C++ 代码实现,展示了如何在数组中寻找占多数元素。

2024-08-03 16:08:50 752

原创 C++中常用的算法库函数大总结

本文将深入探讨C++ STL中的常用功能,包括字符串操作、容器操作、算法库函数以及pair和tuple的使用。我们将介绍如何使用to_string、stoi等函数进行字符串转换,探讨back()、front()等容器成员函数的用法,以及如何运用sort、reverse等算法库函数处理数据。此外,文章还将涵盖pair和tuple在存储和操作数据时的便利性。通过这些实用指南,读者将能够更高效地利用C++ STL进行编程。

2024-08-02 23:32:39 2310

原创 Android Studio 设备无法联网,显示Connected No internet access状态

修改D:\Android\Sdk\sources\android-28\com\android\server\connectivity路径下的。即可, 系统将跳过检查步骤,假设当前网络连接可用,并直接返回成功状态。问题,打开网络连接,设备虽然显示连接到 Wi-Fi 网络,但状态为。Android Studio 里面虚拟设备。这表明设备已成功连接到无线网络,但。

2024-07-30 19:18:15 1881

原创 Android Studio导入项目时,Gradle一直卡在构建Building

导入项目,Gradle一直在Building,如下图所示:如果一直处于上述情况, 大概率是本地没有对应的该项目所需的gradle版本,所以此时会在远程服务器下载对应的gradle版本.但是从Android Studio里面下载会很慢,我们可以自己去官网下载该项目所需的gradle版本,如果不知道需要什么版本,而项目又打不开,可以从文件管理器里面去查看,可以找到该项目所对应的文件夹,如下图:进入项目的gradle文件,然后是进入wrapper文件,打开里面的gradle-wrapper.properties文

2024-07-22 23:14:29 4339

蓝桥杯图论算法知识和真题讲解

该资源是pdf文档,有36页,内容丰富完整,真题是蓝桥杯的省赛 图论重要算法: 如下是大致目录 1. 图的表示 2. 图的遍历 3. DFS/BFS用于连通性判断 4. BFS用于所有边等长时求最短路径 5. 并查集:维护连通性 6. 最短路径 7. 最小生成树 8. 查询树上两个点的距离 9. 真题解析 10. 图论总结 主要是讲述了图论的大致知识点,熟悉图论算法,掌握主要的图论知识,在脑海中写成框架,用真题来讲述,更容易理解掌握

2024-08-22

空空如也

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

TA关注的人

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