当前位置: 首页 > news >正文

推荐系统在线离线打分不一致:核心原因与全链路解决方案



在推荐系统研发中,"离线AUC暴涨3%,线上CTR却暴跌5%"是令算法工程师头疼的典型问题。这种打分不一致本质上是离线评估与线上真实场景的「认知鸿沟」,可能导致算法迭代方向迷失。本文结合实际工程经验,从特征、训练、评估等维度拆解核心原因,并给出可落地的解决方案。

一、特征维度:数据处理的「隐形杀手」

1.1 特征穿越:训练数据的「上帝视角」

  • 问题本质:使用与label强相关的未来数据(如实时点击后生成的标签),导致数据泄漏
  • 典型表现:训练集AUC异常高(>0.99),测试集效果骤降20%+
  • 排查方法:对比训练集/测试集指标差异,重点检查统计类/行为序列特征的时间窗口

1.2 线上线下特征不一致的四大陷阱

(1)上线前一致性校验缺失
  • 常见场景:input_schema配置不一致、特征抽取逻辑差异(如Python/Java实现不同)
  • 解决方案
    离线/在线共用同一套特征抽取框架(如Python脚本编译为Java服务 || 离线特征处理和在线Serving共用同一套代码)
    ✅ 上线前生成千级校验样本,对比打分gap(阈值<1e-6),失败则阻断上线并报警
(2)线上特征监控体系缺位
  • 特征通路风险:文件/Redis/RPC/透传等通路可能出现特征缺失/错误
  • 监控维度
    ▶ 空值率(关键特征<0.1%)
    ▶ Top取值分布(波动>20%触发报警)
    ▶ 时效性(天级特征更新延迟>2小时预警)
    ▶ CTR/CVR分布(特征值与业务指标相关性突变)
(3)特征更新延迟引发的时效性偏差
  • 特征分类
    类型示例特征更新周期风险场景
    长期特征年龄、性别永久一般无时效风险
    天级特征7天PV/CTR统计天级离线任务堆积导致延迟灌入Redis
    小时级特征精准兴趣、App安装列表小时级实时推荐效果衰减
    实时特征最近互动商品ID、Session序列秒级推荐结果滞后用户当前兴趣
  • 案例:某实验因天级特征延迟(T-2数据上线),导致线上CTR反向波动10%
(4)强偏置特征建模不当
  • Pos Bias处理差异
    ▶ 推荐场景:离线保留位置特征训练,线上推理置0(仅需序关系正确)
    ▶ 广告场景:需两次预估(先置0排序,按实际位置二次打分),避免出价偏差
  • 核心逻辑:推荐关注序关系,广告依赖绝对值精准度,需针对性建模

1.3 特征维度补充:工程与监控强化

  • 特征请求监控:通过特征监控体系对特征进行监控,重点监控特征失败率,及时发现特征获取环节的问题。
  • 工程实现:在线离线使用同代码编译的特征抽取类,确保处理逻辑的一致性。例如,线上C++和离线Python的特征处理,要保证精度和逻辑一致,避免因语言差异导致特征处理结果不同。
  • 在线离线样本一致性方法:将在线预估时获取到的特征落盘,离线拼接样本时不需要再通过另一套流程获取特征,只需要拼接样本的label即可。这样可以保证离线训练使用的特征就是在线时刻推理的特征,实现离线和在线特征的一致性(离线/在线共用同一套特征抽取框架)。

二、训练维度:模型学习的「认知偏差」

2.1 训练集质量三大隐患

  1. 样本重叠污染:训练/测试集包含相同用户会话,导致离线评估虚高15%+
  2. 特征穿越复发:行为序列特征包含未来曝光商品ID,形成「上帝视角」训练
  3. 过拟合陷阱:添加强特征后未调整超参,训练集AUC暴涨但验证集暴跌
离线训练一致性诊断
  • 过拟合与分布校验
    ▶ 通过训练集/验证集AUC差距(阈值>0.03)识别过拟合,同步检查特征分布K-S值(如用户年龄、物料类型的分布差异<5%)
    分维度拆分分析
    • 物料维度:按兴趣标签(科技/娱乐)、内容形态(图文/视频)、互动类型(转发/点赞)拆分,观察各子集AUC变化
    • 人群维度:按性别/年龄/登录频次(新用户/活跃用户/沉默用户)、消费深度(路过/低互动/高转化用户)分层,定位模型对特定群体的拟合偏差
    • 场景维度:区分首页推荐/搜索推荐/个性化广告等场景,避免跨场景数据混杂导致的评估失真
      细粒度分数段分析:将预估分数划分为[0,0.2), [0.2,0.4), …, [0.8,1]共5个区间,计算各段AUC贡献度,识别模型对头部(>0.8)/长尾(<0.4)样本的过拟合或欠拟合问题
