新闻详情

新闻详情

首页 / 资讯中心 / 详情

血细胞检测数据集VOC/COCO/YOLO标签与YOLOv8训练实践

发布时间:2026/9/28 16:33:09来源:尧图网络
血细胞检测数据集VOC/COCO/YOLO标签与YOLOv8训练实践
简介面向医学影像与目标检测学习者的YOLO红白细胞血小板检测数据集包含一千张真实场景下的高质量血液细胞图片数据场景丰富并配有VOC、COCO、YOLO三种格式的标注文件标注框质量高可直接用于YOLO系列目标检测模型的训练、验证与算法研究。压缩包内共两千个文件以一千个XML和九百九十个TXT标注文件为主体另配环境搭建教程、训练教程、三个数据集划分脚本及一个YAML配置文件整体大小约二十九点三四兆便于快速下载与本地部署。随包教程同时覆盖Windows与Linux环境读者可参考案例修改后训练自己的数据集划分脚本支持训练集、验证集、测试集的自由切分并生成ImageSets记录文件从环境配置到数据划分都有清晰指引大幅减少手动整理标注的工作量。目前已有一百九十一人学习或浏览适合课程设计、科研实验以及需要真实医学图像支撑的YOLO入门与进阶开发者。1. 为什么血细胞检测数据集要同时给 VOC、COCO 和 YOLO 三种标签做医学影像目标检测的同行应该都有过这种体验好不容易在公开渠道找到一个血细胞相关数据集下载下来发现只有一种标注格式想用 YOLO 训练就得自己写脚本转换转完还要担心坐标对不上、类别错位、训练集和验证集里有重复图。而标题里这个 YOLO 红白细胞血小板检测数据集把 1000 张血液涂片图像和 VOC、COCO、YOLO 三种标签一并放入外加划分脚本和训练教程本质上解决的正是“拿到图之后还要折腾两三天才能开始跑模型”这个痛点。这个数据集面向的是目标检测方向的血细胞形态学分析典型检测对象是白细胞WBC、红细胞RBC和血小板Platelets三类。1000 张图对医学图像任务来说不算大但配合三种标签格式和划分脚本足够支撑你把一套 YOLO 血细胞检测流程从数据准备一直跑到验证集 mAP 输出。无论你用的是 YOLOv5、YOLOv8 还是以后推出的新版本统一入口都是“先按格式拿到 labels再套训练模板”。接下来我把三种格式的标签逻辑、划分脚本的用法、训练流程和踩坑点按顺序拆开讲。2. 三种标注格式的底层逻辑VOC、COCO、YOLO 各自该存什么先说结论VOC 格式是给“人读”的COCO 格式是给“评价”的YOLO 格式是给“训练”的。这套数据集把三种格式都配好意味着你不管从哪个框架切入都能直接进入训练环节不用自己在格式之间反复横跳。2.1 VOC 格式的 XML 结构一张图一个文件VOC 格式的标签是 XML 文件一张图对应一个同名 XML。打开一个血细胞样本的 XML核心内容长这样annotation folderJPEGImages/folder filenameblood_001.jpg/filename size width640/width height480/height depth3/depth /size object nameRBC/name bndbox xmin180/xmin ymin220/ymin xmax280/xmax ymax320/ymax /bndbox /object object nameWBC/name bndbox xmin400/xmin ymin100/ymin xmax460/xmax ymax160/ymax /bndbox /object /annotation每一个object代表一个目标框name是类别名bndbox里四个值是左上角和右下角的像素坐标。注意这个坐标体系是 0 基索引和 OpenCV 读取图像时的像素坐标一致转换格式时不需要额外减 1。如果你打算自己写转换脚本最常犯的错是把xmin/ymin/xmax/ymax当成中心坐标去处理。VOC 的语义就是“绝对坐标的左上右下”没有任何归一化成分转换到 YOLO 时要做一次除法运算直接套公式即可后面会给出代码。2.2 COCO 格式的 JSON为了跑训练和评估COCO 格式的标签集中在单个 JSON 文件里三个关键字段是images、annotations和categories。images记录每张图的 id、文件名、宽高annotations记录每个目标框属于哪张图、类别 id 是什么、bbox 的[x, y, width, height]categories做类别 id 与名称的映射。在血细胞数据集里categories 一般是[{id: 1, name: WBC}, {id: 2, name: RBC}, {id: 3, name: Platelets}]注意 COCO 的 bbox 和 VOC 不同[x, y, width, height]不是[xmin, ymin, xmax, ymax]坐标换过去时需要做一次width xmax - xmin、height ymax - ymin。如果你从 COCO 的 JSON 转 YOLO txt还需要注意 COCO 的 bbox 坐标可能是 float 类型而 VOC 的 XML 里通常是 int直接强转会导致目标框偏移 1 到 2 个像素影响小目标检测。2.3 YOLO 格式的 txt归一化的中心点与宽高YOLO 的训练标签是一个 txt 文件对应一张图每行格式是class_id cx cy w h其中cx、cy是归一化后的目标中心坐标w、h是归一化后的宽高取值范围都在 0 到 1 之间。以 blood_001.jpg 的第一行假设为1 0.359375 0.562500 0.156250 0.208333含义就是 RBC 类中心在图的横向 35.94%、纵向 56.25% 的位置宽度占全图的 15.63%高度占 20.83%。YOLO 格式之所以选择归一化是因为训练时输入图片会被缩放到固定尺寸比如 640x640归一化坐标不随原始图像尺寸变化模型读取标签时不需要关心原图是 640x480 还是 1920x1080。2.4 三种格式互相转换最小可用脚本拿到三种格式的标签多数场景下还是需要在它们之间互转。常见做法是写一个 Python 脚本统一处理。下面是一个从 VOC XML 转 YOLO txt 的最小实现血细胞数据集里如果只给你 VOC 和 YOLO 两种你也能靠它补出 COCOimport xml.etree.ElementTree as ET class_map {WBC: 0, RBC: 1, Platelets: 2} def voc_xml_to_yolo_txt(xml_path, txt_path): tree ET.parse(xml_path) root tree.getroot() width int(root.find(size/width).text) height int(root.find(size/height).text) lines [] for obj in root.iter(object): name obj.find(name).text if name not in class_map: continue box obj.find(bndbox) xmin float(box.find(xmin).text) ymin float(box.find(ymin).text) xmax float(box.find(xmax).text) ymax float(box.find(ymax).text) cx (xmin xmax) / 2.0 / width cy (ymin ymax) / 2.0 / height w (xmax - xmin) / width h (ymax - ymin) / height lines.append(f{class_map[name]} {cx:.6f} {cy:.6f} {w:.6f} {h:.6f}) with open(txt_path, w) as f: f.write(\n.join(lines)) # 用法示例转换单张图的标注 voc_xml_to_yolo_txt(Annotations/blood_001.xml, labels/blood_001.txt)这段代码的逻辑很直白先解析 XML 里的图像宽高再把每个 object 的xmin/ymin/xmax/ymax做两次运算一次求中心点一次求宽高最后统一除以图像宽高完成归一化。参数说明里有两点值得注意。class_map的 id 要和训练配置里的names顺序严格对齐否则模型预测出的类别全是乱的。另外我特意用了float(box.find(...).text)而不是int防止 XML 里出现浮点坐标时被截断这在从标注工具导出时很常见直接 int 会把小数部分丢掉导致框偏移。3. 用划分脚本拆出训练集、验证集和测试集为什么要按 8:1:1 来分数据集拿到手里第一件事不是训练而是划分。标题里的划分脚本承担的就是这个工作。一个合格的划分脚本要把 images 和对应的 labels 按比例拆成 train、val、test 三个子集并且保证每张图和它的标签文件一一对应不会出现训练集有图没标签、验证集有标签没图的情况。3.1 划分比例的选择逻辑1000 张图的规模下我通常按 8:1:1 划分也就是 800 张训练、100 张验证、100 张测试。这个比例的依据很直接训练集太少模型见不到足够的血细胞形态红细胞和血小板这类小目标学不出稳定的特征验证集太少早停和超参数调整的置信度不够100 张验证图足够算出波动可控的 mAP测试集只用来做最终评估100 张图已经能暴露类别层面的明显漏检。如果你的目标并不是模型竞赛而是要把模型用于实际检测场景建议从 1000 张里多留一点做测试比如 700 训练、150 验证、150 测试。因为血细胞检测的最终衡量标准是“没见过的血液涂片上能不能找到三类细胞”测试集越接近真实分布最终效果判断越靠谱。划分脚本里通常能改比例参数我就按常见做法来设计。3.2 一个不依赖第三方库的划分脚本划分脚本一般是 Python 文件核心操作是三件事读取所有图片文件名、随机打乱、按比例复制到不同目录。下面这段代码可以直接跑import os import random import shutil random.seed(42) image_dir images # 原始图片目录 label_dir labels # 原始标签目录YOLO 格式的 txt train_dir train val_dir val test_dir test train_ratio 0.8 val_ratio 0.1 images [f for f in os.listdir(image_dir) if f.endswith((.jpg, .png, .jpeg))] random.shuffle(images) train_count int(len(images) * train_ratio) val_count int(len(images) * val_ratio) train_set images[:train_count] val_set images[train_count:train_count val_count] test_set images[train_count val_count:] for subset, subset_name in [(train_set, train_dir), (val_set, val_dir), (test_set, test_dir)]: os.makedirs(f{subset_name}/images, exist_okTrue) os.makedirs(f{subset_name}/labels, exist_okTrue) for img_name in subset: src_img os.path.join(image_dir, img_name) dst_img os.path.join(f{subset_name}/images, img_name) shutil.copy(src_img, dst_img) label_name os.path.splitext(img_name)[0] .txt src_lbl os.path.join(label_dir, label_name) dst_lbl os.path.join(f{subset_name}/labels, label_name) if os.path.exists(src_lbl): shutil.copy(src_lbl, dst_lbl) else: print(f警告: {label_name} 不存在跳过)关键点有三个。一是random.seed(42)固定随机种子保证每次运行划分结果完全一致这很重要——跑训练发现效果不对时你需要能复现同一个划分来做对照实验。二是用shutil.copy而不是move保留原始目录不动划分出错了随时能重来这个习惯能给你留一条后悔药。三是检查标签文件存在性有些图像可能没有对应的 txt 文件直接跳过而不是报错中断后面单独排查。提示如果你拿到的是 VOC 或 COCO 格式标签划分前先全部转换成 YOLO txt再跑这个脚本。因为 YOLO 训练框架读取标签时默认每个 txt 和图片在同一目录树结构下转完再划分最省事。3.3 划分后立刻验证两件事划分脚本跑完后不要急着开始训练先检查两个文件。第一个是 train.txt 或你的数据配置文件中引用的路径是否真实存在。第二个是统计一下三类目标在训练集、验证集、测试集里的数量分布。血细胞数据里最常见的问题是原始数据按文件夹整理时已经隐含了某种顺序比如前面 300 张全是红细胞密集的图像后面 300 张才有白细胞和血小板随机打乱时如果随机种子设置不当可能导致某个类别在验证集里数量为零训练过程不报错但 mAP 曲线会跳得让人怀疑人生。简单统计类别分布的方法是把所有训练集 txt 读一遍统计每行第一个数字出现的次数。这个动作很轻量但能挡掉一大半后续排查时间。3.4 对病人级数据要额外注意的划分方式血细胞检测有一个容易被忽略的坑如果同一个病人的血液涂片图像同时出现在训练集和测试集模型实际上见过这个病人的细胞形态测试结果会虚高。正规做法是按病人或涂片来源做组级划分而不是单纯按图片随机划分。标题里提到的 1000 张血细胞图如果来自多个不同病人随机划分会让验证 mAP 虚高至少 5 到 10 个点。具体做法是给每张图片的文件名加上病人 id 前缀划分时按前缀分组确保同一个病人的所有图都进同一个子集。这份数据集的划分脚本如果没做病人级隔离你可以在自己复现时加一层分组逻辑。做法是把images列表先按文件名前缀分组再随机分到 train、val、test这样更贴近医学影像任务的真实评估需求。4. 用分割后的数据集训一个 YOLO 血细胞检测模型从 data.yaml 到训练命令划分完成后数据集结构长这样blood_dataset/ ├── train/ │ ├── images/ │ │ ├── blood_001.jpg │ │ └── ... │ └── labels/ │ ├── blood_001.txt │ └── ... ├── val/ ├── test/ └── data.yaml接下来要做的是把这段结构写进 YOLO 的配置文件然后选一个合适的预训练权重开始训练。4.1 血细胞场景下选择哪个 YOLO 分支标题写的是 YOLO没有限定版本我一般会建议按你现在手头环境选。YOLOv5 的生态成熟部署资料多数据增强策略稳定YOLOv8 在检测头细节上做了不少调整训练出的模型在小目标召回上通常更好一点而且命令行工具统一一条命令就能训练。血细胞检测这个任务三类目标的尺度差异很明显红细胞较大且密集血小板偏小且稀疏属于典型的小目标夹杂常规目标场景。如果你从零开始我建议直接上 YOLOv8因为它的默认配置里对小目标更友好的训练策略减少了你手动调 anchor 的负担。当然如果你要部署到 Jetson 之类的嵌入式设备那 YOLOv5 的 C 部署链更顺手选型就看落地环境。4.2 写 data.yaml路径、类别数和类别名YOLO 训练的第一步是写 data.yaml。一个血细胞检测的 data.yaml 配置如下path: blood_dataset train: train/images val: val/images test: test/images nc: 3 names: 0: WBC 1: RBC 2: Plateletspath是数据集根目录的绝对路径或相对路径注意 YOLOv8 默认以当前工作目录解析相对路径如果你的终端不是在 blood_dataset 的上一级目录启动路径会直接解析失败最常见的报错是Train error: dataset not found。train和val填的都是 images 目录的相对路径框架会自动在同一级找 labels 目录所以不要在这里写 labels 路径。names的类别顺序和之前提到的class_map必须完全一致。转换标签时如果把 WBC 放到了 id 0这里 names 的 0 就必须是 WBC顺序错一个全盘皆错。4.3 训练命令与关键超参数epochs、batch、imgsz用 YOLOv8 训练血细胞检测模型的完整命令yolo detect train \ datadata.yaml \ modelyolov8n.pt \ epochs150 \ batch16 \ imgsz640 \ patience20 \ projectruns \ nameblood_cell_exp命令里的modelyolov8n.pt是让框架自动下载 YOLOv8 的 nano 预训练模型参数并加载到模型里。nano 模型只有 3.2M 左右参数量在血细胞这种目标尺度不算极端的场景下够用。如果你的 GPU 显存有 12G 以上可以换成yolov8s.pt精度会有提升但训练时间差不多翻倍。1000 张图的规模很小不建议直接上 yolov8l 或 yolov8x训练集不足以支撑大模型收敛反而容易过拟合。预训练模型下载需要联网如果网络受限可以手动下载权重文件放到 YOLO 的权重目录再引用本地路径。epochs150是基于 1000 张图的经验值。医学图像检测通常收敛得比自然图像慢150 轮能让 loss 曲线充分走平。batch16和imgsz640的组合决定了显存占用我实测在 8G 显存的卡上正好能跑如果训练中报 CUDA out of memory优先把 batch 降到 8然后才是降低 imgsz 到 512。patience20是早停策略如果验证集 loss 连续 20 轮没有降低训练会自动终止。对小数据集来说这个参数很关键因为模型跑到第 80 轮可能就过拟合了没有早停会白白多跑 70 轮浪费时间。4.4 训练过程中观察什么loss 曲线和验证指标训练日志里需要盯三个指标box_loss、cls_loss、val_mAP50。box_loss 是边界框回归损失血细胞检测里它的下降速度一般比较快前 30 轮能降一半cls_loss 是分类损失三类细胞的形态差异大分类问题本身不困难它降得慢的话说明类别顺序配置有问题。val_mAP50 是验证集上 IoU 阈值为 0.5 时的平均精度这个值在 0.7 以上基本就能用了。训练完成后权重文件在runs/blood_cell_exp/weights/目录下一个是best.pt一个是last.pt。best.pt 是验证集上 mAP 最高的权重last.pt 是最后一轮权重。经验上如果两者差距超过 2 个 mAP 点说明早停起作用了用 best.pt 做后续测试准没错。5. 训练血细胞检测数据集避坑5 个最容易翻车的地方这部分写全流程里最容易出问题的环节。每条都是“现象 → 原因 → 解决”的结构给你一套可以直接对号入座的排查思路。5.1 血小板目标频繁漏检验证集 mAP50 高但 mAP50-95 惨淡现象训练完成后红细胞的检测框很干净白细胞也能框出来但血小板在每张图上都漏掉三分之一以上尤其是在血小板密度高的区域模型宁可少框也不碰。原因血小板在 640x640 的输入尺寸下平均只有 20 到 30 个像素见方属于典型小目标。YOLOv8 的默认 anchor 在 640 尺度下对 32 像素以下的目标响应很弱模型学不出血小板的有效特征。mAP50-95 要求 IoU 从 0.5 到 0.95 连续计算小目标的 IoU 本身就难达到 0.5 以上所以整体拉低。解决第一尝试把imgsz从 640 提到 960目标在特征图上的像素面积能扩大约 2.25 倍小目标召回率会有明显提升代价是显存占用增加。你可以把训练命令里的imgsz640改成imgsz960。第二是只对血小板类别使用更强的数据增强比如在训练过程中对血小板目标做随机复制粘贴。第三是换用 P2 检测头或增加一层小目标检测分支这个改动较大适合在调参无效后再做。5.2 类别不平衡红细胞占了大半标注框现象训练日志里的 cls_loss 降得很低但混淆矩阵里白细胞被误检成红细胞的案例特别多。查看 labels 分布后训练集里红细胞框的数量是白细胞的 10 倍以上。原因血液涂片里红细胞天然数量远多于白细胞和血小板这是数据分布本身决定的。模型在类别预测时被红细胞的大量样本带偏倾向于把不确定的区域判成红细胞。解决不要试图用删红细胞框的方式来平衡这种数据删完信息量损失太大。常见做法是保持原始分布训练后只看每个类别的 per-class AP不要总 mAP 一锤定音。另外对 WBC 类使用 mOSAIC 增强时注意别把同一个白细胞切碎增强噪声过多会让本来就稀疏的类别学得更差。如果确实需要类别平衡用复制少数类样本的方式比删减多数类更稳妥。5.3 标签坐标越界或宽高为 0训练直接崩现象训练跑到第 3 轮loss 突然变成nan或者训练进程直接报错退出。翻看标签文件时发现某一行 txt 里的w或h是负数或大于 1。原因VOC 转 YOLO 时如果原始 XML 里 xmax 和 xmin 相等或标注框超出了图像边界归一化后就会得到 0 或负数宽高。这类坏标签在血细胞数据里不少见因为红细胞紧挨在一起标注员复制框时经常出现边界重合有些标注工具还会导出负坐标。解决训练前做一次标签清洗逐行检查每个 txt把宽高小于 1e-6、坐标超出 [0, 1] 范围的样本过滤掉或直接丢弃。快速清洗代码import os label_dir labels bad_count 0 for label_file in os.listdir(label_dir): if not label_file.endswith(.txt): continue path os.path.join(label_dir, label_file) valid_lines [] with open(path, r) as f: for line in f: parts line.strip().split() if len(parts) ! 5: continue _, cx, cy, w, h parts cx, cy, w, h float(cx), float(cy), float(w), float(h) if w 0 or h 0 or not (0 cx 1 and 0 cy 1): bad_count 1 continue valid_lines.append(line.strip()) with open(path, w) as f: f.write(\n.join(valid_lines)) print(f清理了 {bad_count} 行异常标签)这段代码遍历 labels 目录下每个 txt过滤掉宽高非正数、中心点超出归一化范围的标签行。如果一张图的所有标签都被过滤掉对应的 txt 会变成空文件这也是个隐患最好顺手把空文件对应的图片从数据集里移除。5.4 训练过程中 BN 崩溃loss 跑到一半变 NaN现象训练到 30 轮左右时loss 突然跳到nan并且后续所有 batch 的 loss 都是nan。模型输出变成一片黑或一片花框。这个现象在血细胞数据上出现频率不低。原因批量归一化层的统计量在训练中期被某个异常 batch 污染。血细胞图像目标和背景对比度差异巨大个别 batch 里全是纯背景切片时BN 计算出的均值方差会出现极端值后续再回不来。解决最直接的办法是降低初始学习率YOLOv8 默认 lr 在 0.01 左右对 1000 张小数据集偏高我通常改成lr00.005同时开启 warmup 让前几轮学习率缓慢上升。其次是把 batch 从 16 提到 32BN 的统计量在更大 batch 下更稳定。如果这两个方法都试过仍然崩检查数据集中是否有损坏的图片文件读取失败产生的全零输入也会引起 BN 崩溃。你要是跑过大规模目标检测可能发现 BN 崩溃多发生在中后期本质上是优化轨迹出了问题只管缩小学习率往往就够了。5.5 验证集 mAP 很高但拿到真实血液涂片上效果差现象测试集 mAP50 达到了 0.85看起来很好。但把模型接到显微镜摄像头或扫描仪上真实血液涂片的检测效果下降明显误检率翻倍。原因数据划分时没有按病人或病例隔离。同一个病人不同视野的涂片图如果同时进了训练集和验证集模型相当于提前见过验证分布的答案mAP 虚高。另外如果原始数据都来自同一种染色方法真实场景染色的颜色分布变化会让模型特征失效。血细胞检测的颜色特征非常敏感HE 染色和瑞氏染色的色差足以让模型误判。解决划分数据集时按病人分组训练时加入颜色抖动增强比如 HSV 通道的随机扰动让模型对染色差异不那么敏感。开增强参数时注意力度别太大把白细胞核染成红细胞色反而是副作用。6. 用混淆矩阵和 mAP 曲线验证血细胞检测模型三个必看指标训练结束不等于工作完成。验证模型到底检测得准不准我会按下面三步走这也是你复用这套数据集时最值得投入的环节。6.1 先看混淆矩阵再看总 mAP训练结束后在runs/blood_cell_exp/目录下会生成confusion_matrix.png。血细胞检测的混淆矩阵通常呈现对角线高亮、非对角线零星分布。重点关注 Platelets 这一行如果它对应的行里有不少目标落入 background说明小目标漏检仍然是主要矛盾如果 WBC 对应行有大量误检到 RBC 的样本说明类别不平衡问题没有通过调参解决。混淆矩阵不要只看一眼就略过。我会记录三类各自的行列数值做一个简单的误检原因归类漏检多的瓶颈在目标尺度误检多的瓶颈在特征区分。这两者的改善路径完全不同前者回到数据增强和输入分辨率后者回到类别权重和模型容量。6.2 读 mAP50 和 mAP50-95 时要有不同预期血细胞检测的验证结果里mAP50 和 mAP50-95 可以差出 0.2 到 0.3。原因前面说过mAP50-95 计算了 IoU 从 0.5 到 0.95 所有阈值下的平均精度小目标天然吃亏。如果你看到 mAP50 有 0.85、mAP50-95 只有 0.55不用慌这在小目标密集场景是正常水平。真正要关注的是 mAP50-95 的变化趋势。如果训练轮次增加时它在持续上升说明模型还有余量可以考虑加训练轮数或提升分辨率。如果它已经走平甚至下降说明模型开始过拟合best.pt 就是你应该停留的位置。6.3 测试时调整置信度阈值和 IoU 阈值找到适合你业务的参数训练好的模型在实际使用时conf阈值直接决定漏检率和误检率的取舍。血细胞检测场景里如果你要用于筛检宁可多框一些让医生复核conf 阈值设为 0.2 到 0.25 比较合适如果要直接输出结果而不经过复核conf 阈值最好提到 0.4 以上误检会少很多。测试命令如下yolo detect predict \ modelruns/blood_cell_exp/weights/best.pt \ sourcetest/images \ conf0.25 \ iou0.45 \ imgsz960 \ save_txtTrueiou是 NMS 的 IoU 阈值0.45 是默认值。血细胞这类小目标重叠较少可以适当降到 0.3让 NMS 更手下留情减少误合并。imgsz960在推理阶段提高分辨率同样可以提升小目标检出率。我的习惯是拿到 best.pt 后先在 test 上跑一组 conf0.25 的预测把检测结果的可视化图片翻一遍重点看血小板区域。这个习惯帮我挡掉过至少两次数据处理上的低级失误所谓玄学问题多数最后都落在数据和配置上。希望这篇文章里给出的脚本和排查顺序能让你在自己的血细胞检测项目上少走一截弯路也希望帮到你。本文还有配套的精品资源点击获取
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

