Seldon Core 2 实战:用 Pipeline 把 CIFAR10 图像分类器与异常检测、漂移监控打包为生产级推理服务
人工智能大模型MLOpsLLMOps模型推理服务云原生后端【免费下载链接】seldon-coreAn MLOps framework to package, deploy, monitor and manage thousands of production machine learning models项目地址https://gitcode.com/gh_mirrors/se/seldon-core点击查看免费下载本文以 Seldon Core 2 官方 CIFAR10 生产部署示例为主线完整讲解如何用一个Pipeline将 TensorFlow 图像分类模型、VAE 异常检测器outlier detector与 KS 漂移检测器drift detector串联成一个可对外服务的推理链路。读完本文你将掌握 Seldon Core 2 中Model与Pipeline资源的 YAML 定义方式、seldonCLI 的加载/状态查询/中间张量检视操作以及如何通过 v2 推理协议对正常、漂移、异常三类输入做端到端验证。示例概览一个 Pipeline 集成三类模型本示例的完整原始文档位于 docs/source/contents/examples/cifar10.md其正文通过include引入了 samples/examples/image_classifier/infer.md所有命令都需要在示例目录samples/examples/image_classifier下运行。示例由三个核心组件构成图像分类模型基于 TensorFlow 的 CIFAR10 图像分类器官方以 Triton 推理服务器tf_cifar10的形式托管异常检测器参照 Alibi Detect 的 CIFAR10 VAE Outlier 示例构建用于识别“训练分布之外”的输入样本漂移检测器参照 Alibi Detect 的 CIFAR10 KS Drift 示例构建用于检测数据分布随时间发生的漂移。三个模型通过一个Pipeline串联分类结果与异常检测结果直接作为输出返回给调用方漂移检测器则以batch批大小为 20的形式消费数据流用于批量统计判断漂移。环境准备与训练可选准备 Python 环境示例的训练与推理脚本依赖 TensorFlow 与 Alibi Detect。仓库在 requirements.txt 中锁定了alibi-detect0.11.1并在 Makefile 中提供了env目标用于创建虚拟环境并安装 MLServer 的 alibi-detect 运行时make env # 等价于 python3 -m venv .env .env/bin/pip install mlserver-alibi-detect${MLSERVER_VERSION}训练目标统一为make trainupload_artifacts目标则负责把训练好的drift-detector与outlier-detector目录上传到 Google Storage对应示例中gs://seldon-models/scv2/examples/...的模型地址。分类器训练可选如果你希望在本地重新训练模型可以运行训练笔记本 train.ipynb。核心流程如下加载 CIFAR10 数据集并归一化同时准备好三类测试输入——正常样本训练集、漂移样本CIFAR-10-C 亮度扰动与异常样本掩码扰动import requests import json import numpy as np import tensorflow as tf from alibi_detect.utils.perturbation import apply_mask from alibi_detect.datasets import fetch_cifar10c import matplotlib.pyplot as plt tf.keras.backend.clear_session()train, test tf.keras.datasets.cifar10.load_data() X_train, y_train train X_test, y_test test X_train X_train.astype(float32) / 255 X_test X_test.astype(float32) / 255 classes (plane, car, bird, cat, deer, dog, frog, horse, ship, truck)用apply_mask生成异常样本14×14 掩码、1 个掩码、作用于 RGB 三个通道用fetch_cifar10c拉取 brightness 类型、severity5 的 CIFAR-10-C 损坏数据作为漂移样本outliers [] for idx in range(X_train.shape[0]): X_mask, mask apply_mask(X_train[idx].reshape(1, 32, 32, 3), mask_size(14, 14), n_masks1, channels[0, 1, 2], mask_typenormal, noise_distr(0, 1), clip_rng(0, 1)) outliers.append(X_mask) X_outliers np.vstack(outliers) corruption [brightness] X_corr, y_corr fetch_cifar10c(corruptioncorruption, severity5, return_X_yTrue) X_corr X_corr.astype(float32) / 255上述操作得到X_outliers50000, 32, 32, 3与X_corr两组干扰样本用于后续验证 Pipeline 的异常检测与漂移检测能力。需要说明的是训练过程中如果本机没有 GPUTensorFlow 会输出libcudart.so.11.0/libcuda.so.1无法加载之类的警告这属于正常现象CPU 即可完成示例运行。异常检测器训练OutlierVAE异常检测器基于 Alibi Detect 的 VAE 模型训练定义在 train.md 中。其核心是一个 1024 维隐空间的卷积 VAE编码器为三层卷积下采样解码器为反卷积上采样latent_dim 1024 encoder_net tf.keras.Sequential([ InputLayer(input_shape(32, 32, 3)), Conv2D(64, 4, strides2, paddingsame, activationtf.nn.relu), Conv2D(128, 4, strides2, paddingsame, activationtf.nn.relu), Conv2D(512, 4, strides2, paddingsame, activationtf.nn.relu) ]) decoder_net tf.keras.Sequential([ InputLayer(input_shape(latent_dim,)), Dense(4*4*128), Reshape(target_shape(4, 4, 128)), Conv2DTranspose(256, 4, strides2, paddingsame, activationtf.nn.relu), Conv2DTranspose(64, 4, strides2, paddingsame, activationtf.nn.relu), Conv2DTranspose(3, 4, strides2, paddingsame, activationsigmoid) ]) od OutlierVAE(threshold.015, # 异常得分阈值 score_typemse, # 以重构误差的 MSE 作为异常得分 encoder_netencoder_net, decoder_netdecoder_net, latent_dimlatent_dim, samples2) od.fit(X_train, loss_fnelbo, cov_elbodict(sim.05), epochs50, verboseTrue) save_detector(od, ./outlier-detector)训练完成后检测器目录内包含OutlierVAE.dill、meta.dill以及model/下的encoder_net.h5、decoder_net.h5、VAE checkpoint 等文件。漂移检测器训练KSDrift漂移检测器基于 Alibi Detect 的 KSKolmogorov-Smirnov检验实现。先用 CIFAR10 测试集构建参考集X_ref再用一个编码器网络把图像压缩到 32 维再执行 KS 检验cd KSDrift(X_ref, p_val.05, preprocess_fnpreprocess_fn) save_detector(cd, ./drift-detector)其中preprocess_fn由preprocess_drift与编码器网络组合而来encoding_dim32。检测器目录包含KSDrift.dill、meta.dill与model/encoder.h5。导出为 MLServer 模型两个检测器都需要配一个 MLServer 的model-settings.json才能被 Seldon Core 2 加载例如异常检测器的配置见 outlier-detector/model-settings.json{ name: cifar10-outlier-detect, implementation: mlserver_alibi_detect.AlibiDetectRuntime, parameters: { uri: ./, version: v0.1.0 } }关键点在于implementation指定为mlserver_alibi_detect.AlibiDetectRuntime——正是这个运行时让 MLServer 能够加载并调用 Alibi Detect 保存的检测器。漂移检测器的配置同构drift-detector/model-settings.json只是name换成cifar10-drift。整个目录结构随后上传到对象存储gsutil ls -R gs://seldon-models/mlserver/alibi-detect/cifar10-outlier # OutlierVAE.dill / meta.dill / model-settings.json / model/(checkpoint, encoder_net.h5, decoder_net.h5, vae.ckpt.*)定义模型三个 Model 资源示例把分类器与两个检测器分别声明为三个Model自定义资源定义文件在 samples/models 目录下apiVersion: mlops.seldon.io/v1alpha1 kind: Model metadata: name: cifar10 spec: storageUri: gs://seldon-models/triton/tf_cifar10 requirements: - tensorflow --- apiVersion: mlops.seldon.io/v1alpha1 kind: Model metadata: name: cifar10-outlier spec: storageUri: gs://seldon-models/scv2/examples/mlserver_1.3.5/cifar10/outlier-detector requirements: - mlserver - alibi-detect --- apiVersion: mlops.seldon.io/v1alpha1 kind: Model metadata: name: cifar10-drift spec: storageUri: gs://seldon-models/scv2/examples/mlserver_1.3.5/cifar10/drift-detector requirements: - mlserver - alibi-detect三个 YAML 的完整源文件分别为 cifar10.yaml、cifar10-outlier-detect.yaml 与 cifar10-drift-detect.yaml。其中storageUri指向托管在 Google Storage 上的模型/检测器目录Seldon Core 2 的调度器会据此拉取工件requirements列表用于声明模型所需的推理服务器能力tensorflow让调度器把cifar10调度到 Triton 服务器上运行Triton 直接解析 TensorFlow SavedModel输出张量fc10的 shape 为[batch, 10]mlserveralibi-detect则让两个检测器调度到带 AlibiDetectRuntime 的 MLServer 上。加载模型并等待可用使用seldonCLI 依次加载三个模型-f指定 YAML 清单文件该参数在 CLI 源码 model_load.go 中被标记为必填seldon model load -f ../../models/cifar10.yaml seldon model load -f ../../models/cifar10-outlier-detect.yaml seldon model load -f ../../models/cifar10-drift-detect.yaml随后用-w ModelAvailable等待每个模型进入可用状态seldon model status cifar10 -w ModelAvailable | jq . seldon model status cifar10-outlier -w ModelAvailable | jq . seldon model status cifar10-drift -w ModelAvailable | jq .-w--wait是状态命令的等待条件参数见 model_status.go它会阻塞直到模型达到指定状态。从 modelstate_string.go 可以看到调度器内部维护的完整状态机ModelStateUnknown→ModelProgressing→ModelAvailable失败时为ModelFailed卸载后进入ModelTerminating/ModelTerminated。ModelAvailable即模型副本已经就绪、可以接收推理请求的状态。定义并加载 Pipeline将三个模型串联成一条生产链路的是 samples/pipelines/cifar10.yamlapiVersion: mlops.seldon.io/v1alpha1 kind: Pipeline metadata: name: cifar10-production spec: steps: - name: cifar10 - name: cifar10-outlier - name: cifar10-drift batch: size: 20 output: steps: - cifar10 - cifar10-outlier.outputs.is_outlierPipeline 语义要点stepscifar10、cifar10-outlier、cifar10-drift三个步骤按声明顺序连接。每个步骤名即上一步声明的Model名称batch为cifar10-drift步骤声明size: 20的批处理漂移检测器按 20 条请求聚合后再执行检测output.steps声明对外输出cifar10的全部输出以及cifar10-outlier步骤的输出张量is_outlieris_outlier1表示当前输入被判为异常。加载并等待就绪seldon pipeline load -f ../../pipelines/cifar10.yaml seldon pipeline status cifar10-production -w PipelineReady | jq -M .官方文档给出的就绪状态返回如下uid 与时间戳为实际运行值{ pipelineName: cifar10-production, versions: [ { pipeline: { name: cifar10-production, uid: cifeii2ufmbc73e5insg, version: 1, steps: [ {name: cifar10}, {name: cifar10-drift, batch: {size: 20}}, {name: cifar10-outlier} ], output: { steps: [ cifar10.outputs, cifar10-outlier.outputs.is_outlier ] }, kubernetesMeta: {} }, state: { pipelineVersion: 1, status: PipelineReady, reason: created pipeline, lastChangeTimestamp: 2023-06-30T14:40:09.047429817Z, modelsReady: true } } ] }PipelineReady状态表示所有步骤对应的模型均已可用modelsReady: true。Pipeline 与 Batch 的数据模型可以在 apis/mlops/scheduler/scheduler.proto 中看到PipelineStep携带Batch batch字段Batch除size外还支持windowMs时间窗口即“攒够 N 条或等待 M 毫秒”二选一的批聚合策略。批聚合的底层实现位于数据流模块 BatchProcessor.ktKafka 流处理器按固定 key 把请求暂存在状态存储中把多个ModelInferRequest的输入张量沿 batch 维度拼接mergeStandardTensors只有当首维shape[0] threshold时才向下游转发否则继续累积。端到端推理验证正常 / 漂移 / 异常三类输入示例提供了一段基于 v2 推理协议的 Python 调用封装完整实现见 infer.md。请求先构造{inputs:[{name:input_1,data:[],datatype:FP32,shape:[]}]}再通过seldon-model请求头指定目标模型或 Pipelinedef infer(resourceName: str, batchSz: int, requestType: str): if requestType outlier: rows X_outliers[0:0batchSz] elif requestType drift: rows X_corr[0:0batchSz] else: rows X_train[0:0batchSz] for i in range(batchSz): show(rows[i]) reqJson[inputs][0][data] rows.flatten().tolist() reqJson[inputs][0][shape] [batchSz, 32, 32, 3] headers {Content-Type: application/json, seldon-model: resourceName} response_raw requests.post(url, jsonreqJson, headersheaders) print(response_raw) print(response_raw.json())其中url http://0.0.0.0:9000/v2/models/model/inferseldon-model头的取值可以是模型名如cifar10也可以是 Pipeline 地址cifar10-production.pipeline。场景一正常样本infer(cifar10-production.pipeline, 20, normal)返回200 OK输出包含两个张量分类器输出fc10shape[20, 10]对应 20 张图片 × 10 个类别概率与异常检测输出is_outliershape[1, 20]20 个样本全部为 0即均判为正常{model_name: , outputs: [ {data: [1.45001495e-08, ..., 2.8514464e-07], name: fc10, shape: [20, 10], datatype: FP32}, {data: [0, 0, ..., 0], name: is_outlier, shape: [1, 20], datatype: INT64, parameters: {content_type: np}} ]}场景二漂移样本infer(cifar10-production.pipeline, 20, drift)用seldon pipeline inspect检视漂移检测器步骤的输出张量is_driftseldon pipeline inspect cifar10-production.cifar10-drift.outputs.is_driftseldon.default.model.cifar10-drift.outputs cifeij8fh5ss738i5bp0 {name:is_drift, datatype:INT64, shape:[1, 1], parameters:{content_type:{stringParam:np}}, contents:{int64Contents:[0]}}此时is_drift为 0随后再次推理并检视is_drift变为 1说明亮度扰动后的批次触发了漂移告警seldon.default.model.cifar10-drift.outputs cifeimgfh5ss738i5bpg {name:is_drift, datatype:INT64, shape:[1, 1], parameters:{content_type:{stringParam:np}}, contents:{int64Contents:[1]}}场景三异常样本infer(cifar10-production.pipeline, 1, outlier)返回的分类概率fc10集中在cat0.65与frog0.34之间且is_outlier为 1成功识别出掩码扰动样本对照正常样本is_outlier为 0{model_name: , outputs: [ {data: [6.36e-06, 0.0006, 0.0054, 0.6536, 1.47e-05, 2.61e-06, 0.3398, 1.35e-05, 0.0004, 4.81e-05], name: fc10, shape: [1, 10], datatype: FP32}, {data: [1], name: is_outlier, shape: [1, 1], datatype: INT64, parameters: {content_type: np}} ]}用 seldon pipeline inspect 查看中间张量seldon pipeline inspect是排查数据流问题的核心工具它可以直接读取 Kafka 数据流中的中间张量并替我们解码 Triton 的二进制输出。其表达式语法见 pipeline_inspect.go 的帮助文本支持四级寻址pipelineName pipelineName.(inputs|outputs) pipelineName.stepName pipelineName.stepName.(inputs|outputs) pipelineName.stepName.(inputs|outputs).tensorName例如查看分类器cifar10步骤在 Pipeline 中的全部输出seldon pipeline inspect cifar10-production.cifar10.outputsseldon.default.model.cifar10.outputs cifeiq8fh5ss738i5bqg {modelName:cifar10_1, modelVersion:1, outputs:[{name:fc10, datatype:FP32, shape:[1, 10], contents:{fp32Contents:[1.45001495e-8, 1.2525752e-9, 1.6298458e-7, 0.11529388, 1.7431412e-7, 0.0000061856604, 0.8846994, 6.0739285e-9, 7.43792e-8, 4.7317337e-9]}}]}注意这里contents使用的是解码后的fp32Contents数组而seldon-model直接推理返回的是data数组两条路径的数据是完全一致的inspect更利于观察 Pipeline 内部的中间状态。清理资源验证完成后按顺序卸载 Pipeline 与模型seldon pipeline unload cifar10-production seldon model unload cifar10 seldon model unload cifar10-outlier seldon model unload cifar10-drift小结这个 CIFAR10 示例展示了 Seldon Core 2 面向生产环境的核心模式以声明式ModelPipeline资源把“推理 可观测性”组合为一条统一服务链路。从本示例可以提炼出三条可直接复用的经验模型即资源分类器、异常检测器、漂移检测器都被统一建模为Model由requirements自动匹配 Triton 或 MLServer 运行时无需手工编排 Pod批处理可配置Pipeline步骤的batch.size与 proto 中的windowMs让高频检测器如漂移监控可以按批量聚合消费避免逐请求开销可观测内建seldon pipeline inspect让中间张量is_outlier、is_drift可随时检视配合-w ModelAvailable/-w PipelineReady等待机制可以构建可靠的自动化验证流程。如需复现请在仓库的samples/examples/image_classifier目录下依次执行make env安装依赖、按需make train训练检测器然后使用三个ModelYAMLcifar10.yaml、cifar10-outlier-detect.yaml、cifar10-drift-detect.yaml与 cifar10.yaml 的 Pipeline 完成加载与验证。赞分享人工智能大模型MLOpsLLMOps模型推理服务云原生后端【免费下载链接】seldon-coreAn MLOps framework to package, deploy, monitor and manage thousands of production machine learning models项目地址https://gitcode.com/gh_mirrors/se/seldon-core点击查看免费下载相关推荐Seldon Core 2 漂移检测实战用 Alibi-Detect 在 Pipeline 中搭建异步模型监控Seldon Core 2 漂移检测实战用 Alibi Detect 在 Pipeline 中搭建异步模型监控 本篇技术指南围绕 Seldon Core 2人工智能大模型MLOpsLLMOps模型推理服务云原生后端Seldon Core 收入分类器生产级部署实战漂移检测、异常检测与 Anchor 可解释性流水线Seldon Core 收入分类器生产级部署实战漂移检测、异常检测与 Anchor 可解释性流水线 本文基于 Seldon Core v2 的官方示例 in人工智能大模型MLOpsLLMOps模型推理服务云原生后端Seldon Core 异常检测Outlier Detection实战用 Alibi-Detect 模型监控生产模型Seldon Core 异常检测Outlier Detection实战用 Alibi Detect 模型监控生产模型 本文介绍 Seldon Core 2人工智能大模型MLOpsLLMOps模型推理服务云原生后端创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