在线训练状态实时监控矩阵
监控层级核心指标/维度技术工具异常信号
基础指标AUC、GAUC(分组AUC)、预估分均值/方差、Loss曲线TensorBoard/PrometheusLoss波动>10%、GAUC与AUC差距>5%
用户维度性别/年龄/登录频次/关注数分层的点击率、互动率离线报表+实时看板特定人群点击率突降>15%
消费类型路过/低中高深度用户的转化率差异分层统计工具高深度用户转化率下降>20%
物料维度兴趣标签/内容形态/原创度的预估分分布特征可视化平台视频类物料预估分均值突增>30%
效果指标曝光量/点击量/互动量的分桶对比AB实验平台实验组点击量环比下降>10%
规模指标互动率/点击率/人均阅读时长业务BI系统点击率连续3小时低于基线20%

2.2 数据分布漂移:新旧模型的「断层带」

  • 冰山效应:离线模型拟合旧模型生成的「头部样本」,线上遭遇大量未见过的「长尾样本」
  • 模型突变风险:LR→树模型/LR→深度模型迭代时,新模型对旧样本分布外数据预估失效
  • 案例:某深度模型上线后,低活跃用户CTR下降25%,因训练集缺乏该类样本

2.3 label 回收机制之【时间窗口】设置问题

  • 问题描述:离线样本的生成依据是用户对曝光内容的行为,而用户产生行为到曝光之间有一定时间差,日志系统回收用户行为也需要时间。当时间窗口较窄时,用户发生靠后的正向行为容易被丢失,正样本变成负样本,导致离线样本和实际样本标签不一致敲黑板:面试容易考)。
  • 缓解方案:设置较长的时间窗口,保证回收到用户大部分行为以生成正确样本。对于时间窗口之外的正向行为,通过正样本补发来改进正样本误拼为负样本的情况,即再生成一条正样本。

三、推理维度:线上服务的性能陷阱与优化

3.1 推理超时导致的模型失效风险

  • 问题本质
    推理耗时(RT)P99超过服务阈值(如50ms)触发熔断,约1%-5%的请求 fallback 到兜底策略(如热门推荐),导致模型打分未实际生效

  • 三维度排查流程

    1. 资源层
      • 监控推理节点CPU/GPU利用率(阈值>80%报警)、内存占用(剩余<20%触发扩容)
      • 对比线上线下推理耗时差异,定位是否因模型参数膨胀(如深度模型层数增加)导致计算量骤增
    2. 流量层
      • 通过Nginx日志分析突发流量峰值(如QPS突增>50%),验证是否触发限流策略
      • 检查AB实验流量配置,避免因实验流量过大(>30%总流量)导致负载不均
    3. 模型层
      • 对比新旧模型前向传播耗时(如Transformer层数量、Embedding维度变化)
      • 识别计算密集型操作(如复杂特征交叉、高维向量内积),通过算子优化(如FP16量化)降低耗时
  • 工程化解决方案
    性能压测:使用JMeter模拟10倍峰值QPS,确保推理耗时P99 < 服务阈值的80%
    模型轻量化

    • 蒸馏:将复杂模型蒸馏为MobileNet级轻量模型,耗时降低40%
    • 剪枝:裁剪低重要度连接(如权重绝对值<0.01的连接),参数减少30%
    • 量化:FP32转FP16/INT8,显存占用减半,计算速度提升2倍
      弹性部署
    • K8s配置HPA(Horizontal Pod Autoscaler),根据CPU利用率自动扩缩容(最小2节点,最大10节点)
    • 分级熔断:50ms超时返回次优模型打分,100ms超时返回兜底策略,避免全链路阻塞

四、线上结果置信度:评估体系的「盲区」