AI之Interview:Claude Code之父Boris Cherny深度访谈—删除80%提示词、产品悬余、解缚思维与AI编程的范式转移 2026/9/28 19:42:59

AI之Interview:Claude Code之父Boris Cherny深度访谈—删除80%提示词、产品悬余、解缚思维与AI编程的范式转移

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
Cursor+MCP金融分析Agent:TaoToken统一Key接入与config.toml配置实战 2026/9/28 19:42:59

Cursor+MCP金融分析Agent:TaoToken统一Key接入与config.toml配置实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
Prompt Cache与Agent上下文税深度解析:TaoToken统一Key下的AI架构设计配置实战 2026/9/28 19:42:59

Prompt Cache与Agent上下文税深度解析:TaoToken统一Key下的AI架构设计配置实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
大模型提示词注入防护与安全评估:用 LlamaFirewall + PromptGuard 搭一套可复现的检测链路(含代码) 2026/9/28 19:42:59

大模型提示词注入防护与安全评估:用 LlamaFirewall + PromptGuard 搭一套可复现的检测链路(含代码)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
OpenClaw、Hermes Agent、OpenHuman 横向对比:三个开源 Agent 的配置文件与接入骨架怎么选? 2026/9/28 19:42:59

OpenClaw、Hermes Agent、OpenHuman 横向对比:三个开源 Agent 的配置文件与接入骨架怎么选?

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
掌纹识别实战:小样本生物特征识别的全流程落地指南 2026/9/28 19:42:51

掌纹识别实战:小样本生物特征识别的全流程落地指南

简介:本资源是一份高分机器学习课程设计项目,面向计算机、人工智能、自动化等专业的在校学生及初学者,提供从掌纹图像预处理、特征提取(PCA/滤波器)、CNN建模、分类与认证到结果评估的完整实现方案。压缩包共18个文件&…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