- 博客(113)
- 收藏
- 关注
原创 深入理解Kubernetes Pod:从基础概念到实战编排
Kubernetes Pod是容器编排的最小部署单元,本质上是比容器更高层次的抽象,支持多容器共享网络和存储资源。Pod通过命名空间隔离、Cgroups限制和文件系统隔离确保安全性,其生命周期包含Pending、Running等状态流转。Kubernetes采用声明式API和控制器(如Deployment、StatefulSet)管理Pod,实现期望状态的自动调节。实战操作包括Pod查看、日志获取和调试技巧,高级配置涉及节点调度、存储和健康检查。常见问题如调度失败可通过事件日志排查。理解Pod机制是掌握Ku
2025-08-07 14:12:11
919
原创 NVIDIA/k8s-device-plugin仓库中GPU无法识别问题的issues分析报告
摘要:NVIDIA/k8s-device-plugin仓库中频繁出现GPU识别问题,主要表现为节点未显示GPU资源、插件日志报错等。通过对10+相关issues的分析,问题主要涉及容器运行时配置错误(40%)、插件版本兼容性(25%)、NVML库加载失败(15%)等场景。典型案例包括containerd配置错误导致GPU无法识别、CRI-O未配置NVIDIA运行时等。解决方案包括修正容器运行时配置、使用RuntimeClass、适配特定环境版本等。调试时建议检查插件日志、验证NVML库可用性及节点资源状态。
2025-08-07 11:46:14
627
原创 Kubernetes部署NVIDIA GPU设备插件完全指南
通过本文介绍的步骤,您已成功在Kubernetes集群中部署了NVIDIA GPU设备插件。现在,您的集群可以运行GPU加速的容器化应用,如机器学习训练、AI推理等任务。如需进一步优化,可参考NVIDIA官方文档,配置高级功能如MIG(多实例GPU)或GPU共享。
2025-08-06 11:24:41
877
原创 nvidia 驱动安装问题汇总
NVIDIA显卡驱动是发挥GPU性能的关键组件,无论是深度学习训练、图形渲染还是科学计算,都依赖于稳定的驱动环境。然而,驱动安装过程中常遇到内核模块冲突、UVM加载失败等问题,本文将从实战角度出发,详解驱动组件构成、常见故障排查及最佳实践。
2025-08-06 11:18:26
440
原创 Pydantic 配置管理
摘要:本文全面介绍Pydantic 2.9+的配置管理功能,重点解析BaseSettings与SettingsConfigDict的使用方法。通过类型注解、环境变量映射和多文件配置加载等实例,展示如何构建类型安全的配置系统。文章包含优先级规则详解、代码示例、费曼式概念简化以及实践任务,帮助开发者掌握从基础到实战的配置管理技巧,特别适合与FastAPI等框架集成应用。
2025-07-25 16:21:59
839
原创 代码随想录day8: 字符串part01
字符串也是一种数组,元素在内存中是连续分布。模拟,通过提前设置 i 的规律,完成反转。● 卡码网:54.替换数字。● 344.反转字符串。
2025-05-04 11:03:47
205
原创 代码随想录day7: 哈希表part02
首先四个数组都是长度为 n, 然后需要选取不同的下标数值相加为0.请你计算有多少个元组 (i, j, k, l) 能满足?那么就是三道题,需要具体细致debug一遍去领悟细节。看了一下题解,所以还是 排序+双指针。按照题目提醒,需要考虑去重问题。最粗暴的解法肯定是 循环?第一思路是 排序+双指针。● 383. 赎金信。
2025-05-04 10:36:13
165
原创 代码随想录算法训练营第一天:数组part1
今日学习的文章链接和视频链接● 自己看到题目的第一想法● 看完代码随想录之后的想法● 自己实现过程中遇到哪些困难● 今日收获,记录一下自己的学习时长状态思路理解完成 30%代码debug完成 60%代码模板总结并抽象出来 100%
2025-04-24 22:58:01
970
原创 CAMEL 学习笔记一
CAMEL (Communicative Agents for “Mind” Exploration of Large Language Models)是一个开源的多智能体框架,专注于构建基于大语言模型的智能体交互系统。该框架通过角色扮演和结构化对话机制,实现智能体之间的有效协作。在CAMEL框架中,ChatAgent 是最基础的智能体单元,负责处理对话逻辑和任务执行。而RolePlaying 和Workforce 则是多智能体系统,用于协调多个智能体的协作。
2025-03-12 00:12:57
590
原创 opencv(6): 形态学操作(二值化、自适应阈值、开闭、对比度)
如何在图片中识别出一些物体的位置。具体是什么不是形态学的范畴。处理方法基本是对二进制图像进行处理。卷积核决定着图像处理后的效果。
2025-02-25 16:06:16
1015
原创 opencv:距离变换 cv2.distanceTransform
函数用于计算图像中每一个非零点像素与其最近的零点像素之间的距离(Distance Transform, DT算法),输出的是保存每一个非零点与最近零点的距离信息;图像上越亮的点,代表了离零点的距离越远。src:这是输入的8位单通道(通常是二值化的)源图像。每个像素值要么是0(背景),要么是255(前景),函数会计算每个前景像素到最近背景像素的距离。dst:这是输出图像,包含计算出的距离信息。它是一个8位或32位浮点型的单通道图像,与src图像具有相同的尺寸。
2025-02-24 16:49:31
889
原创 添加 env 配置,解决import路径问题
/ 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?// 使用 IntelliSense 了解相关属性。添加 env 配置,解决import路径问题。// 悬停以查看现有属性的描述。
2024-12-31 17:39:32
273
原创 coco_eval 使用
coco 的评估函数对应的是 pycocotools 中的 cocoeval.py 文件。从整体上来看,整个 COCOeval 类的框架如图:基础的用法为cocoGt, cocoDt 应该是什么格式?如果是COCO 格式,注意需要增加 score 值。(how?
2024-07-10 15:19:58
1931
1
原创 关于 matplotlib 显示灰度图片为绿调的问题
是因为 imshow 本身是一般需要传入 RGB 的图片,如果传入的二维的数据,但是 cmap 默认是viridis,就出现了 绿调。可通过调整 cmap=‘gray’ 解决。
2024-07-10 15:15:57
270
原创 Sora 原理与技术实战笔记一
Simulate virtual worlds: 链接虚拟世界,游戏视频场景生成Create a video: 长达60s的视频并保持人物、场景一致性。Sora, 通过 patch,预测下一个patch,构建一个自回归的方式来进行的。为了处理视频,提出了 ViViT,用 Transformers 来处理视频的一个模型.ViT 把完整的图片 Patch 化,把单个图片的patch 序列化。Video-to-video: 改变源视频风格or场景。Image-to-video: 图生视频。
2024-02-29 23:15:52
539
原创 【推荐算法系列六】Wide&Deep模型
Wide 部分的主要作用是让模型具有较强的“记忆能力”(Memorization),而 Deep 部分的主要作用是让模型具有“泛化能力”(Generalization),因为只有这样的结构特点,才能让模型兼具逻辑回归和深度神经网络的优点,也就是既能快速处理和记忆大量历史行为特征,又具有强大的表达能力,这就是 Google 提出这个模型的动机。就是因为 Wide 部分可以增强模型的记忆能力,让模型记住大量的直接且重要的规则,这正是单层的线性模型所擅长的。部分倾向于对已经反馈过的历史数据,学习其中的关系。
2024-02-27 18:33:02
1225
原创 【推荐算法系列五】DeepFM 模型
在这一层中,会对 FM Layer 的结果与 Hidden Layer 的结果进行累加,这样做的好处是将低阶与高阶的特征交互融合,然后将得到的结果进行一个 sigmoid 操作,得到预测的概率输出。根据上面的结构图可以看到,实际上每一个高维稀疏向量都有自己所对应的 Embedding 向量,不同的向量之间的 Embedding 实际上是相互独立的,我们把每一个稠密向量进行横向的拼接,使其变成一个长度很长的稠密向量,然后再拼接上原始的数值特征,统一作为 Deep 与 FM 的输入。
2024-02-27 17:57:27
1387
原创 【推荐算法系列十六】:协同过滤
基于模型的协同过滤(Model-based Collaborative Filtering)是协同过滤方法的一种,它与传统的基于邻域的协同过滤方法不同。基于模型的协同过滤是通过训练一个模型来预测用户对物品的评分或者喜好,而不是直接基于用户或物品之间的相似性来进行推荐。通过分析用户之间的相似性来实现推荐。常见的基于模型的协同过滤算法包括基于矩阵分解的隐语义模型、基于概率图模型的贝叶斯网络模型、基于神经网络的深度学习模型等。其推荐的对象不是与目标用户相似的其他用户,而是与该用户曾经感兴趣的内容相似的其他内容。
2024-02-27 16:35:47
1228
原创 设计模式学习笔记(一):基本概念;UML
结构视图表示系统的静态行为,描述系统的静态元素,如包、类与对象,以及它们之间的关系;在使用类图表示关联关系时可以在关联线上标注角色名,一般使用一个表示二者之间关系的动词或者名词表示角色名(有时该名词为实例对象名),关系的两端代表两种不同的角色。因此,在一个关联关系中可以包含两个角色名,角色名不是必需的,可以根据需要增加,其目的是使类之间的关系更加明确。类图(Class Diagram)是用出现在系统中的不同类来描述系统的静态结构,主要用来描述不同的类以及它们之间的关系。不同类型的对象可以使用相同的接口。
2024-02-05 22:46:33
1175
原创 OpenCompass 大模型评测
推理阶段主要是让模型从数据集产生输出,而评估阶段则是衡量这些输出与标准答案的匹配程度。使用 OpenCompass 评测 InternLM2-Chat-7B 模型使用 LMDeploy 0.2.0 部署后在 C-Eval 数据集上的性能。您需要配置整个评估过程,选择要评估的模型和数据集。使用 OpenCompass 评测 InternLM2-Chat-7B 模型在 C-Eval 数据集上的性能。OpenCompass 官方提供的数据集是怎么处理我们自己的模型能力的?每个评估任务由待评估的模型和数据集组成。
2024-02-05 13:57:39
1345
原创 Thinkpad E550 安装 Ubuntu
Thinkpad E550 使用 enter+f1进入 bios, 使用 f12 进入 boot 选项。不知道这个和系统有啥关系,感觉之前不是这样。。。
2024-02-04 12:52:00
934
原创 如何计算模型的复杂度(参数量,FLOPs)
全连接层就理解为一个矩阵,矩阵行数,矩阵列数,如考虑bias,则先计算输出向量中一个元素需要多少计算量,首先要做。在训练时计算的均值方差是直接计算,在预测时是用 running mean,running var.对于池化层而言,常用的Max-pooling,Avg-pooling等是不存在参数量的。先计算输出的feature中一个元素需要的计算量。若考虑 bias,则做的加法会多一次。: 输入的channel 数。: 输入的 height。: 输入的 width。: 输入的 width。
2024-02-03 00:01:14
4550
原创 Datawhale 强化学习笔记(四)结合策略梯度和价值函数的 Actor-Critic 算法
结合了策略梯度和值函数的 Actor-Critic 算法则能同时,并且甚至能问题。基于价值的(或称评论员型,Critic), 基于策略的(或称 演员型)
2024-01-24 00:17:14
1071
原创 LMDeploy 大模型量化部署实践
在设备上运行起来,能够接受输入,返回输出。最重要的就是性能和效率方面的考虑。大模型也是模型的一种,内存开销大,7b 要14G左右的显存。因为是自回归的方式,需要把中间结果缓存下来,生成的结果越多,占的显存就越大。生成过程就是采样的过程。推理的时候是如何解决这种要生成万字的情况?依赖前一个生成的时候是怎么处理的?服务也是一个框架支持起来的。推理引擎是 C++ 写的,上层是 Python. 可以把 Python 当成一个客户端。量化是非常有必要的。请求的吞吐量。提升推理的速度。
2024-01-21 23:21:03
595
原创 Datawhale 强化学习笔记(三)基于策略梯度(policy-based)的算法
轨迹是由状态和动作组合而成的序列,实际上一方面环境的初始状态是随机的,另一方面智能体每次采取的动作是随机的,从而导致每条轨迹的长度都可能不一样,这样组合起来的轨迹几乎是无限多条的,这样一来求解目标函数的梯度就变得非常困难了。基于价值的算法是通过学习价值函数来指导策略的,而基于策略的算法则是对策略进行优化,并且通过计算轨迹的价值期望来指导策略的更新。,然后利用这些轨迹的平均值来近似求解目标函数的梯度。策略梯度算法是一类直接对策略进行优化的算法,但它的优化目标与基于价值的算法是一样的,都是累积的价值期望。
2024-01-20 23:42:21
950
原创 NVIDIA 大模型 RAG 分享笔记
通用目的的微调技术。参数化和非参数化的技术。RAG对于大语言模型来说类比于开卷考试。三个步骤RetrivealAugmentation: 增强的 prompt增强的上下文是有理有据的,减少幻觉参数化的知识,结合传入的数据,生成技术非参数化的技术:数据库的部分文档加载预训练的参数化部分基础大语言模型的选择部署平台的选择,提升用户的体验模型:适合场景的模型,比如代码类,问答类会有对应的模型部署:低延迟、高吞吐率。是否支撑换模型。
2024-01-18 15:17:43
1752
原创 Datawhale 强化学习笔记(二)马尔可夫过程,DQN 算法
其次,每次迭代的样本都是从环境中实时交互得到的,这样的样本是有关联的,而梯度下降法是基于一个假设的,即训练集中的样本是独立同分布的。在 DQN 算法中,大臣是不管好的还是坏的情报都会汇报给皇帝的,而在 Double DQN 算法中大臣会根据自己的判断将自己认为最优的情报汇报给皇帝,即先在策略网络中找出最大 Q 值对应的动作。目标网络和当前网络结构都是相同的,都用于近似 Q 值,在实践中每隔若干步才把每步更新的当前网络参数复制给目标网络,这样做的好处是保证训练的稳定,避免 Q 值的估计发散。
2024-01-17 13:24:14
1392
原创 Datawhale 强化学习笔记(一)概述
多智能体从数据中学习(从演示中学):利用数据来辅助学习模仿学习: 模仿学习是指在奖励函数难以明确定义或者策略本身就很难学出来的情况下,我们可以通过模仿人类的行为来学习到一个较好的策略逆强化学习:从人类数据中学习奖励函数;通过观察人类的行为来学习到一个奖励函数,然后通过强化学习来学习一个策略。由于需要专家数据,逆强化学习会受到噪声的影响,因此如何从噪声数据中学习到一个较好的奖励函数也是一个难题。
2024-01-17 12:47:51
987
原创 基于 InternLM 和 LangChain 搭建你的知识库
劣势:能力受基座模型影响大,RAG每次需要将检索文档和问题提交给大模型,极大占用上下文限制。优势:可以充分拟合个性化数据;个性化大模型,依然具有广大的通用能力。劣势:无法解决实时更新成本问题。算力、数据都需要成本。如何打造个人专属的大模型应用也是重要的问题。如何打造垂域大模型是一个重要落地方向。Finetune 轻量级的微调。RAG 外挂一个知识库。优势:成本低,实时更新。
2024-01-14 21:58:51
404
原创 书生浦语大模型训练营第一课笔记:全链路开源体系
AI 的研究方向,从专业模型转变为通用模型。上海人工智能实验室的开源历程覆盖了轻量级、中量级、重量级的模型;7B 20B 都是免费开源的,可商用。
2024-01-05 19:47:28
477
原创 优化算法 学习记录
优化算法使我们能够继续更新模型参数,并使损失函数的值最小化。优化算法的性能直接影响模型的训练效率。然而,在深度学习中,我们可能希望更慢地降低学习率。凸优化的入门,以及凸目标函数上非常简单的随机梯度下降算法的证明。在AdaGrad算法中,我们允许每个坐标有单独的学习率。目标函数通常是训练数据集中每个样本的损失函数的平均值。我们可以看到,每次迭代的计算代价从梯度下降的。这个动量法似乎不是针对学习率的改变。优化算法本身会根据梯度调节其实际的学习率。的训练样本的损失函数,其中。的目标函数的梯度计算为。
2023-12-09 02:59:49
237
原创 刷题方法论
3.记忆 (脑图) + 反复 (五毒神掌) 是最为有效的方法。2.谨记“通过”只是开始,关键要看高票代码和高质量题解!倍速播放,难点:暂定+反复;2.一遍或两遍不理解,很正常 (坚持五毒神掌)1.数据结构和算法有其客观存在的复杂度。1.忘记践行五毒神掌(有规律地过遍数。(先BFS、再DFS:举例)
2023-11-20 16:23:14
272
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人