4.1 指标统计的时间魔法

  • 不同指标的置信窗口
    ▶ 广告主价值指标:需7天以上(天级波动大)
    ▶ CTCVR指标:等待完整归因周期(如3天转化延迟)
    ▶ 实时指标(CTR):至少1小时稳定统计

4.2 AB实验的流量陷阱

  • 分桶正交性:通过AABB实验验证流量均匀性(AA组指标差异>5%视为分桶异常)
  • 服务稳定性:监控模型serving超时率(>1%需优化)、可用性(目标99.99%)

五、数据分布变化:模型迭代的「蝴蝶效应」

5.1 新旧模型的样本博弈

  • 离线评估假象:新模型在旧样本上表现优异,但对新样本预估失准(如图示:灰色未见过样本打分过高导致线上CTR下降)
  • 触发条件:模型结构大幅变化(如LR→深度模型)、新特征占比超过30%

5.2 高效收敛策略

  1. 无偏样本上采样
    • 对随机探索流量(1%用户)、新模型生成样本进行过采样(权重×3)
    • 加速新模型对真实分布的拟合,缓解「旧样本主导」问题
  2. 线上模型融合过渡
    p c t r = α ⋅ p c t r new + ( 1 − α ) ⋅ p c t r old pctr = \alpha \cdot pctr_{\text{new}} + (1-\alpha) \cdot pctr_{\text{old}} pctr=αpctrnew+(1α)pctrold
    • 初始α=0.1,每周递增0.1,3周后逐步放大至0.8,平滑数据分布差异

六、流量链路与特殊场景:不可忽视的「暗礁」

6.1 流量抢夺与链路纠缠

  • 典型场景:上游营销活动(PUSH/短信)转化高价值用户,导致下游推荐模型样本质量下降
  • 解决方案:实施MVP机制,保留10%最优流量作为基准,关注大盘整体提升而非单点指标

6.2 特殊时间点的漂移应对

  • 大促/节假日风险:时间序列特征(如用户停留时长)波动剧烈,模型预测失效
  • 防御策略
    ✅ 对比历史同期数据,建立基线指标
    ✅ 提前1周进行影子模式测试,模拟高并发场景下的特征时效性

七、模型分融合问题:重排与精排的协同困境

  • 重排融合分数不合理:在推荐系统的重排阶段,若融合分数设置不合理,可能会出现将精排分数淹没的情况。例如,重排时过度依赖某些非精排模型的指标(如热门程度、时效性等),导致精排模型对候选内容的精准打分无法在最终排序中体现,使得精排的努力付诸东流,无法达到预期的推荐效果优化目标。
  • 重排策略调整影响:当重排策略进行调整时,如改变了融合分数的计算方式、调整了不同特征或模型分数的权重等,可能导致精排模型原本的效果无法正常发挥。即使精排模型在离线评估中表现良好,线上由于重排策略的变动,精排结果未能在最终的推荐序列中起到应有的作用,从而使得整体推荐效果不如预期,甚至出现下降的情况。

八、工程实践:从预防到治理的全流程管控

8.1 特征一致性保障三剑客

  1. 穿越检测脚本:强制校验特征生成时间 < label时间,标记包含未来数据的特征组合
  2. 自动化校验平台:集成特征对比、打分差异分析、报警阻断功能,上线前必过项
  3. 实时监控仪表盘:可视化特征空值率、分布波动、更新延迟,设置三级预警机制

8.2 训练集净化方案

  • 时间序列划分:测试集严格晚于训练集7天,避免样本穿越
  • 交叉验证增强:采用TimeSeriesCV而非随机划分,保留数据时序性

8.3 推理性能监控矩阵

监控维度核心指标预警阈值处理动作数据来源
推理耗时RT P99> 服务阈值120%触发模型轻量化/扩容节点Prometheus
超时率超时请求占比> 1%排查熔断策略/优化模型结构推理服务日志
兜底策略流量fallback请求占比> 5%紧急扩容+模型耗时优化网关访问日志
模型服务可用性99.99% SLA达标率< 99.95%启动容灾切换流程服务监控平台

九、总结:打造可信赖的推荐系统

在线离线打分不一致是「理想训练环境」与「现实复杂场景」的必然博弈。通过建立「特征防穿越 - 训练防过拟合 - 线上防偏差 - 评估防误判 - 模型融合协同」的多层防护体系,结合模型融合、无偏采样等工程策略,可将打分方差从行业平均15%降低至5%以内。