树形DP实战:将功补过类问题的状态设计与转移方程

树形DP实战:将功补过类问题的状态设计与转移方程

1. 从标题拆解这道题到底在考什么 “将功补过”配上“树形DP”,这个组合一出来,有经验的选手基本就能嗅到味道了。这不是一道单纯的树上背包,也不是简单的最大独立集,它把“功”和“过”这两个对立的概念同时挂在树结构上&#xf…

2026/10/15 17:32:52 阅读更多 →
海波龙(Oracle 产品)实施商怎么选?7个评估维度+服务商能力对比

海波龙(Oracle 产品)实施商怎么选?7个评估维度+服务商能力对比

海波龙(Oracle 产品)实施商怎么选?7个评估维度服务商能力对比海波龙(Oracle 产品)选型时,企业往往把注意力放在产品模块和功能演示上,等到项目进入第二年,真正决定体验的却是当初挑的…

2026/10/15 17:32:52 阅读更多 →
STM32F103C8T6驱动SG90舵机:PWM源码与调试避坑指南

STM32F103C8T6驱动SG90舵机:PWM源码与调试避坑指南

简介:这份源码面向嵌入式初学者与需要快速验证舵机控制的开发者,围绕STM32F103C8T6如何驱动SG90舵机展开,解决从PWM信号生成到角度精确控制的实际问题。资源包共4个文件,包含2个C源文件、1个头文件与1张舵机接口示意图&#xff0c…

