Seldon Core v2 Clusterwide 部署实战:跨命名空间模型推理与全链路 TLS/SSL 安全配置
人工智能大模型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点击查看免费下载本指南以仓库samples/k8s-clusterwide-ssl-demo.md及配套 Notebooksamples/k8s-clusterwide-ssl-demo.ipynb为主体完整演示如何在 Kind 集群上以Clusterwide集群级模式部署 Seldon Core v2将控制面安装在seldon-mesh命名空间而 Runtime 与模型 Server 分布在多个业务命名空间ns1、ns2并同时开启控制面Control Plane与数据面Envoy Data Plane的 TLS/SSL 加密。读完本文你将掌握Helm Chart 的安装顺序与--set controller.clusterwidetrue的语义、seldon-core-v2-certs证书体系与各 Secret 的用途、TLS 配置文件逐段含义、seldon config系列命令为 CLI 配置 TLS 的方式以及跨命名空间发起加密推理请求与整体环境清理的完整流程。一、演示场景概述Seldon Core v2 的控制面组件scheduler、modelgateway、pipelinegateway、dataflow、envoy 等由seldon-core-v2-setupChart 安装而每个业务命名空间各自持有seldon-core-v2-runtime运行时组件与seldon-core-v2-servers模型 Servermlserver 与 triton。默认情况下 controller 只监听安装它的命名空间通过--set controller.clusterwidetrue安装时controller 会获得 ClusterRole 级别的权限可跨命名空间管理mlops.seldon.io组下的Model、Pipeline、Server等资源参见 k8s/helm-charts/seldon-core-v2-setup/templates/_components-deployments.tpl其中--clusterwide$(CLUSTERWIDE)参数与seldon-v2-manager-roleClusterRole 的创建均由该开关控制。与不带 TLS 的普通多命名空间示例见 docs-gb/examples/k8s-clusterwide.md相比本演示的核心差异在于安装控制面时额外传入values-tls-dataplane-controlplane-example.yaml把controlplane 与 envoy 两个安全通道的 protocol 都切到 SSL并在每个业务命名空间单独安装一套证书。最终效果是控制面组件间走 mTLSEnvoy 到上游模型 Server 走 mTLS而外部客户端到 Envoy 的推理入口走单向 TLS客户端不要求提供证书。二、环境准备创建 Kind 集群与生态组件演示在 Kind 本地集群上进行使用仓库ansible目录下的 Playbook 一键创建cd ansible ansible-playbook playbooks/kind-cluster.yamlansible/playbooks/kind-cluster.yaml 会调用kind角色关键变量如下集群名kind_cluster_name: seldon默认命名空间seldon-meshKind 版本v0.24.0节点镜像kindest/node:v1.31.0默认启用 metrics-serverChart 版本 3.8.3与MetalLBChart 版本 0.13.9。其中 MetalLB 对后续演示至关重要ansible/roles/kind/tasks/metallb.yaml会读取 dockerkind网络的子网并将x.x.255.1~x.x.255.255分配给 MetalLB 作为 LoadBalancer 地址池。这正是后文中seldon-meshService 能拿到172.21.255.2、172.21.255.4这类集群外可访问 IP 的原因。随后安装 Seldon Core v2 所依赖的生态组件Kafka、cert-manager、Prometheus、Grafana、Jaeger、OpenTelemetry 等cd ansible ansible-playbook playbooks/setup-ecosystem.yamlansible/playbooks/setup-ecosystem.yaml 中full_install: yes会同时安装并配置 prometheus、grafana、kafka、certmanager、jaeger、opentelemetryschema_registry 与 clickhouse 默认关闭。其中cert-manager是本演示的硬性前置条件——因为seldon-core-v2-certsChart 完全依赖 cert-manager 的Issuer/Certificate资源签发证书。三、安装 CRD 并创建业务命名空间首先在seldon-mesh命名空间安装 CRD Chartmlops.seldon.io/v1alpha1组下的 Model、Pipeline、Server、SeldonConfig 等自定义资源定义helm upgrade --install seldon-core-v2-crds ../k8s/helm-charts/seldon-core-v2-crds -n seldon-mesh预期输出REVISION: 2表示此前已安装过可重复执行Release seldon-core-v2-crds has been upgraded. Happy Helming! NAME: seldon-core-v2-crds LAST DEPLOYED: Thu Jun 22 09:11:26 2023 NAMESPACE: seldon-mesh STATUS: deployed REVISION: 2 TEST SUITE: NoneCRD 清单由 k8s/helm-charts/seldon-core-v2-crds/templates/seldon-v2-crds.yaml 渲染全集群只需安装一次。然后创建两个业务命名空间用于验证控制面跨命名空间管理模型kubectl create namespace ns1 kubectl create namespace ns2预期输出分别为namespace/ns1 created、namespace/ns2 created。四、在业务命名空间安装证书seldon-core-v2-certsChart 会为每个命名空间生成一套自签 CA 与成对的服务端/客户端证书k8s/helm-charts/seldon-core-v2-certs/templates/certs.yaml分别在两个命名空间安装helm install seldon-v2-certs ../k8s/helm-charts/seldon-core-v2-certs/ -n ns1 helm install seldon-v2-certs ../k8s/helm-charts/seldon-core-v2-certs/ -n ns24.1 证书体系拆解从 Chart 模板源码看它依次创建如下资源资源说明seldon-issuerIssuercert-manager 自签名 Issuer用于签发根 CAseldon-caCertificate自签根 CAisCA: truecommonName: seldon-caDNS 覆盖*.namespace与*.namespace.svc私钥为 ECDSA 256Secret 名为cacertseldon-ca-issuerIssuer基于cacert的 CA Issuer负责签发下面所有业务证书seldon-controlplane-server控制面服务端证书commonName为namespace.svcSAN 覆盖seldon-scheduler及其 svc 域名seldon-controlplane-client控制面客户端证书seldon-upstream-serverEnvoy 上游服务端证书SAN 覆盖*.namespace.svcseldon-upstream-clientEnvoy 上游客户端证书seldon-downstream-serverEnvoy 下游对外推理入口服务端证书seldon-downstream-clientEnvoy 下游客户端证书本演示的配置中未真正使用所有业务证书的duration均为 2160h90 天、renewBefore为 360h15 天并同时启用server auth与client auth两种用途从而一套证书可同时承担服务端与客户端角色。证书签发后以同名 Kubernetes Secret 保存tls.crt/tls.key/ca.crt供后续 Helm values 中的secret/clientValidationSecret/serverValidationSecret字段引用。安装输出示例NAME: seldon-v2-certs LAST DEPLOYED: Thu Jun 22 10:00:32 2023 NAMESPACE: ns1 STATUS: deployed REVISION: 1 TEST SUITE: None五、解读 TLS 配置控制面与数据面双重加密在安装控制面前先查看仓库提供的 TLS 样例配置cat ../k8s/samples/values-tls-dataplane-controlplane-example.yamlsecurity: controlplane: protocol: SSL ssl: server: secret: seldon-controlplane-server clientValidationSecret: seldon-controlplane-client client: secret: seldon-controlplane-client serverValidationSecret: seldon-controlplane-server envoy: protocol: SSL ssl: upstream: server: secret: seldon-upstream-server clientValidationSecret: seldon-upstream-client client: secret: seldon-upstream-client serverValidationSecret: seldon-upstream-server downstream: client: serverValidationSecret: seldon-downstream-server server: secret: seldon-downstream-server5.1 security 结构总览security段由seldon-core-v2-setupChart 的 values.yaml默认全部为PLAINTEXT扩展而来完整结构还包含kafka、schemaRegistry子段。每个ssl通道都由server与client两侧组成每侧又包含自己的secret本端身份证书与对方的校验 Secretserver.secret服务端本端身份证书 Secretserver.clientValidationSecret服务端用于校验客户端身份的 CA/证书 Secret开启 mTLS 时才有值client.secret客户端本端身份证书 Secretclient.serverValidationSecret客户端用于校验服务端身份的 CA/证书 Secret。5.2 controlplane双向 TLSmTLScontrolplane.protocol: SSL表示 scheduler 与 controller、modelgateway、pipelinegateway、dataflow、agent 之间的通信全部加密。两侧都同时配置了本端 Secret 与对端校验 Secret即双向认证服务端要求客户端出示证书clientValidationSecret客户端也校验服务端serverValidationSecret。这与 Helm 模板中 controller Deployment 的环境变量一一对应CONTROL_PLANE_SECURITY_PROTOCOL、CONTROL_PLANE_CLIENT_TLS_SECRET_NAME、CONTROL_PLANE_SERVER_TLS_SECRET_NAME等见 k8s/helm-charts/seldon-core-v2-setup/templates/_components-deployments.tpl。从模板还可看到 scheduler 容器暴露了scheduler-mtls9044与agent-mtls9055端口同时保留普通端口9004 等说明组件根据ALLOW_PLAINTXT/CONTROL_PLANE_SECURITY_PROTOCOL运行时决定走明文还是 mTLS 端口。模板中证书是以挂载卷方式注入容器的values.yaml.template给出了默认挂载路径例如控制面服务端证书位于/tmp/certs/cps/tls.key、/tmp/certs/cps/tls.crt、/tmp/certs/cps/ca.crt客户端证书位于/tmp/certs/cpc/Envoy 上游在/tmp/certs/dus/与/tmp/certs/duc/Envoy 下游在/tmp/certs/dds/与/tmp/certs/ddc/——本演示的简化 values 省略了这些路径直接使用默认值。5.3 envoy upstream与模型 Server 之间 mTLSenvoy.protocol: SSL且upstream侧server与client都配置了身份与校验 Secret说明Envoy 与上游模型 Servermlserver / triton之间同样是双向 TLS。这要求模型 Server 的 Pod 中也注入seldon-upstream-server/seldon-upstream-client证书运行时数据面流量在集群内全程加密。5.4 envoy downstream对外单向 TLSdownstream段的差异值得注意client 侧只有serverValidationSecret: seldon-downstream-server没有本端secretserver 侧也只有本端secret、没有clientValidationSecret。这意味着外部客户端调用推理接口时只做服务端认证单向 TLS——客户端需要信任seldon-downstream-server证书但服务端不校验客户端身份。这正是后文 CLI 配置中skipSSLVerify: true能工作的原因CLI 无需携带任何客户端证书即可发起 HTTPS 推理请求。仓库还提供了仅数据面加密的变体values-tls-dataplane-example.yamlk8s/samples/values-tls-dataplane-example.yaml其中 controlplane 保持PLAINTEXT、envoy 为SSL可用于只想保护推理流量、暂不加密控制面的场景可作为对照参考。六、安装控制面与各命名空间运行时6.1 以 Clusterwide 模式安装控制面helm install seldon-v2 ../k8s/helm-charts/seldon-core-v2-setup/ -n seldon-mesh --set controller.clusterwidetrue --values ../k8s/samples/values-tls-dataplane-controlplane-example.yaml三个关键点--set controller.clusterwidetrue让 controller 监听并管理集群内所有命名空间values.yaml 中默认值为false--values ...values-tls-dataplane-controlplane-example.yaml覆盖security.controlplane.protocol与security.envoy.protocol为SSLChart 由 seldon-v2-components.yaml 根据useDeploymentsForServers选择渲染 Deployment 版或 StatefulSet 版模板默认 StatefulSet。安装输出示例NAME: seldon-v2 LAST DEPLOYED: Thu Jun 22 09:11:40 2023 NAMESPACE: seldon-mesh STATUS: deployed REVISION: 1 TEST SUITE: None6.2 在 ns1 / ns2 分别安装 Runtime 与 Servershelm install seldon-v2-runtime ../k8s/helm-charts/seldon-core-v2-runtime -n ns1 helm install seldon-v2-servers ../k8s/helm-charts/seldon-core-v2-servers -n ns1 helm install seldon-v2-runtime ../k8s/helm-charts/seldon-core-v2-runtime -n ns2 helm install seldon-v2-servers ../k8s/helm-charts/seldon-core-v2-servers -n ns2各 Chart 职责seldon-core-v2-runtimevalues.yaml在业务命名空间部署 scheduler、envoy、dataflow、modelgateway、pipelinegateway 等运行时副本。注意scheduler.serviceType与envoy.serviceType默认均为LoadBalancer——这正是每个命名空间都会出现一个独立seldon-meshService带外部 IP的原因seldon-core-v2-serversvalues.yaml部署 mlserver 与 triton 两种模型 Server 的 StatefulSet默认各 1 副本PVC 保留策略为Retain。安装全部完成后分别等待两个命名空间中的 Server 就绪kubectl wait --for conditionready --timeout300s server --all -n ns1 kubectl wait --for conditionready --timeout300s server --all -n ns2预期输出server.mlops.seldon.io/mlserver condition met server.mlops.seldon.io/triton condition metserver.mlops.seldon.io是mlops.seldon.io/v1alpha1组下的 Server 资源类型该等待命令验证了 server CR 的ready条件。七、为 Seldon CLI 配置 TLS模型推理需要通过seldon-mesh的 LoadBalancer 入口进行。先获取两个命名空间各自的入口 IP使用 Jupyter 魔术命令的 Python 写法在普通 Shell 中可等价写成kubectl get svc seldon-mesh -n ns1 -o jsonpath{.status.loadBalancer.ingress[0].ip}MESH_IP!kubectl get svc seldon-mesh -n ns1 -o jsonpath{.status.loadBalancer.ingress[0].ip} MESH_IP_NS1MESH_IP[0] import os os.environ[MESH_IP_NS1] MESH_IP_NS1 MESH_IP_NS1输出172.21.255.2该 IP 即第 2 节中 MetalLB 从 Kind 网络子网分配出来的范围。MESH_IP!kubectl get svc seldon-mesh -n ns2 -o jsonpath{.status.loadBalancer.ingress[0].ip} MESH_IP_NS2MESH_IP[0] import os os.environ[MESH_IP_NS2] MESH_IP_NS2 MESH_IP_NS2输出172.21.255.4。两个命名空间各自持有独立的 Envoy 入口 IP是跨命名空间部署、各自独立暴露推理入口的直接体现。随后把仓库提供的 TLS 客户端配置加入 CLI 并激活seldon config add tls ${PWD}/config-dataplane-tls.json seldon config activate tls配置文件内容为samples/config-dataplane-tls.json{ dataplane: { tls: true, skipSSLVerify: true } }7.1 CLI 配置机制源码解读从源码看CLI 的配置体系位于 operator/pkg/cli/config.go 与 operator/pkg/cli/configs.goSeldonCLIConfig由dataplane、controlplane、kafka三段组成dataplane支持inferHost、tls、skipSSLVerify、keyPath、crtPath、caPath字段——本演示只用到tls与skipSSLVerify若需更严格的 mTLS可补充客户端证书三件套命名配置清单保存在~/.config/seldon/cli/configs.json每个名称映射到一个配置文件路径active字段指向当前生效的配置名seldon config add name path执行Add(key, configPath)写入映射并持久化seldon config activate tls执行Activate(key)把active指向tlsseldon model infer在发起请求前会通过LoadSeldonCLIConfig()读取当前 active 配置若dataplane.tlstrue则以 HTTPS 连接推理入口相关命令参数详见 docs-gb/cli/seldon_model_infer.md如--inference-host默认0.0.0.0:9000、--inference-mode默认rest、--show-headers、--sticky-session等。也就是说启用 TLS 后seldon model infer仍只需指定--inference-host握手加密与证书校验行为由 active 配置自动接管这也是演示中 CLI 命令本身没有任何--tls标志的原因。八、跨命名空间部署模型并执行加密推理8.1 模型清单解读两个命名空间部署的是同一个 sklearn Iris 模型kubectl create -f ./models/sklearn-iris-gs.yaml -n ns1模型清单 内容如下apiVersion: mlops.seldon.io/v1alpha1 kind: Model metadata: name: iris spec: storageUri: gs://seldon-models/scv2/samples/mlserver_1.6.0/iris-sklearn requirements: - sklearn memory: 100Ki要点requirements: [sklearn]让 scheduler 将模型调度到具备sklearn能力标签的 mlserver 上storageUri指向公共 GCS 存储memory: 100Ki是模型的内存预留。该资源通过kubectl直接提交到集群controller 在 clusterwide 模式下会接管并下发调度集群内管理请优先使用 kubectl/HelmSeldon CLI 主要用于非 Kubernetes 环境详见 docs-gb/getting-started/cli.md 的提示。创建后等待模型就绪kubectl wait --for conditionready --timeout300s model --all -n ns1输出model.mlops.seldon.io/iris condition met。ns2 执行完全相同的两步操作。8.2 在 ns1 发起加密推理seldon model infer iris --inference-host ${MESH_IP_NS1}:80 \ {inputs: [{name: predict, shape: [1, 4], datatype: FP32, data: [[1, 2, 3, 4]]}]}请求体是 KServe/V2 数据平面协议单个输入张量predict形状[1,4]类型FP32。由于dataplane.tlstrue已激活该请求实际通过 HTTPS 访问 Envoy 的 80 端口skipSSLVerify: true跳过了对自签证书的信任校验与第 5.4 节分析的下游单向 TLS、客户端不携带证书设计吻合。响应示例{ model_name: iris_1, model_version: 1, id: 77f21360-b6cf-4c50-a000-1f219f5e9e29, parameters: {}, outputs: [ { name: predict, shape: [ 1, 1 ], datatype: INT64, parameters: { content_type: np }, data: [ 2 ] } ] }响应中model_name: iris_1表明模型被调度到编号 1 的模型实例输出为 INT64 标量2Iris 三分类[1,2,3,4]四个特征预测为类别 2。8.3 在 ns2 发起加密推理kubectl create -f ./models/sklearn-iris-gs.yaml -n ns2 kubectl wait --for conditionready --timeout300s model --all -n ns2 seldon model infer iris --inference-host ${MESH_IP_NS2}:80 \ {inputs: [{name: predict, shape: [1, 4], datatype: FP32, data: [[1, 2, 3, 4]]}]}输出与 ns1 一致响应 id 不同如902b8483-0ede-4136-97be-dbf266f05a0cdata: [2]。这验证了同一个模型清单在 ns1、ns2 各部署一份通过各自命名空间的 Envoy 入口不同 LoadBalancer IP在 TLS 加密通道上独立完成推理控制面则以 clusterwide 方式统一管理两套运行时。九、环境清理TearDown演示结束后按依赖顺序清理先删模型与各命名空间内的 release再删控制面与 CRD最后删除命名空间。kubectl delete -f ./models/sklearn-iris-gs.yaml -n ns1 kubectl delete -f ./models/sklearn-iris-gs.yaml -n ns2预期输出model.mlops.seldon.io iris deleted两次。helm delete seldon-v2-servers -n ns1 helm delete seldon-v2-runtime -n ns1 helm delete seldon-v2-certs -n ns1预期输出release seldon-v2-servers uninstalled release seldon-v2-runtime uninstalled release seldon-v2-certs uninstalled注意原演示在 ns2 清理时重复执行了两次helm delete seldon-v2-runtime -n ns2第二次会返回Error: uninstall: Release not loaded: seldon-v2-runtime: release: not found——这是 Helm 对重复删除的正常报错实际只需执行一次helm delete seldon-v2-runtime -n ns2 helm delete seldon-v2-certs -n ns2helm delete seldon-v2 -n seldon-mesh helm delete seldon-core-v2-crds -n seldon-mesh kubectl delete namespace ns1 kubectl delete namespace ns2预期输出依次为release seldon-v2 uninstalled、release seldon-core-v2-crds uninstalled、namespace ns1 deleted、namespace ns2 deleted。若还需要彻底还原环境可再用ansible-playbook或kind delete cluster销毁 Kind 集群与 Kafka 等生态组件。十、要点总结与延伸建议安装顺序不可颠倒cert-manager随 setup-ecosystem 安装→ CRD → 业务命名空间证书 → 控制面clusterwide TLS values→ 各命名空间 runtime/servers → 模型。Clusterwide 的核心开关controller.clusterwidetrue决定 controller 是否跨命名空间管理mlops.seldon.io资源对应 Helm 模板中 ClusterRole/ClusterRoleBinding 的创建逻辑。TLS 分为三段控制面 mTLS、Envoy 上游与模型 ServermTLS、Envoy 下游外部客户端单向 TLS。若需要更高级的客户端认证可参考 k8s/helm-charts/seldon-core-v2-setup/values.yaml.template 中downstream.client.mtls、keyPath/crtPath/caPath等字段并为 CLI 配置keyPath/crtPath/caPath后关闭skipSSLVerify。CLI 配置是命名空间级别的档案seldon config add/activate/list/deactivate/remove系列命令管理~/.config/seldon/cli/configs.json下的多套配置档案可随时切换参见 docs-gb/cli/seldon_config.md。生产环境注意演示使用自签 CA 与skipSSLVerify仅用于功能验证生产环境应替换为企业 CA 或 cert-manager 的 ACME 签发并落实证书轮换证书默认 90 天、提前 15 天续期。赞分享人工智能大模型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 V2 多命名空间部署实战clusterwide 控制器、命名空间隔离运行时与 Kafka 主题前缀Seldon Core V2 多命名空间部署实战clusterwide 控制器、命名空间隔离运行时与 Kafka 主题前缀 本文基于 Seldon Core人工智能大模型MLOpsLLMOps模型推理服务云原生后端Seldon Core V2 多命名空间集群部署指南clusterwide 控制平面与 Kafka 主题隔离实战Seldon Core V2 多命名空间集群部署指南clusterwide 控制平面与 Kafka 主题隔离实战 本文基于 Seldon Core V2ML人工智能大模型MLOpsLLMOps模型推理服务云原生后端Seldon Core v2 中的 SeldonRuntime 资源在命名空间内创建与管理 Seldon 实例Seldon Core v2 中的 SeldonRuntime 资源在命名空间内创建与管理 Seldon 实例 导读 SeldonRuntime 是 Seld人工智能大模型MLOpsLLMOps模型推理服务云原生后端上一篇约10分钟完成QQ空间历史说说导出GetQzonehistory 手把手零代码备份教程下一篇被删的QQ空间说说还能找回来吗我用GetQzonehistory把留言、配图和评论全搬进了本地文件创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

