- 博客(382)
- 收藏
- 关注
原创 Web安全学习资料(收藏)
很不错的web安全学习材料,推荐给大家:网址:https://websec.readthedocs.io/zh/latest/#web
2021-06-14 20:05:40
2786
7
原创 Git学习手册(收藏)
然后,你可以独立地在此新分支中修改代码,包括提交文件等。这将创建一个名为 .git 的新子目录(Windows 下该目录为隐藏的),其中包含所有必需的存储库文件(Git 存储库框架)。此命令将从“origin”远程仓库的“master”分支获取最新更改,并将其存储在本地仓库的“远程跟踪分支”中。Git 提供了你所需的一切,以防你在所推送的代码中犯错,改写某些内容或者只是想对所推送的内容进行更正。将新功能添加到分支中之后,你需要将其合并回master分支,以便您的master具有所有最新的代码功能。
2020-07-16 23:57:01
835
1
原创 精心整理|Python爱好者社区历史文章合集(收藏)
信息量非常全的总结:https://ask.hellobi.com/blog/python_shequ/14009
2020-05-16 13:41:43
569
原创 高性能跨语言推理服务架构:基于共享内存的Java调Python代码实践
本文探讨了企业级AI应用中Java/Go与Python生态高效协作的技术方案,重点分析了基于共享内存的进程间通信(IPC)机制。文章首先对比了Socket、管道、共享内存等常见IPC方式的特点与适用场景,指出共享内存具有零拷贝、微秒级延迟和高吞吐量的优势。随后详细设计了共享内存架构,包括内存映射协议和状态机定义,并提供了Java生产者的核心代码实现,展示了如何通过MappedByteBuffer实现高性能数据传输。该方案为跨语言系统集成提供了低延迟、高并发的工程实践参考。
2026-04-28 11:49:54
453
原创 Node2Vec 从理论到工程:图嵌入驱动的文件系统异常检测实战
摘要:本文深入解析Node2Vec图嵌入算法及其在文件系统异常检测中的应用。从理论基础出发,详细阐述了有偏随机游走策略(通过p、q参数平衡BFS/DFS探索)、Alias Method高效采样、Skip-gram负采样等核心技术。在工程实践部分,重点探讨了如何构建文件访问异构图(包含用户、文件、目录节点及时序边),通过Node2Vec生成的嵌入向量捕捉异常访问模式。文章揭示了"共享嵌入空间+相邻文件相似度"的检测机制,以及通过时序边和MAD评分函数提升检测精度的具体方法,为图表示学习在安
2026-04-26 12:57:13
436
原创 HyperLogLog:十亿级基数估计的工程艺术
摘要:HyperLogLog(HLL)是一种革命性的基数估计算法,仅需16KB内存即可实现10亿级数据的1%误差估计。本文系统梳理了HLL的演进历程,从1985年的概率计数到2007年Flajolet提出的调和平均优化。其核心原理是利用哈希值的leading zero分布进行概率估计,通过分桶和调和平均降低方差。文章提供了符合论文标准的Python实现,包含小基数修正(Linear Counting)和大基数处理,演示结果显示对1万数据的估计误差仅0.3%。HLL的工程价值在于用极小内存解决海量数据去重问题
2026-04-24 00:33:19
412
原创 Count-Min Sketch:海量数据频率统计的“轻量级计数器“
Count-Min Sketch:高效流式计数数据结构 摘要:Count-Min Sketch (CMS) 是一种概率数据结构,通过固定大小的内存空间(d×w计数器矩阵)实现流数据频率估计。核心原理是利用多个哈希函数将元素映射到计数器,通过取最小值策略控制误差上限。CMS具有O(1)更新复杂度、可合并性等优势,广泛应用于网络监控、推荐系统等场景。文中还提出了带时间衰减的改进方案,通过周期性重置和指数衰减解决历史数据污染问题,并提供了完整的Python实现。该结构特别适合需要实时统计海量数据但内存有限的场景,
2026-04-23 22:46:02
476
原创 LRU Cache:如何用哈希表 + 双向链表实现 O(1) 的 get 和 put
本文介绍了LRU Cache的实现原理,通过哈希表+双向链表实现O(1)的get和put操作。LRU策略优先淘汰最久未访问的数据,广泛应用于操作系统、数据库缓存等场景。核心设计使用哈希表快速定位节点,双向链表维护访问顺序。文章详细讲解了伪头尾节点的编码技巧、复杂度分析,并比较了单/双向链表的优劣。最后提供了Python标准库的现成实现方案,以及C语言在网络设备中的实际应用案例。理解LRU Cache对系统性能优化具有重要意义。
2026-04-19 22:33:38
205
原创 ReWOO:解耦推理与观测的高效 Agent 架构
ReWOO是一种革命性的AI Agent架构,通过将推理与观测解耦,显著提升任务执行效率。它采用Planner、Worker、Solver三角色协作机制,相比传统ReAct架构,Token消耗减少5倍,同时在HotpotQA等基准测试中准确率提升4.4%。ReWOO通过预见性规划、依赖图分析和智能并发调度实现高效执行,特别适合批处理任务,但存在容错性不足等局限。生产实践中,Claude Code等系统采用混合方案,在保留交互性的同时引入ReWOO思想,实现安全工具并发与副作用工具串行的平衡。
2026-04-19 20:00:23
255
原创 Multi-Agent架构:从单循环到多循环革命
多智能体协作:AI Agent架构演进与实践 摘要:随着大模型技术发展,Multi-Agent架构正成为突破单智能体局限的关键方案。单Agent面临上下文容量受限、串行执行低效和职责边界模糊三大瓶颈。Microsoft AutoGen提出的对话驱动架构和Anthropic的Orchestrator-Workers模式,通过多个独立运行的while true循环实现并行处理与上下文隔离。Claude Code的工程实践展示了三种并发模式:子Agent同步执行、协调器模式和团队协作模式。相比单Agent,Mul
2026-04-19 19:42:31
500
原创 Reflexion:让AI学会从失败中成长
本文介绍了Reflexion架构,这是一种让AI智能体能够从失败中学习并积累经验的创新方法。传统AI系统存在无法记忆错误、反馈信号不可解释等问题,而Reflexion通过四个核心组件(执行者、评估者、自我反思和记忆层)构建了一个闭环学习系统。 关键创新在于将简单的数值奖励信号升级为可解释的自然语言反思,这些反思被结构化存储在记忆层中,供后续任务参考。文章还探讨了从学术理论到工程实践的转化,包括三步工作流(生成初稿、审查评估、反馈优化)以及Claude Code实现中的三层防御机制。 这种架构使AI能够像人类
2026-04-19 18:21:10
369
原创 渐进式披露:AI Agent上下文工程的核心模式
AI Agent上下文工程的核心在于渐进式披露(Progressive Disclosure)模式,通过分层加载信息解决上下文窗口有限性问题。这一方法源于HCI领域的认知原则,针对LLM存在的"上下文腐化"现象——即信息虽存在但被稀释导致模型难以提取。Claude Code Skills的实践展示了四步闭环:初始仅注入元数据摘要,按需动态加载完整内容,执行后压缩保留关键结果,智能召回常用技能。这种渐进式信息编排使上下文窗口的有限注意力资源得到最优分配,在不增加模型推理能力的情况下显著提升
2026-04-19 18:02:14
445
原创 从 ReAct 到 Plan-and-Execute:AI Agent 长任务执行的架构演进
摘要:本文系统分析了AI Agent从ReAct到Plan-and-Execute架构的演进过程。ReAct通过思考-行动循环实现即时决策,但在长任务中面临目标漂移和方向修正困难。Plan-and-Execute范式通过显式分离规划与执行解决这些问题:论文层提出两阶段提示方法,工程层采用Orchestrator-Subagents模式,源码层实现规划态与执行态的权限控制。核心观点认为规划与执行是两种不同的认知任务,只有显式分离才能确保长任务的稳定执行,这种架构演进类似于人类思维的"快思考"
2026-04-19 17:42:08
530
原创 ReAct:让AI边思考边行动的突破性技术
ReAct技术:AI推理与行动的突破性结合 ReAct(Reasoning + Acting)是一种将推理与行动交错结合的AI技术,由Google Research于2022年提出。它解决了传统方法的三大痛点:纯推理易产生幻觉、纯行动缺乏策略性、决策过程不透明。ReAct通过"思考→行动→观察"的闭环循环,使AI能动态调整策略,在问答、决策等任务中表现优异。其核心优势在于:结合思维链推理与实时工具调用,生成可解释的决策轨迹。当前前沿发展包括Reflexion、ProAct等增强版本,但仍
2026-04-19 14:51:27
414
原创 Java栈与堆的区别
摘要: Java中栈(Stack)与堆(Heap)是JVM内存管理的两大核心区域,主要区别如下: 存储内容:栈存基本类型、对象引用及方法局部变量;堆存对象实例和数组。 生命周期:栈随方法调用自动释放,堆由GC管理回收。 线程特性:栈线程私有,堆线程共享。 性能与错误:栈访问快但易StackOverflowError(如深度递归);堆易OutOfMemoryError(如内存泄漏)。 调优参数: 栈:-Xss设置线程栈大小; 堆:-Xms(初始堆)、-Xmx(最大堆)控制容量。 形象比喻:栈是方法的临时工作台
2026-04-19 09:43:18
206
原创 搞懂大模型Fine-tuning - 预训练和微调(Pre-training vs Fine-tuning)
LLM训练三部曲:预训练(Pre-training)、有监督微调(Supervised Fine-Tuning, SFT)以及基于人类反馈的强化学习(Reinforcement Learning from Human Feedback, RLHF)。预训练(Pre-training)是预先在大量数据上训练模型以学习通用特征,而微调(Fine-tuning)是在特定任务的小数据集上微调预训练模型以优化性能。
2024-08-12 00:25:56
4018
1
原创 Python-configparser更新write保留注释
python语言用来解析配置文件的模块是ConfigParser,python3中是configparser模块,在使用中经常用到write方法将配置项重新写入文件;结果发现配置文件中的,虽然这个并不影响使用,但配置文件的可读性无疑还是变差了。
2024-04-07 23:19:53
1348
1
原创 python-三引号去除缩进
缩进是Python中非常重要的一个概念,它用于表示代码块。代码块指的是在控制流语句(如if、while、for等)中被执行的一组语句。Python要求同一个代码块中的所有语句必须使用相同的缩进。在Python中,三引号用于表示多行字符串或文档注释。三引号内的文本可以包含任何字符,包括换行符和引号。在使用三引号表示多行字符串时,Python会将三引号中的所有内容作为一个字符串处理。当使用三引号表示多行字符串时,三引号内的每一行文本的缩进将会被保留。在上面的例子中,每一行文本的缩进都会被保留。
2024-03-09 21:13:46
739
原创 Python-判断字符串为浮点型
Python提供了float()函数来将字符串转换为浮点型。我们可以使用try-except语句来判断字符串是否可以成功转换为浮点型。如果转换成功,说明字符串为浮点型;如果转换失败,则说明字符串不是浮点型。在上述代码中,我们定义了一个is_float函数,该函数接受一个字符串作为输入,尝试将其转换为浮点型。如果转换成功,即不抛出异常,则返回True;如果转换失败,即抛出ValueError异常,则返回False。
2024-03-09 21:05:23
2801
原创 Python-import hook机制原理与使用
在 Python 众多特性中,有一个特性隐秘而强大,它就是 Python 的 import hook 机制。利用它,我们可以接管 Python 的模块导入流程,实现非常强大的自定义功能,
2024-01-22 00:39:56
3150
原创 Python-利用resource限制资源使用
当我们在运行python程序时,如果希望程序所需要的消耗系统资源不能超过一定的量时,例如CPU利用率不能超过N%。可以使用resource。resource 模块用于测量和控制程序使用的系统资源的基本机制。:需注意在 win 和 mac环境,该模块可能存在问题,建议linux下使用。
2024-01-21 22:09:57
2523
原创 Python-setup进阶打包命令
--python setup.py build # 仅编译不安装 --python setup.py install #安装到python安装目录的lib下 --python setup.py sdist #生成压缩包(zip/tar.gz) --python setup.py bdist #生成平台安装包 --python setup.py bdist_wininst #生成NT平台安装包(.exe) --python setup.py bdist_rp
2024-01-21 00:27:42
4341
原创 ART-Adversarial Robustness Toolbox检测AI模型及对抗攻击的工具
Adversarial Robustness Toolbox 是 IBM 研究团队开源的用于检测模型及对抗攻击的工具箱,为开发人员加强 AI模型被误导的防御性,让 AI 系统变得更加安全,ART支持所有流行的机器学习框架 (TensorFlow,Keras,PyTorch,MXNet,scikit-learn,XGBoost,LightGBM,CatBoost,GPy等),所有数据类型 (图像,表格,音频,视频等)和机器学习任务(分类,物体检测,语音识别, 生成模型,认证等)。
2024-01-14 15:09:00
2304
原创 Python-AST语法树
在计算机科学中,AST),是源代码的抽象语法结构的树状表现形式,这里特指编程语言的源代码。AST是在处理源代码时所使用的一种中间表示形式,在编译和代码生成过程中起着关键作用。之所以说语法是「抽象」的,是因为这里的语法并不会表示出真实语法中出现的每个细节。AST中的每个节点表示源代码中的一个语法构造,如变量声明、表达式、函数调用、控制结构等。。例如,一个函数声明的AST节点可能包含多个子节点,如函数名、参数列表和函数体等。
2024-01-14 00:14:09
8951
1
原创 Python-在不同对象中使用 in 操作符的查找效率
在Python中in操作符可以用于判断某个元素是否存在于当前对象中,而对于不同的Python对象,使用in操作符的处理效率是不一样的。针对 4 种常见的Python数据类型进行测试:list、tuple、set、dict。
2024-01-02 23:48:44
795
原创 Python-位置限定参数
python中有位置参数、关键字参数、默认参数、非固定参数、Python 中已经使用标记提供了,而使用标记来支持的,还可以提高语言的一致性。对于位置或关键字参数,并不一定要限制将其混合使用。接下来逐一介绍。。。
2024-01-02 23:20:10
739
原创 Python-单行赋值的执行顺序
其实并不相悖,其实左边的赋值也是有顺序的,右边的值计算完成后,为(1, 2),赋给左边时候,先赋值i=1,然后再执行x[i]=2,即x[1]=2,就出现了如上的结果。Python-再并行赋值时候,会先顺序执行等号右边的表达式,再依次将值赋给左边的变量,上例中,先将右边变量打包成元组,即(2, 1),然后按照。结果我们发现下被替换的值不是i=0处的值,而是i=1的值,这与我们上面的例子“交换a,b的值”的例子相悖了,为什么呢?,依次将 2 赋值给 a,将 1 赋值给 b。结果是a,b的值交换了顺序。
2024-01-02 22:26:38
687
原创 Numba:加速python代码
Numba是一款可以将python函数编译为机器代码的JIT编译器,经过Numba编译的python代码(仅限数组运算),其运行速度可以接近C或FORTRAN语言。普通python语言靠Cython编译的,但是Numba使用Jit编译器可以直接将一个函数转化为机器码。JIT的全称是 Just-in-time,在 numba 里面则特指 Just-in-time compilation(即时编译动态编译(dynamic compilation):指的是“在运行时进行编译”;
2023-09-12 08:16:20
1398
2
原创 Python-tracemalloc-跟踪内存分配
tracemalloc 模块是一个用于对 python 已申请的内存块进行debug的工具。它能提供以下信息:定位对象分配内存的位置按统计python的内存块分配情况: 总大小、块的数量以及块平均大小。对比两个内存快照的差异,以便排查内存泄漏。
2023-09-10 22:42:31
2003
原创 Python-time.time() 和 time.perf_counter()
返回自纪元以来的秒数作为浮点数,但是时期的具体日期和闰秒的处理取决于使用的平台。比如:在Windows和大多数Unix系统上,纪元是1970年1月1日00:00:00(UTC),并且闰秒不计入自纪元以来的秒数,这也通常被称为Unix时间。我们要可以通过gmtime(0)查看自己平台上的纪元。。虽然此函数通常返回非递减值,但如果在两次调用之间设置了系统时钟,则它可以返回比先前调用更低的值。通常用time()来做时间的格式输出,也会用在一些测试代码时间上面。在我们测试代码的时候需要调用两次,做差值,
2023-09-10 22:23:42
1595
原创 强化学习-理解及应用:解决迷宫问题
强化学习(Reinforcement Learning, RL)是一种机器学习方法,旨在让智能体(agent)通过与环境的交互学习如何做出最优的行动选择以获得最大的累积奖励。
2023-07-09 11:47:40
4806
原创 AI模型隐私风险及防护技术
随着AI成为新一代关键技术趋势,围绕着AI的服务也越来越普及。特别是结合了云计算以后,机器学习数据的标注、模型训练及预测等服务纷纷上云,为用户提供了强大的算力和优秀的算法,极大方便了广大开发者与企业用户。
2023-03-25 20:29:33
3172
转载 Python中raise…from用法
与此同时,在 Python 3.3 中 A异常 的 __suppress_context__ 属性会被设置为 True,这样就抑制了 A异常 的 __context__ 属性,即忽略 __context__ 属性。当在 except 块或者 finally 块中出现异常时(包括使用单独的 raise 重新抛出异常的情况),之前的异常会被附加到新异常的 __context__ 属性上。如果 B 是异常类或者异常实例,那么 B 会被设置为 A 的 __cause__ 属性,表明 A异常 是由 B异常 导致的。
2023-03-12 22:21:23
986
转载 Linux 查找文件内容
例子:在当前目录里第一级文件夹中寻找包含指定字符串的 .in 文件。$ grep –i "被查找的字符串" 文件名。$ grep -c "被查找的字符串" 文件名。$ grep –v "被查找的字符串" 文件名。$ grep –e "正则表达式" 文件名。$ grep "被查找的字符串" 文件名。
2023-03-12 22:06:23
850
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