2026/10/15 17:32:52 阅读更多 →

最新新闻

Agentjacking 防御指南:当 AI 编程 Agent 遇到假报错,如何用 TaoToken 隔离恶意代码执行

Agentjacking 防御指南:当 AI 编程 Agent 遇到假报错,如何用 TaoToken 隔离恶意代码执行

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

2026/10/15 18:24:38 阅读更多 →
Qt网络调试助手:TCP/UDP三合一协议联调实践与避坑指南

Qt网络调试助手:TCP/UDP三合一协议联调实践与避坑指南

简介:这是基于Qt开发的一套网络调试助手终极版源码,完整支持TCP客户端、TCP服务端、UDP客户端与服务端四种模式,适合需要频繁调试网络协议、排查通信问题的开发者在真实项目中借鉴或直接复用。压缩包共35个文件,整体仅263KB&#…

2026/10/15 18:24:38 阅读更多 →
手把手搭建自定义 MCP 本地服务:stdio 与 sse 模式接入 TaoToken 统一通道

手把手搭建自定义 MCP 本地服务:stdio 与 sse 模式接入 TaoToken 统一通道

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

2026/10/15 18:24:38 阅读更多 →
链表算法题刷题笔记:虚拟头节点与双指针技巧详解

链表算法题刷题笔记:虚拟头节点与双指针技巧详解