鸿蒙ArkTS与H5互调实战:Web组件双向通信详解

鸿蒙ArkTS与H5互调实战:Web组件双向通信详解

1. 项目背景与核心价值在鸿蒙生态快速发展的当下,ArkTS作为主力开发语言正逐步替代传统的JS开发方式。但实际业务中我们常遇到这样的困境:已有成熟的H5页面需要复用,又希望获得原生应用的性能体验。这时候Web组件与JS的互调能力就成了关键突破…

2026/10/15 10:03:59 阅读更多 →
Sigma File Manager 2.x 更新日志全解读:从 Tauri 重写到剪贴板集成的功能演进

Sigma File Manager 2.x 更新日志全解读:从 Tauri 重写到剪贴板集成的功能演进

桌面应用 【免费下载链接】sigma-file-manager "Sigma File Manager" is a free, open-source, quickly evolving, modern file manager (explorer / browser) app for Windows and Linux. 项目地址: https://gitcode.com/gh_mirrors/si/sigma-file-manag…

2026/10/15 10:03:59 阅读更多 →
SpringBoot+Vue3开发家装预算管理系统实战

SpringBoot+Vue3开发家装预算管理系统实战

1. 项目背景与核心价值去年帮朋友装修房子时,发现市面上大多数家装预算工具要么功能过于简单,要么操作复杂不实用。作为一个有十年开发经验的老程序员,我决定用SpringBoot开发一个轻量级但功能完备的家装预算管理系统。这个系统不仅能自动计算…