关键提醒:每次模型上线前,务必完成「特征一致性校验 + AABB流量测试 + 影子模式压测 + 模型融合效果预验证」多重校验,从源头堵住不一致漏洞。算法迭代的核心价值,永远在于线上真实用户的价值提升,而非离线指标的数字游戏。

相关文章:

推荐系统在线离线打分不一致:核心原因与全链路解决方案

目录 一、特征维度&#xff1a;数据处理的「隐形杀手」1.1 特征穿越&#xff1a;训练数据的「上帝视角」1.2 线上线下特征不一致的四大陷阱&#xff08;1&#xff09;上线前一致性校验缺失&#xff08;2&#xff09;线上特征监控体系缺位&#xff08;3&#xff09;特征更新延迟…...

Markdown转WPS office工具pandoc实践笔记

随着DeepSeek、文心一言、讯飞星火等AI工具快速发展&#xff0c;其输出网页内容拷贝到WPS Office过程中&#xff0c;文档编排规整的格式很难快速复制。 注&#xff1a;WPS Office不支持Markdown格式&#xff0c;无法识别式样。 在这里推荐个免费开源工具Pandoc&#xff0c;实现…...

记录java线程中断理解,Thread.currentThread().interrupt();

记录java线程中断理解&#xff0c;Thread.currentThread().interrupt(); 一、概述 中断的理解&#xff1a; 1、Java 线程中断&#xff0c;协作式&#xff08;通过 Thread.interrupt() 触发&#xff0c;需代码显式检查中断状态或调用可中断方法&#xff09;。 2、操作系统中断…...

[零基础]内网ubuntu映射到云服务器上,http访问(frp内网穿透)

阿里云服务器&#xff0c;高校教师可以半价&#xff0c; frp下载地址&#xff1a;https://github.com/fatedier/frp/releases&#xff0c;选amd64&#xff0c; 云服务器开放端口 选择网络与安全–>安全组->管理规则 配置开放端口&#xff0c;7000为支持frp开放的端口&…...

Nginx 核心功能笔记

目录 一、Nginx 简介 二、核心功能详解 三、关键指令解析 四、性能优化要点 五、常见应用场景 一、Nginx 简介 定位 高性能的 HTTP/反向代理服务器&#xff0c;同时支持邮件协议代理&#xff08;IMAP/POP3/SMTP&#xff09;。采用 事件驱动、异步非阻塞 架构&#xff0c;…...

多地部署Gerrit Replication插件同步异常解决思路及方案(附脚本与CronJob部署)

背景 为了支持多地开发,我司在代码服务器(Gerrit)上使用了Replication插件,进行多地部署同步。 整体结构如下: A地区:主Gerrit服务器B地区:从Gerrit服务器正常的工作流程是: B地区开发者从从服务器拉取代码。B地区开发者向主服务器推送代码。Replication插件保证主从数…...

JAVA--- 关键字static

之前我们学习了JAVA 面向对象的一些基本知识&#xff0c;今天来进阶一下&#xff01;&#xff01;&#xff01; static关键字 static表示静态&#xff0c;是JAVA中的一个修饰符&#xff0c;可以修饰成员方法&#xff0c;成员变量&#xff0c;可用于修饰类的成员&#xff08;变…...

清华与智谱联合发布TTS模型GLM-4-Voice,支持情绪、语气控制,多语言,实时效果很不错~

项目背景 GLM-4-Voice是由清华大学知识工程组&#xff08;Tsinghua KEG&#xff09;和智谱AI&#xff08;Zhipu AI&#xff09;联合开发的一个开源端到端语音对话模型&#xff0c;旨在推动语音交互技术的进步&#xff0c;弥合机器与人类自然对话之间的差距。 语音交互的挑战与…...

华为云Astro大屏从iotda影子设备抽取数据做设备运行状态的大屏实施步骤

目录 背景与意义 1. 准备阶段 2. IoTDA 开放影子查询API 3. Astro轻应用创建连接器 4. Astro大屏设计界面 5. 数据绑定与交互逻辑 6. 发布与测试 小结&#xff08;流程复盘&#xff09; 背景与意义 随着物联网技术的快速发展&#xff0c;越来越多的设备接入云端&#x…...

Microsoft .NET Framework 3.5 离线安装包 下载