这段时间在跟代码随想录算法训练营的打卡进度,前面几天的内容都整理得还算顺利,结果到第四天这里卡了一下——任务量倒不算大,但恰好撞上春节前后的杂事,硬是把原定1月31日要完成的几道链表题拖到了现在。这篇就当是补卡记录&…

2026/10/15 18:24:38 阅读更多 →
LGAlertView快速上手:10行代码打造你的第一个自定义弹窗(Objective-C与Swift)

LGAlertView快速上手:10行代码打造你的第一个自定义弹窗(Objective-C与Swift)

【免费下载链接】LGAlertView Customizable implementation of UIAlertViewController, UIAlertView and UIActionSheet. All in one. You can customize every detail. Make AlertView of your dream! :) 项目地址: https://gitcode.com/gh_mirrors/lg/LGAlertView…

2026/10/15 18:24:38 阅读更多 →
银行卡BIN码为什么用JSON格式?轻量级金融数据方案

银行卡BIN码为什么用JSON格式?轻量级金融数据方案

简介:本资源是一份面向前端开发者与支付系统工程师的银行卡BIN码验证工具集,解决银行卡号前端实时识别、发卡行匹配及卡类型判断等实际问题。压缩包内含1个核心JSON文件(bankbin.json),以标准键值对结构存储超千条国内…

