论文阅读:2024-arxiv How to Steer LLM Latents for Hallucination Detection?
总目录 大模型安全相关研究:https://blog.csdn.net/WhiffeYF/article/details/142132328
How to Steer LLM Latents for Hallucination Detection?
https://arxiv.org/pdf/2503.01917
https://www.doubao.com/chat/2818934852496130
其它资料:
https://blog.csdn.net/weixin_40240616/article/details/146155278
速览
这篇论文中作者主要做了一项针对大语言模型(LLMs)幻觉检测的研究工作,旨在解决大语言模型在生成内容时出现的幻觉问题。
- 研究背景:大语言模型虽然在自然语言处理方面表现出色,但会生成看似合理实则错误或无依据的内容,即“幻觉”。比如在回答历史事件问题时,可能会编造不存在的细节。这会降低用户信任,在医疗、金融等关键领域应用时还可能造成严重后果。以往利用大语言模型潜在空间检测幻觉的方法,因模型嵌入侧重于语言连贯性而非事实准确性,难以清晰区分真实和幻觉内容。
- 提出方法:作者提出了真实性分离向量(TSV),这是一种轻量级且灵活的导向向量。它在大语言模型推理时,调整模型的内部表示空间,增强真实输出和幻觉输出之间的区分度,同时不改变模型参数。可以把TSV想象成一个“小助手”,在模型生成内容时,帮助模型更好地区分真实和虚假信息。
- 训练框架:采用两阶段训练框架来学习TSV。
- 第一阶段:用少量有标签的示例数据训练TSV。这些示例就像学习的“小抄”,引导TSV的嵌入围绕代表真实和幻觉生成的类别原型,形成紧凑的聚类,让模型初步学会区分真实和幻觉。
- 第二阶段:利用未标记的大语言模型生成内容扩充训练数据。通过基于最优传输的算法给这些未标记样本分配伪标签,再结合基于置信度的过滤过程,筛选出可靠的样本。比如,从大量未标记数据中,挑选出模型预测比较确定的部分,加入到训练数据中,让模型学习到更多样的真实和幻觉情况。
- 实验验证:在多个数据集和不同的开源大语言模型上进行实验,如TruthfulQA、TriviaQA、SciQ、NQ Open等数据集,以及LLaMA-3.1系列和Qwen-2.5系列模型。将TSV方法与11种基线方法对比,结果显示TSV性能卓越。在TruthfulQA基准测试中,相比最先进方法,幻觉检测准确率(AUROC)显著提高12.8% ,使用仅32个有标签示例时,性能与完全监督的上限相当。此外,TSV在不同模型和数据集上泛化能力强,计算效率高,所需训练参数少。
- 研究结论:TSV通过重塑潜在空间,在极少人工标注和低成本计算的情况下,有效提升了幻觉检测性能,为提高大语言模型在现实应用中的可靠性提供了实用方案,推动了幻觉检测领域的发展,为后续研究奠定了基础 。
Abstract(摘要)
大语言模型(LLMs)在现实世界应用中的安全部署,深受幻觉问题的困扰。近期,有研究尝试借助大语言模型的潜在空间来检测幻觉,然而,这些模型的嵌入主要针对语言连贯性进行优化,而非事实准确性,这就导致它们常常难以清晰区分真实内容与幻觉内容。例如,模型生成一段描述历史事件的文本,语句通顺流畅,但其中关于事件发生的时间、地点等关键事实可能存在错误。
为解决这一问题,本文提出了真实性分离向量(TSV)。这是一种轻量级且灵活的导向向量,在推理过程中,它能够重塑大语言模型的表示空间,从而增强真实输出与幻觉输出之间的区分度,并且不会改变模型的参数。就好比给模型的“思考方向”提供一个辅助引导,让它能更好地区分真实和幻觉,又不改变其原本的“核心思想”。
本文采用两阶段框架。第一阶段,在一小部分有标签的示例数据上训练TSV,使得数据形成紧凑且分离度良好的聚类,这些聚类分别代表真实和幻觉生成。第二阶段,利用未标记的大语言模型生成内容来扩充示例集,通过基于最优传输的算法进行伪标记,并结合基于置信度的过滤过程。简单来说,就是利用未标记的数据,通过特定算法给它们“猜”一个标签,再筛选出可靠的部分用于训练。大量实验表明,TSV在使用极少标记数据的情况下,仍能达到领先的性能水平,在不同数据集上展现出强大的泛化能力,为现实世界中的大语言模型应用提供了切实可行的解决方案。
1 Introduction(引言)
大语言模型在自然语言理解和生成方面表现出了惊人的能力,比如可以流畅地回答各种知识问题、创作故事等,展现出作为通用任务解决工具的潜力。不过,它存在一个严重问题,即会产生幻觉输出。这些输出看似合理,但在事实上并不准确或缺乏依据。例如,在医疗咨询场景中,大语言模型可能会给出错误的疾病诊断和治疗建议;在法律咨询中,可能会提供错误的法律条文解读。这种幻觉会严重损害用户对模型的信任,在高风险应用场景中甚至可能导致有害后果。所以,一个可靠的大语言模型,不仅要生成与用户提问相符的文本,还得具备检测幻觉并及时提醒用户的能力。
近期有不少研究试图利用大语言模型的潜在空间来识别幻觉,通常是借助现成大语言模型的嵌入,将输出划分为真实或幻觉。但预训练的大语言模型主要是通过预测下一个词的目标来优化语言连贯性的,更注重文本的流畅度和语法正确性,而非事实的准确性。就像模型生成一篇旅游攻略,文字读起来很通顺,但其中关于景点的开放时间、门票价格等实际信息可能是错误的。正因如此,模型的内部表示虽然在一般文本生成中很有效,但在区分真实和幻觉内容时往往力不从心,图1a展示了实际例子,其中预训练模型的嵌入使得真实和幻觉数据的表示存在大量重叠。
基于此,本文提出学习一种轻量级向量——真实性分离向量(TSV)。从图1b可以看到,在推理时引入这个可学习向量,它能够调整大语言模型的内部表示,增强真实和幻觉生成之间的区分度,且不会修改模型参数。TSV专注于重塑潜在空间,以对幻觉响应进行分类,这与减轻幻觉生成的目标有着本质区别。据作者所知,这是首次对导向表示用于幻觉检测的探索。
学习TSV很有意义,但面临一个难题,即缺乏大规模人工标注的、带有大语言模型生成内容真实性注释的数据集,创建这样的数据集既费钱又耗时。为解决这一问题,本文提出两阶段训练框架。第一阶段,使用一小部分有标签的数据作为示例集,引导学习过程。此阶段的目标是让导向嵌入围绕代表真实和幻觉生成的类别原型,形成紧凑的聚类,就像把相似的数据“聚集”到一起。第二阶段,利用未标记的大语言模型生成内容来扩充训练数据,这些数据可通过用户与已部署的大语言模型系统的查询和交互免费获得。为给这些未标记样本分配伪标签,本文提出基于最优传输的算法,该算法通过最小化传输成本,在考虑类别比例不平衡的情况下,将未标记数据嵌入与类别原型对齐。此外,还使用基于置信度的样本选择,仅将最可靠的伪标记样本纳入训练过程。通过这两个阶段,TSV能有效分离真实和幻觉表示,同时显著减少对人工标注的依赖。
大量实验表明,该方法在各种数据集上表现出色。在具有挑战性的TruthfulQA基准测试中,本文方法在幻觉检测准确率(AUROC)上,相比最先进方法有显著提升,提高了12.8%。值得注意的是,本文方法在仅使用32个有标签示例的小样本集时,性能与完全监督的上限相当(如在TruthfulQA上分别为84.2%和85.5%)。TSV还展现出强大的泛化能力,在应用于未见过的数据集时,仍能保持具有竞争力的性能。
2 Related Works(相关工作)
幻觉检测已成为大语言模型研究中的一个关键领域,主要是为了解决大语言模型在现实应用中的安全问题。目前有很多研究致力于通过设计不确定性评分函数来检测幻觉。例如,基于对数几率(logit)的方法,会利用每个单词(token)层面的概率作为不确定性分数,来判断生成内容的可靠性;言语化方法则是引导大语言模型用人类语言表达自身的不确定性;基于一致性的方法,通过评估多个回答之间的一致性来判断不确定性,比如多次询问模型同一个问题,看答案是否一致。最近,基于内部状态的方法开始利用模型的隐藏激活,像采用对比一致搜索、识别幻觉子空间等技术。但这些方法大多依赖默认的大语言模型嵌入,而这些嵌入本身并不能很好地将真实数据和幻觉数据区分开来。与之不同的是,本文方法旨在通过一个可学习的导向向量来塑造潜在空间,以更好地分离这两种类型的数据。
另一方面,有监督的方法依赖标记数据来训练分类器,认为预训练的大语言模型在其内部状态中编码了响应的真实性。但这种方法需要大量的标注工作,成本很高。相比之下,本文方法在极少人工监督的情况下就能进行幻觉检测,在实际应用中更具可行性。
激活工程能够在推理过程中控制大语言模型的生成,通过将特定任务的导向向量应用到模型的内部表示中。例如,一些研究通过分析对比样本对之间的激活差异,找到真实方向,然后沿着这个方向移动激活来减轻幻觉。同时,也有表示微调方法,对隐藏表示的线性子空间或注意力头的稀疏子集进行特定任务的学习干预。本文方法在关键方面有所不同:一是专门学习一个用于幻觉检测的导向向量,重点在于分离表示,而非减轻幻觉生成;二是之前的方法依赖大量标记数据集,而本文方法在极少人工监督下就能取得很好的性能。
6. Conclusion(结论)
在这项研究中,本文通过引入真实性分离向量(TSV)来应对大语言模型中的幻觉检测挑战。TSV是一种轻量级且模块化的方法,它在推理过程中重塑潜在空间,增强真实输出和幻觉输出之间的区分度,同时不会改变模型参数。通过结合一小部分有标签示例集和未标记的大语言模型生成内容的两阶段训练框架,TSV在最小化对人工标注和计算成本依赖的同时,取得了卓越的性能。实验证明了TSV的有效性,在不同数据集上达到了领先的准确率,并展现出强大的泛化能力。这项工作不仅推动了幻觉检测领域的发展,还为提高大语言模型在现实应用中的可靠性,提供了可扩展且实用的解决方案,为后续研究奠定了基础。
相关文章:
论文阅读:2024-arxiv How to Steer LLM Latents for Hallucination Detection?
总目录 大模型安全相关研究:https://blog.csdn.net/WhiffeYF/article/details/142132328 How to Steer LLM Latents for Hallucination Detection? https://arxiv.org/pdf/2503.01917 https://www.doubao.com/chat/2818934852496130 其它资料: http…...
python面试技巧
文章目录 前言面试前面试中良好的沟通表达展示解决问题的能力体现学习能力和热情注意非语言沟通 面试后 前言 在 Python 面试中,掌握一些有效的技巧能让你更好地展现自己的能力和素质,以下是一些实用的面试技巧: 面试前 研究公司和岗位&…...
免费AI编程插件Fitten Code + IntelliJ IDEA实现AI辅助编程实战指南
🧑 博主简介:CSDN博客专家、CSDN平台优质创作者,高级开发工程师,数学专业,拥有高级工程师证书;擅长C/C、C#等开发语言,熟悉Java常用开发技术,能熟练应用常用数据库SQL server,Oracle…...
Vue3 + TypeScript 的 Hooks 实用示例
示例 1: 防抖 Hook(useDebounce) typescript // hooks/useDebounce.ts import { ref, watch, onUnmounted, type WatchSource } from vue;/*** 防抖 Hook* param source 监听的响应式数据源* param callback 防抖后执行的回调函数* param delay 防抖延…...
【DB2】事务日志满/归档占用较大问题处理记录
某DB2环境经常报错The active log is full and is held by...,并且归档磁盘占用较大 事务日志满 事务日志满可以理解为Oracle的redo追尾,即业务写入量大于redo刷盘速度,这时候其他SQL会陷入等待,容易造成性能问题 一般由两方面原…...
Rust 的征服:从系统编程到全栈开发的 IT 新宠
文章目录 Rust 的本质:性能与安全的完美平衡Rust 的演进:从 Mozilla 的实验到全球热潮核心技术:Rust 的杀手锏与生态所有权与生命周期高并发:无畏线程Cargo:现代构建工具生态繁荣:Crates.io Rust 的杀手级应…...
【力扣hot100题】(086)乘积最大子数组
感觉题目越来越难,这题不看答案真的想不到一点。 一开始绕了不少弯路,甚至想将每一个子数组的积全部求出来比较…… 答案的方法有点难懂。 方法如下:维护两个数,分别是目前为止最大数和最小数,最大数一般来说是正数…...
编译器bug ?
## 问题描述 两个结构几乎相同的模板实现,一个能正常工作,另一个在 VS2019 和 GCC 中都会报错。 ## 最小化测试代码 // bug_report.cpp #include <type_traits> #include <string>template<typename T> struct Type2Type { using t…...
算法刷题记录——LeetCode篇(1.8) [第71~80题](持续更新)
更新时间:2025-04-10 算法题解目录汇总:算法刷题记录——题解目录汇总技术博客总目录:计算机技术系列博客——目录页 优先整理热门100及面试150,不定期持续更新,欢迎关注! 72. 编辑距离 给你两个单词 wo…...
leetcode68.左右文本对齐
思路源自 leetcode-字符串篇 68题 文本左右对齐 难度高的模拟类型题目,关键点在于事先知道有多少单词要放在本行并且还要知道本行是不是最后一行(最后一行需要全部单空格右对齐,不是最后一行就空格均摊),非最后一行的空…...
leetcode:905. 按奇偶排序数组(python3解法)
难度:简单 给你一个整数数组 nums,将 nums 中的的所有偶数元素移动到数组的前面,后跟所有奇数元素。 返回满足此条件的 任一数组 作为答案。 示例 1: 输入:nums [3,1,2,4] 输出:[2,4,3,1] 解释:…...
Java抽象类与抽象方法详解
一、抽象类的作用与定义 1. 核心作用 设计意图:当多个子类具有共性行为但具体实现不同时,通过抽象类强制规范子类的实现格式。 典型场景: // 定义抽象图形类 public abstract class Shape {// 抽象方法:计算面…...
QScrCpy源码解析(3)监听手机usb端口
采用的技术方式为adb adb可以通过命令行达到控制安卓手机的目的 大致思路为 1在界面显示的时候初始化一个定时器,不断地查询当前设备连接到的手机安卓设备 使用的adb指令为 adb devices 定时器代码 connect(&m_autoUpdatetimer, &QTimer::timeout, th…...
go-zero学习笔记(六)---gozero中间件介绍
1. 中间件分类 gozero默认中间件通过在api文件中创建的中间件通过server.Use(middleware Middleware)创建的中间件2. 中间件介绍 2.1 gozero默认中间件 默认中间件包括如下:在gozero中对应的代码为: // 文件位置:github.com\zeromicro\g…...
基于FPGA实现BPSK 调制
目录 一、 任务介绍二、基本原理三、基于FPGA实现BPSK 调制四、源码 一、 任务介绍 BPSK 调制在数字通信系统中是一种极重要的调制方式,它的抗干扰噪声性能及通频带的利用率均优先于 ASK 移幅键控和 FSK 移频键控。因此,PSK 技术在中、高速数据传输中得…...
包含网络、平台、数据及安全四大体系的智慧快消开源了
智慧快消视频监控平台是一款功能强大且简单易用的实时算法视频监控系统。它的愿景是最底层打通各大芯片厂商相互间的壁垒,省去繁琐重复的适配流程,实现芯片、算法、应用的全流程组合,从而大大减少企业级应用约95%的开发成本。国产化人工智能“…...
基于AWS的大模型调用场景:10大成本优化实战方案
大模型训练与推理是AI领域的计算密集型场景,如何在AWS上实现高性能与低成本的双重目标?本文从实例选型、弹性伸缩、存储优化等角度,分享10个经过验证的AWS成本优化策略,帮助企业节省30%以上成本。 一、大模型场景的成本痛点分析 计…...
Human3.6M 解析3d pose标注 h36m
目录 解析pkl 并可视化 解析h5格式: view_h36m_h5_ok.py nlf 预测并计算指标mpje 解析pkl 并可视化 import os import pickleimport cv2 import imageio import numpy as npif __name__ == __main__:# pkl_path=r"E:\data\pose_3d\human3.6mtoolbox\annot\h36m_valid…...
设计模式-观察者模式和发布订阅模式区别
文章目录 其他不错的文章 二者有类似的地方,也有区别。 引用的文章说的已经比较清楚了,这里只列出对比图。 对比点观察者模式发布订阅模式中间人角色无事件中心,观察者直接订阅目标有事件中心,发布者与订阅者通过事件中心通信关系…...
Python proteinflow 库介绍
ProteinFlow是一个开源的Python库,旨在简化蛋白质结构数据在深度学习应用中的预处理过程。以下是其详细介绍: 功能 数据处理:支持处理单链和多链蛋白质结构,包括二级结构特征、扭转角等特征化选项。 数据获取:能够从Protein Data Bank (PDB)和Structural Antibody Databa…...
羽绒服选购
羽绒服怎么选? 看吊牌 填充物含绒子量充绒克数 填充物: 鹅绒>鸭绒>鹅鸭混合绒 中国90%羽绒服都是鸭绒,鹅绒产量少,且拔毛方式不人道,所以价格更高 白鸭绒和黑鸭绒区别不大,但是白羽绒服只能用白鸭绒…...
使用注解@RequestBody变红的解决问题
解决办法: package com.takeout.controller;import com.takeout.common.R; import com.takeout.entity.Employee; import com.takeout.service.EmployeeService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowire…...
Multi-Agent Routing Value Iteration Network(多智能体路由值迭代网络)论文阅读
标题:Multi-Agent Routing Value Iteration Network(多智能体路由值迭代网络) 作者:Quinlan Sykora, Mengye Ren, Raquel Urtasun 单位: Uber 发表期刊:AI 发表时间:2020年 论文研究主题归类…...
商品详情 API 返回数据字段说明
京东商品详情 API 返回的数据是一个结构化的 JSON 对象,包含了商品的多个关键字段。以下是一些常见的返回值字段及其说明: 1. 商品基本信息 num_iid:商品唯一标识符。 title:商品标题。 desc_short:商品简短描述。 …...
数据结构 | 证明链表环结构是否存在
❤个人主页: 链表环结构 0.前言1.环形链表(基础)2.环形链表Ⅱ(中等)3.证明相遇条件及结论3.1 问题1特殊情况证明3.2 问题1普适性证明 0.前言 在这篇博客中,我们将深入探讨链表环结构的检测方法:…...
AI Agent类开发应避免Python独舞,奏响多技术交响曲
、 (前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站)。 一、Python的局限:从“万能”到“单薄”的技术困境 1.1 Python的统治地位与暗礁 Python在AI…...
git基本使用
git 默认情况下,克隆的远程仓库会被命名为 origin git remote remove origin # 移除默认的远程仓库 origingit remote add origin https://github.com/CS144/minnow.git # 添加一个新的远程仓库 origin,指向自己的 GitHub 仓库git branch -M main #将当…...
解决IDEA中自动生成返回值带final修饰的问题
修改配置文件: 1、在settings选项下,Editor–Code Style–Java–Code Generation,确保红框内的两项不被勾选 2、在自动生成的地方,仔细观看final下面带有下划线,说明此处存在快捷键,这时按下ALT F, 选项框会取消勾选Declare final. 回车接…...
Java中的Exception和Error有什么区别?还有更多扩展
概念 在Java中,Exception和Error都是Throwable的子类,用于处理程序中的错误和异常情况。 然而,它们在用途和处理方式上有显著的不同: Exception: 用于表示程序在正常运行过程中可能出现的错误,如文件未找…...
什么是中性线、零线、地线,三相四线制如何入户用电
在变压器三相电侧,按照星形连接法,有一个中心点,这根线引出来的线接不接地:不接地就是中性线,接地就是零线 下面就是没有接地:中性线 接地了以后就可以叫做零线了 三相电在高压输电的时候是没有零线的&a…...
不用额外下载jar包,idea快速查看使用的组件源码
以nacos为例子,在idea中引入了nacos依赖,就可以查看源码了。 2. idea选择open(不关闭项目直接选择file-open也可以), 在maven的仓库里找到对应的包,打开 2.idea中选择 jar包,选择 add as library 3.这样j…...
Ant Design X 和 Element-Plus-X
Ant Design X 是 Ant Design 的全新 AGI 组件库,旨在帮助开发者更轻松地研发 AI 产品用户界面。提供AI交互所需的Attachments、Sender、ThoughtChain等组件,以及useXAgent、XStream等hooks。 具备支持Vue和React两个版本 React: https://gi…...
jetson配置yolov5(tensor加速版)出现的问题(killed+tensor+~)
1.在cmake生成engine引擎文件时,出现一系列报错 make [ 20%] Building NVCC (Device) object CMakeFiles/myplugins.dir/myplugins_generated_yololayer.cu.o /home/lin/yolov5-4.0/yolov5/yololayer.h(54): error: member function declared with "override&…...
【华为战报】2025年3月 考试战报!
原创:厦门微思网络 了解更多往期考试→点 【考试战报】 华为认证 HCIA 3月 微思 | HCIA 考试战报 学员成绩单 华为认证 HCIP 3月 微思 | HCIP 考试战报 学员成绩单 学员证书 华为认证 HCIE 3月 微思 | HCIE 考试战报 学员成绩单 学员证书 华为认证 最新开班 厦门面授…...
daz3d ERC Freeze to Morph Target 和 另存为 Morph Asset(s)
. ERC 冻结至变形目标 (ERC Freeze to Morph Target) 核心目标:将骨架的调整与自定义造型的滑块关联起来。 详细解释: 当你创建一个自定义造型(Morph)并调整了骨架(Rigging)以适应这个新造型后ÿ…...
【网络安全 | 项目开发】Web 安全响应头扫描器(提升网站安全性)
未经许可,不得转载。 文章目录 项目简介项目功能示例输出技术栈:简单代码结构可选扩展功能项目简介 Web 安全响应头扫描器(Security Headers Checker),一个安全合规工具,用于检测目标网站是否配置了关键的 HTTP 安全头部,帮助开发者提升网站基础安全性。 项目功能 1.…...
Python - 爬虫-网页抓取数据-库requests
requests库是一个功能强大的HTTP库,用于发送各种HTTP请求,如GET、POST、PUT、DELETE等。 requests官网:Requests: HTTP for Humans™ — Requests 2.32.3 documentation 使用requests可以模拟浏览器的请求,比起之前用的urllib&a…...
antv x6使用(支持节点排序、新增节点、编辑节点、删除节点、选中节点)
项目需要实现如下效果流程图,功能包括节点排序、新增节点、编辑节点、删除节点、选中节点等 html部分如下: <template><div class"MindMapContent"><el-button size"small" click"addNode">新增节点&…...
Nginx 是什么?Nginx高并发架构拆解指南
你是一个程序员,你在电脑上编辑了一段文本,将它保存为 txt 文件。将它拖到浏览器打开,就能看到文件里的内容。 但这看起来太过单调,为了让画面更丰富,我们定个规则,在文本边上加个两个h1符号,文…...
JS forEach方法
遍历数组...
可道云支持群晖的docker安装了:全网唯一支持onlyoffice安装说明
在群晖系统上部署可道云面临显著的技术门槛。DSM7.2版本因不兼容Apache2.2等组件,用户需改用Docker手动配置环境,涉及PHP扩展、SQLite3适配及存储路径映射等复杂操作,且安装后需通过WebStation调整脚本语言参数,对非专业用户极不友…...
V4L2杂谈
V4L2的开发手册 在做v4l2的开发的时候, 可以使用v4l2-ctl命令协助调试和软件开发。关于linux多媒体开发可以参考链接:https://www.linuxtv.org/wiki/index.php/Main_Page关于v4l2的api接口开发可以参考:https://linuxtv.org/docs.php在linux…...
Java—HTML:3D形变
今天我要介绍的是在Java HTML中CSS的相关知识点内容之一:3D形变(3D变换)。该内容包含透视(属性:perspective),3D变换,3D变换函数以及案例演示, 接下来我将逐一介绍&…...
Zotero PDF Translate 翻译插件使用OpenAI API配置教程
PDF Translate:提升 Zotero 内置 PDF 阅读器的翻译功能 “PDF Translate” 是一款为 Zotero 设计的插件,旨在方便用户在 Zotero 内置的 PDF 阅读器中进行划词或段落翻译,辅助阅读外文文献。 一、 安装插件 下载插件: 访问 PDF T…...
[raspberrypi 0w and respeaker 2mic]实时音频波形
0. 环境 ubuntu22主机, 192.168.8.162, raspberry 0w, 192.168.8.220 路由器 1. 树莓派 # rpi - send.py # 或者命令行:arecord -D plughw:1,0 -t wav -f cd -r 16000 -c 2 | nc 192.168.8.162 12345import socket imp…...
go-zero自动生成repository文件和测试用例
文章目录 repository的作用自动生成repository文件repo模板文件repo_test模板文件生成结果运行测试用例 repository的作用 在软件开发中,尤其是在采用分层架构或者领域驱动设计(DDD)的项目里,repository(仓库…...
红宝书第三十六讲:持续集成(CI)配置入门指南
红宝书第三十六讲:持续集成(CI)配置入门指南 资料取自《JavaScript高级程序设计(第5版)》。 查看总目录:红宝书学习大纲 一、什么是持续集成? 持续集成(CI)就像咖啡厅的…...
【Java学习】如何利用AI学习Java语言开发(二)
利用AI辅助学习Java语言开发可以显著提高学习效率、解决实际问题和优化代码质量。以下是结合AI工具和方法的系统化学习路径: 一、AI辅助学习基础阶段 智能交互式学习平台 使用Codecademy(AI驱动版)或JetBrains Academy的Java课程,AI会根据你的代码实时提供修正建议 尝试Ch…...
【C++算法】53.链表_重排链表
文章目录 题目链接:题目描述:解法C 算法代码: 题目链接: 143. 重排链表 题目描述: 解法 模拟 找到链表的中间节点 快慢双指针 把后面的部分逆序 双指针,三指针,头插法 合并两个链表 合并两个有…...
Ubuntu安装Docker引擎
安装Docker引擎 一、注意事项 防火墙兼容性 若使用 ufw 或 firewalld,Docker 容器端口会绕过防火墙规则。建议通过 iptables 或 ip6tables 配置防火墙,并将规则添加到 DOCKER-USER 链。仅支持 iptables-nft 和 iptables-legacy࿰…...