Microsoft. NET Framework 3.5 是支持生成和运行下一代应用程序和XML Web Services 的内部Windows 组件&#xff0c; 对 .NET Framework 2.0 和 3.0 中的许多新功能进行了更新和增补&#xff0c; 且附带了 .NET Framework 2.0 Service Pack 1 和 .NET Framework 3.0 Service…...

通用人工智能(AGI)的技术演进

通用人工智能&#xff08;AGI&#xff09;的技术演进是一个漫长而充满探索的过程&#xff0c;涉及多个领域的技术突破和理念转变。以下是对其演进历程的详细介绍&#xff1a; 早期人工智能探索&#xff08;20世纪50年代 - 80年代&#xff09; 符号主义兴起&#xff1a;1950年…...

mac word接入deepseek

网上大多使用Windows版word来接入deepseek&#xff0c;vba文件引入mac后&#xff0c;因底层工具不同&#xff0c;难以直接运行&#xff0c;例如CreateObject("MSXML2.XMLHTTP")无法创建&#xff0c;为此写了一版新的vba&#xff0c;基于mac底层工具来实现。 vba文件点…...

基于大模型的大肠息肉全程管理研究报告

目录 一、引言 1.1 研究背景与意义 1.2 研究目的 二、大模型预测大肠息肉的原理与数据基础 2.1 大模型的技术原理简介 2.2 数据收集与处理 三、术前预测与准备方案 3.1 息肉特征及风险预测 3.2 患者身体状况评估 3.3 术前准备措施 四、术中方案制定与监控 4.1 手术…...

Liunx安装Apache Tomcat

目录 一、了解tomcat 二、下载 三、启动tomcat 四、网页访问tomcat 五、Tomcat修改默认8080端口 六、Tomcat创建项目步骤-实现项目对外访问 一、了解tomcat Apache Tomcat 是一个开源的 Java Servlet 容器 和 Web 服务器&#xff0c;主要用于运行基于 Java 的 Web 应用…...

Java基于MyBatis 实现前端组装查询语句、后端动态执行查询的功能