2026/10/15 10:03:59 阅读更多 →

最新新闻

C++老鼠走迷宫:数据结构课程设计中的DFS与回溯算法解析

C++老鼠走迷宫:数据结构课程设计中的DFS与回溯算法解析

简介:一份基于C的数据结构课程设计项目,围绕“老鼠走迷宫”经典问题,展示二维数组、图结构、栈与递归的综合运用。项目通过随机迷宫生成与路径搜索,帮助读者理解深度优先搜索(DFS)原理及其在连通性、回溯场…

2026/10/15 14:54:37 阅读更多 →
AI算力报告实战指南:从增速预测到扩容落地的完整方法

AI算力报告实战指南:从增速预测到扩容落地的完整方法

简介:这份《2025年中国人工智能计算力发展评估报告》由浪潮信息与IDC联合推出,共计45页,面向AI基础设施决策者、算力产业研究人员及技术规划人员,可用于把握智能算力市场演进方向、辅助制定采购与建设策略。报告涵盖全球及中国AI发…

2026/10/15 14:54:37 阅读更多 →
AI安全:提示词注入攻击防御与实战方案

AI安全:提示词注入攻击防御与实战方案

1. 提示词注入攻击的本质与危害去年我在参与一个企业级AI系统安全审计时,发现了一个令人后怕的现象:攻击者仅通过精心构造的输入文本,就成功让系统输出了本应严格保密的企业财务数据。这种攻击手法正是典型的提示词注入(Prompt In…

2026/10/15 14:54:37 阅读更多 →
【Web 安全实战】文件上传漏洞花式绕过,90% 渗透新手都踩过这些坑

【Web 安全实战】文件上传漏洞花式绕过,90% 渗透新手都踩过这些坑

【Web 安全实战】文件上传漏洞花式绕过,90% 渗透新手都踩过这些坑 前言 文件上传漏洞是 Web 安全里最经典、出现频率最高的漏洞。很多新手以为上传防护只需要简单判断后缀名,写个黑名单就能搞定。但在真实渗透场景里,各种解析漏洞、后缀变形…

2026/10/15 14:54:37 阅读更多 →
MyBatis Generator配置文件全解析:从入门到排查实战

MyBatis Generator配置文件全解析:从入门到排查实战

搞Java后端的人,只要做过几个正经的数据库项目,基本都躲不开MyBatis Generator这个工具。它能把数据库表直接变成实体类、Mapper接口和XML映射文件,省掉一大坨纯体力劳动的CRUD代码。但很多人对它的印象就是"找个模板改改数据库连接就跑…

2026/10/15 14:54:37 阅读更多 →
C++国际化改造实战:字符串外部化、编码统一与乱码排查

C++国际化改造实战:字符串外部化、编码统一与乱码排查

说实话,第一次在国内项目里正儿八经做 C 代码国际化支持,我一开始是拒绝的。因为很多 C 项目跑起来没毛病,一提到多语言就原地爆炸:界面文案全是硬编码的字符串、日志文件默认按本地编码写入、测试环境的中文一切正常,…

2026/10/15 14:53:36 阅读更多 →

日新闻

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/14 3:30:28 阅读更多 →
影刀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 阅读更多 →