2026/10/15 18:23:37 阅读更多 →

日新闻

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

1. 为什么选择容器化方式部署 LoRa 网络服务LoRa 物联网项目落地时,网络服务器是整个链路的核心枢纽。它负责接收网关上报的数据包、完成去重与解密、再把有效载荷分发给上层应用。早期大家习惯把网络服务器直接装在物理机上,依赖一堆系统库和特定版本的…

2026/10/15 0:00:46 阅读更多 →
共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

1. 共享推理服务里,扩缩容到底难在哪做过大模型推理服务部署的人,大概都经历过这样的场景:一个团队共用一套推理集群,A 业务跑的是 7B 的小模型,B 业务跑的是 72B 的大模型,C 业务白天流量高、晚上几乎归零…

2026/10/15 0:00:46 阅读更多 →
Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

1. 引子:一次内核恐慌引发的追查先从一个真实场景说起。某次我给一台老旧的嵌入式设备折腾系统裁减,为了把启动时间压进两秒以内,我手贱地把一串自认为“没用”的 systemd 服务给 disable 了,其中就包括systemd-remount-fs.servic…

2026/10/15 0:00:46 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/15 16:18:54 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/14 16:30:29 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/15 13:48:15 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

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

2026/10/15 0:14:36 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

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

2026/10/14 22:45:47 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

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

2026/10/15 9:49:14 阅读更多 →