1. 前端设计 前端逻辑与之前的设计保持一致,依然是将用户输入的查询条件组装成 JSON 格式,并通过 HTTP 请求发送到后端。 示例请求体: {"filters": [{"field": "name","operator": "LIKE",...

RabbitMQ Linux 安装教程详解

RabbitMQ Linux 安装教程详解 在 Linux 系统上安装 RabbitMQ 并确保其稳定运行&#xff0c;对于构建可靠的分布式消息系统至关重要。本文将详细介绍如何在 Linux 系统上安装 RabbitMQ&#xff0c;并提供关键的注意事项&#xff0c;帮助您避免常见的坑点&#xff0c;确保安装过…...

健康养生:拥抱活力生活

在生活节奏日益加快的当下&#xff0c;人们对健康养生的重视程度与日俱增。健康养生并非是一时的跟风之举&#xff0c;而是一种关乎生活品质与生命长度的科学理念和生活方式&#xff0c;其核心在于通过合理的饮食、适度的运动、充足的睡眠以及良好的心态调节&#xff0c;达成身…...

京东商品数据实时采集指南:API 接口调用与数据解析实战

在当今数字化时代&#xff0c;数据已经成为企业决策和市场分析的重要依据。对于电商领域的从业者来说&#xff0c;实时采集京东等平台的商品数据&#xff0c;能够帮助他们了解市场动态、分析竞争对手以及优化自身的产品策略。本文将详细介绍如何通过 API 接口调用实现京东商品数…...

最新字节跳动运维云原生面经分享

继续分享最新的go面经。 今天分享的是组织内部的朋友在字节的go运维工程师岗位的云原生方向的面经&#xff0c;涉及Prometheus、Kubernetes、CI/CD、网络代理、MySQL主从、Redis哨兵、系统调优及基础命令行工具等知识点&#xff0c;问题我都整理在下面了 面经详解 Prometheus …...

AimRT 从零到一:官方示例精讲 —— 六、pb_chn示例.md

pb_chn示例 官方仓库&#xff1a;pb_chn 这个官方示例展示了如何基于 protobuf 协议和 local 后端实现 channel 通信。主要包括四种场景&#xff1a; 基础示例&#xff1a;分别用两个模块&#xff08;Publisher 和 Subscriber&#xff09;发布和订阅 protobuf 消息&#xff…...

【Web】如何解决 `npm run dev` 报错 `address already in use 127.0.0.1:9005` 的问题

在开发过程中&#xff0c;我们可能会遇到端口占用的问题&#xff0c;尤其是当多个进程或服务尝试监听同一个端口时。最近在运行 npm run dev 时&#xff0c;我遇到的错误是 address already in use 127.0.0.1:9005&#xff0c;这让我花了些时间才找到问题的根源。本文将总结该问…...

每日一道leetcode(不会做学习版,多学一题)

2542. 最大子序列的分数 - 力扣&#xff08;LeetCode&#xff09; 题目 给你两个下标从 0 开始的整数数组 nums1 和 nums2 &#xff0c;两者长度都是 n &#xff0c;再给你一个正整数 k 。你必须从 nums1 中选一个长度为 k 的 子序列 对应的下标。 对于选择的下标 i0 &#…...

当OA闯入元宇宙:打卡、报销和会议的未来狂想

引言&#xff1a;虚实共生中的组织基因突变 元宇宙正以虚实共生的形态重构人类协作的底层逻辑。传统OA系统建立的物理规则——指纹打卡验证在场性、纸质票据堆砌信任链、会议室排期协调时空资源——在元宇宙的数字原野上迎来基因级重组。这场变革不仅是技术工具的迭代&#xf…...

线程数据同步的三种方式

1. 线程同步机制&#xff08;用于控制线程之间的访问顺序和互斥&#xff09; 互斥锁&#xff08;Mutex&#xff09;&#xff1a;用于保护共享资源&#xff0c;确保同一时间只有一个线程可以访问。 信号量&#xff08;Semaphore&#xff09;&#xff1a;用于控制多个线程对共享…...

docker拉取国内镜像

1. 场景 最近整了一个tencent云服务器&#xff0c;想要玩一下docker&#xff0c;结果发现拉不下来&#xff0c;镜像根本拉不下来。 2. 原因 1.云服务器无法访问外网&#xff1b; 2. 国内的很多公有镜像仓库都被封了&#xff1b; 3. 推荐 https://zhuanlan.zhihu.com/p/713…...

中阳策略下的价格趋势识别技巧

中阳策略下的价格趋势识别技巧 在快速变化的市场环境中&#xff0c;掌握有效的趋势识别技巧成为交易者的重要技能。"中阳"策略主张通过量价关系和趋势线分析&#xff0c;捕捉价格运行的主方向&#xff0c;提升交易成功率。 市场中&#xff0c;价格的上行或下行并非随…...

MIT6.S081 - Lab11 networking(网络栈)

本篇是 MIT6.S081 2020 操作系统课程 Lab11 的实验笔记&#xff0c;这是课程的最后一个实验了&#xff0c;目标是为 xv6 实现 E1000 网卡驱动的两个核心函数&#xff1a;发送数据包 e1000_transmit() 和接收数据包 e1000_recv()。 Lab11 地址&#xff1a;https://pdos.csail.mi…...

创龙全志T536全国产(4核A55 ARM+RISC-V+NPU 17路UART)工业开发板硬件说明书

前 言 本文档主要介绍TLT536-EVM评估板硬件接口资源以及设计注意事项等内容。 T536MX-CXX/T536MX-CEN2处理器的IO电平标准一般为1.8V、3.3V,上拉电源一般不超过3.3V或1.8V,当外接信号电平与IO电平不匹配时,中间需增加电平转换芯片或信号隔离芯片。按键或接口需考虑ESD设计…...

《解锁CSS Flex布局:重塑现代网页布局的底层逻辑》

网页布局作为用户体验的基石&#xff0c;其重要性不言而喻。从早期简单的表格布局&#xff0c;到后来基于浮动与定位的复杂尝试&#xff0c;网页布局技术始终在不断演进。而CSS Flex布局的出现&#xff0c;宛如一颗璀璨的新星&#xff0c;彻底革新了网页布局的设计理念与实践方…...

deepseek_ai_ida_plugin开源插件,用于使用 DeepSeekAI 将函数反编译并重命名为人类可读的视图。该插件仅在 ida9 上进行了测试

一、软件介绍 文末提供程序和源码下载 deepseek_ai_ida_plugin开源插件&#xff0c;用于使用 DeepSeekAI 将函数反编译并重命名为人类可读的视图。该插件仅在 ida9 上进行了测试。FunctionRenamerDeepseekAI.cpp 此文件包含 Hex-Rays 反编译器的主要插件实现。它反编译当前函数…...

完整的 SSL 证书生成与 Spring Boot 配置流程

一、生成 SSL 证书 目标:创建 PKCS12 格式的密钥库文件(keystore.p12),供 Spring Boot 使用。 方法 1:使用 keytool(推荐,直接生成 PKCS12 文件) 生成密钥库:keytool -genkeypair \-alias mydomain \ # 别名(自定义,如 mydomain)-keyalg RSA \ …...

taro小程序如何实现大文件(视频、图片)后台下载功能?

一、需求背景 1、需要实现小程序下载最大500M视频 2、同时需支持图片下载 3、退到其他页面再次回到当前页面时&#xff0c;下载进度也需要展示 二、实现步骤 1、在app.ts文件定义一个全局变量globalDownLoadData 2、写一个独立的下载hooks&#xff0c;代码如下&#xff08;…...

阿里云bgp服务器优势有哪些?搭建bgp服务器怎么做?

阿里云服务器bgp优势有哪些?搭建bgp服务器怎么做&#xff1f; BGP服务器的优势 BGP&#xff08;Border Gateway Protocol&#xff09; 是互联网的核心路由协议&#xff0c;用于在不同自治系统&#xff08;AS&#xff09;之间交换路由信息。BGP服务器的核心优势体现在网络连接…...

java连接redis服务器

直接从 Redis 获取数据通常是 Redis通过 客户端库实现的&#xff0c;Jedis 是 Java 中一个常用的 Redis 客户端库。有以下两种主要方式&#xff1a; 1. 使用单个 Jedis 实例&#xff08;不使用连接池&#xff09; import redis.clients.jedis.Jedis; public class RedisExampl…...

从零开始:Android Studio开发购物车(第二个实战项目)

一年经验的全栈程序员&#xff0c;目前头发健在&#xff0c;但不知道能撑多久。 文章目录 前言 一、页面编写 1. 顶部标签栏title_shopping.xml 2. 商品展现列表activity_shopping_channel.xml 3. 商品详情页面activity_shopping_detail.xml 4. 购物车页面activity_shopping…...

2. python协程/异步编程详解

目录 1. 简单的异步程序 2. 协程函数和协程对象 3. 事件循环 4. 任务对象Task及Future对象 4.1 Task与Future的关系 4.2 Future对象 4.3 全局对象和循环事件对象 5. await关键字 6. 异步上下文管理 7.异步迭代器 8. asyncio的常用函数 8.1 asyncio.run 8.2 asyncio.get…...

XSS靶场实战(工作wuwuwu)

knoxss knoxss Single Reflection Using QUERY of URL ——01 测试标签 <script>alert(666666)</script>——02: " <h1>test</h1>没有反应&#xff0c;查看源码 现在需要闭合双引号&#xff0c;我计划还是先搞标签 "><h1>tes…...

DNA复制过程3D动画教学工具

DNA复制过程3D动画教学工具 访问工具页面: DNA复制动画演示 工具介绍 我开发了一个交互式的DNA复制过程3D动画演示工具&#xff0c;用于分子生物学教学。这个工具直观展示了&#xff1a; DNA双螺旋结构的解旋过程碱基互补配对原理半保留复制机制完整的复制周期动画 主要特点…...

在Mybatis中写sql的常量应用

下面示例把原来写死的 1、2、3 都替换成了绑定好的常量&#xff0c;同时额外演示了如何把第五个状态也一起统计&#xff08;如果你的 DTO 没有对应字段&#xff0c;也可删掉相应那一行&#xff09;。 <!-- 1. 定义可复用的常量绑定 --> <sql id"DeviceStatusCon…...

一次讲明白SaaS、PaaS、IaaS、aPaaS、iPaaS、RaaS、RPAaaS

在数字化浪潮与5G技术的强势驱动下&#xff0c;各行业对云服务的需求正呈现出井喷式增长态势&#xff0c;众多企业纷纷投身云服务的怀抱&#xff0c;以期在激烈的市场竞争中抢占先机。而谷云科技作为iPaaS领域的佼佼者&#xff0c;也在这股浪潮中大放异彩&#xff0c;助力企业实…...

RTDETRv2 pytorch训练

RTDETRv2 pytorch训练 1. 代码获取2. 数据集制作3. 环境配置4. 代码修改1&#xff09;configs/dataset/coco_detection.yml2) configs/src/data/coco_dataset.py3&#xff09;configs/src/core/yaml_utils.py4&#xff09;configs/rtdeterv2/include/optimizer.yml 5. 代码训练…...

Unity3D仿星露谷物语开发39之非基于网格的光标

1、目标 当鼠标移动到reapable scenary&#xff08;可收割庄稼&#xff09;上方时&#xff0c;光标会变成十字架。 之前章节中&#xff0c;Grid有Dug/Watered属性&#xff0c;光标移动上方时会显示方框。 而这次的功能并非基于Grid的属性&#xff0c;而是基于scenary&#x…...

什么是 MCP?AI 应用的“USB-C”标准接口详解

目录 &#x1f9e9; 什么是 MCP&#xff1f;AI 应用的“USB-C”标准接口详解 &#x1f4cc; 背景与动机 &#x1f9e0; 核心概念 &#x1f3d7;️ 技术架构 &#x1f680; 应用场景 &#x1f9e9; 什么是 MCP&#xff1f;AI 应用的“USB-C”标准接口详解 &#x1f4cc; 背…...

狼人杀中的智能策略:解析AI如何理解复杂社交游戏

想要掌握如何将大模型的力量发挥到极致吗&#xff1f;叶梓老师带您深入了解 Llama Factory —— 一款革命性的大模型微调工具&#xff08;限时免费&#xff09;。 1小时实战课程&#xff0c;您将学习到如何轻松上手并有效利用 Llama Factory 来微调您的模型&#xff0c;以发挥其…...

10 基于Gazebo和Rviz实现导航仿真,包括SLAM建图,地图服务,机器人定位,路径规划

在9中我们已经实现了机器人的模块仿真&#xff0c;现在要在这个基础上实现SLAM建图&#xff0c;地图服务&#xff0c;机器人定位&#xff0c;路径规划 1. 还是在上述机器人的工作空间下&#xff0c;新建功能包&#xff08;nav&#xff09;&#xff0c;导入依赖 gmapping ma…...

jmeter-Beashell获取请求body data

在使用JMeter的BeanShell处理器或BeanShell断言中获取HTTP请求的body数据&#xff0c;可以通过几种方式实现。下面是一些常用的方法&#xff1a; 方法1&#xff1a;使用prev变量 在BeanShell处理器或断言中&#xff0c;prev变量可以用来访问最近的sampler&#xff08;采样器&…...

区块链密码学核心

文章目录 概要1. 基础密码学哈希函数&#xff08;Hash Function&#xff09;对称加密与非对称加密数字签名&#xff08;Digital Signature&#xff09;密钥管理 2. 区块链专用密码学技术零知识证明&#xff08;Zero-Knowledge Proof, ZKP&#xff09;同态加密&#xff08;Homom…...

Git 多账号切换及全局用户名设置不生效问,GIT进行上传无权限问题

解决 Git 多账号切换及全局用户名设置不生效问题 在软件开发过程中&#xff0c;我们经常会使用 Git 进行版本控制。有时&#xff0c;我们需要在同一台机器上管理多个 Git 账号&#xff0c;最近我在进行使用git的时候因为项目要进行上传的不同的git账号&#xff0c;但是通过本地…...

阿里云服务迁移实战: 04-IP 迁移

普通过户 如资料过户按量付费EIP所述&#xff0c;如果原账号是个人账号&#xff0c;则目标账号无限制&#xff0c;如果原账号是企业账号&#xff0c;则目标账号必须为相同认证主体的企业账号。 其主要操作就是&#xff0c;在原账号发起过户&#xff0c;在新账号接收过户。具体…...

探索PyTorch中的空间与通道双重注意力机制:实现concise的scSE模块

探索PyTorch中的空间与通道双重注意力机制&#xff1a;实现concise的scSE模块 在深度学习领域&#xff0c;尤其是在计算机视觉任务中&#xff0c;特征图的注意力机制变得越来越重要。近期&#xff0c;我在研究一种结合了通道和空间两种注意力机制的模块——Concise Spatial an…...