2024年6月后2周重要的大语言模型论文总结:LLM进展、微调、推理和对齐

本文总结了2024年6月后两周发表的一些最重要的大语言模型论文。这些论文涵盖了塑造下一代语言模型的各种主题,从模型优化和缩放到推理、基准测试和增强性能。

LLM进展与基准

1、 BigCodeBench: Benchmarking Code Generation with Diverse Function Calls and Complex Instructions

自动化软件工程近期受益于大型语言模型(LLMs)在编程领域的进展。尽管现有基准测试表明LLMs能够执行各种软件工程任务,但它们的评估主要限于短小且自成一体的算法任务。

解决具有挑战性和实用性的编程任务,需要利用各种函数调用作为工具,如数据分析和网页开发。使用多个工具解决任务需要通过准确理解复杂指令来进行组合推理。

满足这两种特性对LLMs来说是一个巨大的挑战。为了评估LLMs在解决具有挑战性和实用性的编程任务方面的表现,论文引入了一个基准测试Bench,挑战LLMs从139个库和7个领域调用多个函数作为工具,用于1,140个细粒度的编程任务。

为了严格评估LLMs,每个编程任务包含5.6个测试用例,平均分支覆盖率为99%。提出了一个以自然语言为导向的Bench变体,Benchi,它自动将原始文档字符串转换为仅包含关键信息的简短指令。

我们对60个LLMs的广泛评估显示,LLMs尚未能够按照复杂指令精确使用函数调用,得分最高为60%,远低于人类的97%表现。这些结果强调了该领域需要进一步发展的必要性。

https://arxiv.org/abs/2406.15877

2、Unlocking Continual Learning Abilities in Language Models

语言模型(LMs)表现出令人印象深刻的性能和泛化能力。但是LMs面临着持续学习(CL)中长期可持续性受损的持久挑战——灾难性遗忘。

现有方法通常通过将旧任务数据或任务相关的归纳偏置加入到LMs中来解决这一问题。但是旧数据和准确的任务信息往往难以获得或成本高昂,这限制了当前LMs持续学习方法的可用性。

为了解决这一限制,论文引入了MIGU(基于幅度的梯度更新,用于持续学习),这是一种无需复习和无需任务标签的方法,仅在LMs线性层中更新具有大幅度输出的模型参数。

MIGU基于以下观察:当LMs处理不同任务数据时,其线性层输出的L1标准化幅度分布有所不同。通过在梯度更新过程中施加这一简单约束,可以利用LMs的固有行为,从而释放其固有的持续学习能力。

实验表明,MIGU普遍适用于所有三种LM架构(T5、RoBERTa和Llama2),在四个持续学习基准测试中,无论是持续微调还是持续预训练设置,均展现出最先进或相当的性能。

例如在一个包含15个任务的持续学习基准测试中,MIGU比传统的高效参数微调基线平均提高了15.2%的准确率。MIGU还可以与所有三种现有的CL类型无缝集成,进一步提升性能。

https://arxiv.org/abs/2406.17245

3、Large Language Models Assume People Are More Rational than We Really Are

为了使人工智能系统能够有效地与人类交流,它们必须了解人类是如何做决策的。但是人类的决策并不总是理性的,因此大型语言模型(LLMs)中关于人类决策制定的隐含内部模型必须考虑到这一点。

以前的经验证据似乎表明这些隐含模型是准确的——LLMs提供了可信的人类行为代理,表现出我们期望人类在日常互动中的行为。

但是通过将LLM的行为和预测与大型人类决策数据集进行比较,论文发现实际情况并非如此:在模拟和预测人们的选择时,一系列尖端的LLMs(包括GPT-4o & 4-Turbo,Llama-3–8B & 70B,Claude 3 Opus)假设人们比实际上更理性。

这些模型偏离了人类行为,更接近于一个经典的理性选择模型——期望值理论。人们在解释他人行为时,也倾向于假设他人是理性的。

当论文作者使用另一个心理学数据集比较LLMs和人类从他人决策中得出的推断时,发现这些推断高度相关。因此,LLMs的隐含决策模型似乎与人们期望他人将理性行事的预期相一致,而不是与人们的实际行为相一致。

https://arxiv.org/abs/2406.17055

4、MoA: Mixture of Sparse Attention for Automatic Large Language Model Compression

稀疏注意力可以有效减轻大型语言模型(LLMs)在长文本上的显著内存和吞吐量需求。现有方法通常采用统一的稀疏注意力掩码,在不同的注意力头和输入长度上应用相同的稀疏模式。

然而这种统一方法未能捕捉LLMs固有的多样化注意力模式,忽略了它们不同的准确性-延迟权衡。为了解决这一挑战,论文提出了混合注意力(MoA),它能自动为不同的头和层定制不同的稀疏注意力配置。

MoA构建并导航各种注意力模式及其相对于输入序列长度的缩放规则的搜索空间。它对模型进行分析,评估潜在配置,并确定最优的稀疏注意力压缩计划。

MoA能适应不同的输入大小,显示出一些注意力头为适应更长的序列而扩展其焦点,而其他头则始终集中在固定长度的局部上下文上。

实验表明,MoA将有效上下文长度增加了3.9倍,同时保持相同的平均注意力跨度,使得在Vicuna-7B、Vicuna-13B和Llama3–8B模型上的检索准确性提高了1.5-7.1倍,超过了统一注意力基线。

此外MoA缩小了稀疏和密集模型之间的能力差距,将最大相对性能下降从9%-36%减少到两个长文本理解基准中的5%以内。

MoA在单GPU上实现了1.2-1.4倍的GPU内存减少,并将7B和13B密集模型的解码吞吐量提高了5.5-6.7倍,对性能的影响最小。

https://arxiv.org/abs/2406.14909

5、Semantic Entropy Probes: Robust and Cheap Hallucination Detection in LLMs

论文提出了语义熵探针(SEPs),这是一种在大型语言模型(LLMs)中进行不确定性量化的低成本且可靠的方法。幻觉——听起来合理但事实上不正确且随意的模型生成,是LLMs实际应用中的一个主要挑战。

Farquhar等人(2024年)的最近研究提出了语义熵(SE),通过估计一组模型生成中的语义意义空间的不确定性来检测幻觉。但是与SE计算相关的5到10倍的计算成本增加阻碍了其实际应用。

为了解决这个问题,作者提出了SEPs,它可以直接从单一生成的隐藏状态近似SE。SEPs易于训练,在测试时不需要采样多个模型生成,将语义不确定性量化的开销几乎降为零。

论文展示了SEPs在幻觉检测方面保持高性能,并且在泛化到分布外数据方面比直接预测模型准确性的以前的探针方法更好。

在多个模型和任务上的结果表明,模型隐藏状态捕获了SE,我们的消融研究进一步洞察了哪些标记位置和模型层是这种情况。

https://arxiv.org/abs/2406.15927

6、A Closer Look into Mixture-of-Experts in Large Language Models

专家混合模型(MoE)由于其独特的属性和卓越的性能,尤其是在语言任务中,越来越受到关注。通过稀疏激活每个标记的一部分参数,MoE架构可以在不牺牲计算效率的情况下增加模型大小,实现性能和训练成本之间更好的权衡。

然而MoE的底层机制仍需进一步探索,其模块化程度仍有待商榷。论文首次尝试理解基于MoE的大型语言模型的内部工作原理。

具体来说,全面研究了三个最近的基于MoE的模型的参数和行为特征,并揭示了一些有趣的观察结果,包括:

  • 神经元表现得像细粒度专家。
  • MoE的路由器通常选择具有较大输出范数的专家。
  • 专家多样性随层的增加而增加,而最后一层是一个异常值。

基于这些观察结果,作者还为广泛的MoE实践者提供了一些建议,例如路由器设计和专家分配。希望这项工作能为未来对MoE框架和其他模块化架构的研究提供启示。

https://arxiv.org/abs/2406.18219

7、Leave No Document Behind Benchmarking Long-Context LLMs with Extended Multi-Doc QA

长文本建模能力已经引起广泛关注,出现了具有超长上下文窗口的大型语言模型(LLMs)。与此同时,评估长文本LLMs的基准测试也在逐渐跟进。

现有的基准测试使用不相关的噪音文本人为延长测试用例的长度,与长文本应用的现实场景背道而驰。为了弥合这一差距,作者提出了一个新的长文本基准测试,Loong,通过扩展的多文档问答(QA)与现实场景保持一致。

与典型的文档QA不同,在Loong的测试用例中,每个文档都与最终答案相关,忽略任何一个文档都会导致答案失败。此外,Loong引入了四种类型的任务,包括不同范围的上下文长度:聚光定位、比较、聚类和推理链,以便更真实、全面地评估长文本理解能力。

广泛的实验表明,现有的长文本语言模型仍然显示出相当大的增强潜力。检索增强生成(RAG)表现不佳,证明Loong能可靠地评估模型的长文本建模能力。

https://arxiv.org/abs/2406.17419

8、LongIns: A Challenging Long-context Instruction-based Exam for LLMs

近年来,大型语言模型(LLMs)的长文本能力成为热门话题。为了评估LLMs在不同场景下的表现,各种评估基准测试已经出现。

由于这些基准测试大多专注于识别关键信息以回答问题,主要需要LLMs的检索能力,这些基准测试只能部分代表LLMs从大量信息中的推理性能。

尽管LLMs经常声称具有32k、128k、200k甚至更长的上下文窗口,但这些基准测试未能揭示这些LLMs实际支持的长度。为了解决这些问题,作者提出了LongIns基准数据集,这是一个基于现有指令数据集建立的挑战性长文本指令型考试,用于评估LLMs。

具体来说,在LongIns中,引入了三种评估设置:全局指令与单任务(GIST)、局部指令与单任务(LIST)和局部指令与多任务(LIMT)。基于LongIns,我们对现有的LLMs进行了全面评估,并得出以下重要发现:

  • 在LongIns中,表现最佳的GPT-4具有128k的上下文长度,在16k的评估上下文窗口中表现不佳。
  • 对于许多现有LLMs的多跳推理能力,在短上下文窗口(小于4k)下仍需要显著努力。

https://arxiv.org/abs/2406.17588

RAG

1、 LongRAG: Enhancing Retrieval-Augmented Generation with Long-context LLMs

在传统的RAG(检索增强生成)框架中,基本的检索单元通常较短。像DPR这样的常见检索器通常使用100字的维基百科段落。这种设计迫使检索器在大型语料库中搜索小型单元。

相比之下,读取器只需要从检索到的小型单元中提取答案。这种不平衡的重检索器和轻读取器设计可能导致性能不佳。为了缓解这种不平衡,作者提出了一个新框架LongRAG,包括一个长检索器和一个长读取器。

LongRAG将整个维基百科处理成4K令牌单元,这比以前长30倍。通过增加单元大小,显著减少了总单元数,从2200万减少到70万。这显著降低了检索器的负担,从而导致了显著的检索得分:在NQ上的答案召回率@1=71%(之前为52%)和在HotpotQA(全维基)上的答案召回率@2=72%(之前为47%)。

然后将前k个检索到的单元(大约30K令牌)提供给现有的长上下文LLM进行零样本答案提取。无需任何训练,LongRAG在NQ上实现了62.7%的精确匹配(EM),这是已知的最佳结果。

LongRAG在HotpotQA(全维基)上也达到了64.3%,与当前最好的模型持平。论文的研究为将RAG与长上下文LLMs结合提供了未来的发展路线图。

https://arxiv.org/abs/2406.15319

2、Towards Retrieval Augmented Generation over Large Video Libraries

在这篇论文中引入了视频库问答(VLQA)任务,通过一个可互操作的架构,将检索增强生成(RAG)应用于视频库。

作者提出了一个系统,该系统使用大型语言模型(LLMs)生成搜索查询,检索通过语音和视觉元数据索引的相关视频时刻。

一个答案生成模块将用户查询与此元数据整合,以生成带有具体视频时间戳的响应。这种方法在多媒体内容检索和AI辅助视频内容创作中显示出潜力。

https://arxiv.org/abs/2406.14938

3、A Tale of Trust and Accuracy: Base vs. Instruct LLMs in RAG Systems

检索增强生成(RAG)代表了人工智能的重大进展,它结合了检索阶段和生成阶段,后者通常由大型语言模型(LLMs)驱动。

当前RAG的常见做法包括使用“受指导”的LLMs,这些模型经过监督训练进行微调,以增强其遵循指令的能力,并使用最先进的技术与人类偏好对齐。

与流行观念相反,论文的研究表明,在作者的实验设置下,基础模型在RAG任务中的表现平均比受指导的对应模型高出20%。这一发现挑战了有关受指导LLMs在RAG应用中优越性的普遍假设。

进一步的调查揭示了更为细致的情况,质疑RAG的基本方面,并建议就该话题进行更广泛的讨论;正如弗罗姆(Fromm)所说,“很少有一瞥统计数据就足以理解数字的含义”。

https://arxiv.org/abs/2406.14972

4、Understand What LLM Needs: Dual Preference Alignment for Retrieval-Augmented Generation

检索增强生成(RAG)已证明在减轻大型语言模型(LLMs)的幻觉问题方面的有效性。但是使检索器与LLMs多样的知识偏好相匹配的困难不可避免地给开发可靠的RAG系统带来了挑战。

为了解决这个问题,作者提出了DPA-RAG,使RAG系统内部多样的知识偏好对齐的通用框架。首先引入了一个偏好知识构建管道,并整合了五种新颖的查询增强策略,以缓解偏好数据稀缺的问题。

基于偏好数据,DPA-RAG完成了外部和内部偏好的对齐:

  • 它将成对的、点对点的和对比性的偏好对齐能力集成到重排器中,实现了RAG组件间的外部偏好对齐。
  • 它进一步在传统的监督式微调(SFT)之前引入了一个预对齐阶段,使LLMs能够隐式地捕捉与其推理偏好一致的知识,实现了LLMs的内部对齐。

在四个知识密集型问答数据集上的实验结果表明,DPA-RAG超越了所有基线,并且无缝整合了黑盒和开源的LLM阅读器。进一步的定性分析和讨论也为实现可靠的RAG系统提供了经验性指导。

https://arxiv.org/abs/2406.18676

LLM微调

1、Dataset Size Recovery from LoRA Weights

作者引入了一项新任务:数据集大小恢复,旨在直接从模型的权重确定用于训练模型的样本数量。提出了一种名为DSiRe的方法,用于恢复在常见的LoRA微调情况下用于微调模型的图像数量。

作者发现,LoRA矩阵的范数和谱与微调数据集的大小密切相关;利用这一发现提出了一个简单而有效的预测算法。

为了评估LoRA权重的数据集大小恢复,作者开发并发布了一个新的基准测试LoRA-WiSE,包含来自2000多个多样化LoRA微调模型的超过25000个权重快照。最好的分类器能够预测微调图像的数量,平均绝对误差为0.36图像,从而证明了这种方案的可行性。

https://arxiv.org/abs/2406.19395

2、Can Few Shots Work in a Long Context? Recycling the Context to Generate Demonstrations

尽管大型语言模型(LLMs)近年来取得了显著进展,但在处理长上下文任务时,它们的性能仍然不尽如人意。在此场景中,使用少量示例进行上下文内学习(ICL)可能是一种提高LLM性能的有吸引力的解决方案。

但是简单地添加带有长上下文的ICL示例会引入挑战,包括为每个少量示例增加大量的令牌开销,以及示范与目标查询之间的上下文不匹配。在这项工作中,论文提出通过回收上下文自动为长上下文问答(QA)任务生成少量示例。

具体来说,给定一个长输入上下文(1-3k令牌)和一个查询,从给定上下文中生成额外的查询-输出对作为少量示例,同时只引入一次上下文。这确保了演示利用的是与目标查询相同的上下文,同时只向提示中添加少量令牌。

作者进一步通过指示模型在回答之前明确识别相关段落来增强每个演示,这在提高性能的同时,为答案来源提供了细粒度归因。

在多个LLMs上应用论文的方法,并在多个带有长上下文的QA数据集上获得了显著的改进(平均跨模型提高23%),特别是当答案位于上下文中部时。令人惊讶的是,尽管只引入了单跳ICL示例,LLMs也成功地使用论文的方法推广到多跳长上下文QA。

https://arxiv.org/abs/2406.13632

LLM推理

1、Math-LLaVA: Bootstrapping Mathematical Reasoning for Multimodal Large Language Models

大型语言模型(LLMs)在文本数学问题解决方面表现出令人印象深刻的推理能力。

但是现有的开源图像指令微调数据集,每张图像包含的问题-答案对数量有限,未能充分利用视觉信息来增强多模态LLMs(MLLMs)的多模态数学推理能力。

为了弥合这一差距,作者通过从24个现有数据集中收集40,000张高质量图像及其问题-答案对,并合成320,000个新对,创建了MathV360K数据集,这一数据集增强了多模态数学问题的广度和深度。

论文还引入了Math-LLaVA,一种基于LLaVA-1.5并用MathV360K微调的模型。这种新方法显著提高了LLaVA-1.5的多模态数学推理能力,在MathVista的最小分割上实现了19点的增长,并与GPT-4V的表现相当。

并且Math-LLaVA展示了更强的泛化能力,在MMMU基准测试上显示出显著改进。这个研究强调了数据集多样性和合成在推进MLLMs数学推理能力方面的重要性。

https://arxiv.org/abs/2406.17294

LLM安全与对齐

1、Judging the Judges: Evaluating Alignment and Vulnerabilities in LLMs-as-Judges

论文提供了一种解决人类评估可扩展性挑战的有希望的解决方案,LLM作为评判的模式正在迅速成为评估大型语言模型(LLMs)的一种方法。

但是关于这一模式的优势和劣势,以及它可能持有的潜在偏见,仍有许多未解决的问题。作者展示了对各种作为评判的LLMs的性能的全面研究。

利用TriviaQA作为评估LLMs客观知识推理的基准,并与作者发现具有高度一致性的人类注释一起评估它们。

论文的研究包括9个评判模型和9个考生模型——基础型和指令调优型。评估评判模型在不同模型大小、家族和评判提示之间的一致性。

在其他结果中,了坤问的研究重新发现了使用科恩的卡帕系数作为一致性度量而非简单的百分比一致性的重要性,显示出具有高百分比一致性的评判仍然可以分配极其不同的分数。

作者发现Llama-3 70B和GPT-4 Turbo在与人类的一致性上表现出色

https://arxiv.org/abs/2406.12624

2、Cross-Modality Safety Alignment

随着人工通用智能(AGI)越来越多地融入人类生活的各个方面,确保这些系统的安全性和道德一致性至关重要。

以往的研究主要关注单一模态的威胁,鉴于跨模态交互的综合性和复杂性,这可能不足以应对挑战。论文引入了一个名为“安全输入但不安全输出”(SIUO)的新型安全一致性挑战,以评估跨模态安全一致性。

它考虑了单一模态独立安全但结合时可能导致不安全或不道德输出的情况。为了实证研究这个问题,作者开发了SIUO,一个包括9个关键安全领域(如自我伤害、非法活动和隐私侵犯)的跨模态基准测试。

研究发现,在封闭和开源的大型变量语言模型(LVLMs),如GPT-4V和LLaVA中发现了重大的安全漏洞,这突显了当前模型在可靠解释和响应复杂的现实世界场景中的不足。

https://arxiv.org/abs/2406.15279

3、Ruby Teaming: Improving Quality Diversity Search with Memory for Automated Red Teaming

作者的Ruby Teaming方法是在Rainbow Teaming的基础上改进的,它新增了一个内存缓存作为第三维度。这一内存维度为变异器提供线索,以生成质量更高的提示,无论是在攻击成功率(ASR)还是质量多样性方面。

由Ruby Teaming生成的提示档案的ASR为74%,比基线高出20%。在质量多样性方面,根据香农均匀指数(SEI)和辛普森多样性指数(SDI),Ruby Teaming分别比Rainbow Teaming高出6%和3%。这表明Ruby Teaming在提升生成提示的效率和多样性方面具有显著优势。

https://arxiv.org/abs/2406.11654

4、Aligning Teacher with Student Preferences for Tailored Training Data Generation

大型语言模型(LLMs)在多种任务中作为协作工具显示出显著的潜力。在处理隐私敏感数据或对延迟敏感的任务时,LLMs在边缘设备上的本地部署是必要的。

这种设备的计算限制使得直接部署强大的大规模LLMs变得不切实际,这就需要从大规模模型到轻量级模型的知识蒸馏。

已经有很多工作致力于从LLMs中引出多样化和高质量的训练示例,但对于基于学生偏好对教师指导内容进行对齐的关注却很少,这类似于教育学中的“响应性教学”。

所以作者提出了一种名为ARTE(Aligning TeacheR with StudenT PreferencEs)的框架,该框架将教师模型与学生偏好对齐,以生成针对知识蒸馏的定制化训练示例。

从教师模型中引出草稿问题和论证,然后使用学生在上下文学习中的表现作为代理,收集学生对这些问题和论证的偏好,并最终将教师模型与学生偏好对齐。

最后重复第一步,使用对齐后的教师模型为学生模型在目标任务上引出定制化的训练示例。在学术基准上进行的广泛实验表明,ARTE优于现有从强大的LLMs蒸馏出的指导调整数据集。

作者还深入研究了ARTE的泛化能力,包括经过微调的学生模型在推理能力上的泛化以及对齐的教师模型在跨任务和学生上生成定制训练数据的泛化。

这篇论文贡献在于提出了一个生成定制训练示例的新框架,证明了它在实验中的有效性,并调查了ARTE中学生模型和对齐的教师模型的泛化能力。

https://arxiv.org/abs/2406.19227

5、WildTeaming at Scale: From In-the-Wild Jailbreaks to (Adversarially) Safer Language Models

论文介绍了WildTeaming,这是一个自动化的LLM安全红队框架,它挖掘用户与聊天机器人的互动,发现5700个独特的新型越狱策略群集,然后组合多种策略系统地探索新型越狱。

与之前通过招募人工工作人员、基于梯度的优化或与LLMs迭代修订进行红队操作的工作相比,论文的工作调查了那些没有特别指示去破坏系统的聊天机器人用户的越狱行为。

WildTeaming揭示了前沿LLMs以前未识别的漏洞,与最先进的越狱方法相比,导致了多达4.6倍更多样化和成功的对抗性攻击。虽然有许多数据集用于越狱评估,但很少有开源数据集用于越狱训练,因为即使模型权重是开放的,安全训练数据也是封闭的。

通过WildTeaming,作者创建了WildJailbreak,一个大规模的开源合成安全数据集,包含262K个普通(直接请求)和对抗性(复杂越狱)的提示-响应对。

为了缓解夸大的安全行为,WildJailbreak提供了两种对比类型的查询:

  • 有害查询(普通和对抗性)
  • 形式上类似有害查询但不含有害内容的良性查询。

由于WildJailbreak大幅提升了现有安全资源的质量和规模,它独特地使我们能够研究数据的规模效应以及在安全训练期间数据属性与模型能力的相互作用。

通过广泛的实验作者确定了使模型能够理想平衡安全行为的训练属性:适当的保护而不过度拒绝,有效处理普通和对抗性查询,以及尽可能少地降低总体能力。WildJailbeak的所有组成部分都有助于实现模型的平衡安全行为。

https://arxiv.org/abs/2406.18510

https://avoid.overfit.cn/post/42caafd81dfb40f387c59747c6a96417

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/777802.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

图文识别0难度上手~基于飞浆对pdf简易ocr并转txt

前言 本篇pdf适用windows对视觉识别0基础的的纯小白用户。大佬请绕道~~ 注意: 本项目pdf的ocr对于表格、画图文字,水印等干扰没做任何处理,因此希望各位使用该功能的pdf尽量不要含有这些干扰项,以免影响翻译效果。 流程 1.构建…

收银系统源码-收银台副屏广告

1. 功能描述 门店广告:双屏收银机,副屏广告,主屏和副屏同步,总部可统一控制广告位,也可以给门店开放权限,门店独立上传广告位; 2.适用场景 新店开业、门店周年庆、节假日门店活动宣传&#x…

Nginx实战:nginx性能压测(ab)

在nginx的生产实践中,不管是服务上线,还是性能优化,都会遇到需要对nginx的性能压测,本文介绍一个简单的压测工具:ab命令 ab(Apache Bench)是一个常用的HTTP压力测试工具,可以用来测试Nginx的性能和压力。ab命令可以指定并发请求数、请求数、请求类型等参数,并输出测试…

SpringBoot 启动流程四

SpringBoot启动流程四 前面这个创建对象是初始化SpringApplication对象 是加载了SpringBoot程序的所有相关配置 我们接下来要将这个run方法 run过程是一个运行 初始化容器 我们看我们的运行结果是得到一个ConfigurableApplicationContext对象 package com.bigdata1421.star…

MySQL 集群

MySQL 集群有多种类型,每种类型都有其特定的用途和优势。以下是一些常见的 MySQL 集群解决方案: 1. MySQL Replication 描述:MySQL 复制是一种异步复制机制,允许将一个 MySQL 数据库的数据复制到一个或多个从服务器。 用途&…

医疗器械企业CRM系统推荐清单(2024版)

近年来,我国医疗器械行业在国家政策支持、医改深入、人口老龄化和消费能力提升等因素推动下,得到了快速发展,正日益成为创新能力增强、市场需求旺盛的朝阳产业。然而,行业也面临价格压力、市场份额重新分配、合规风险以及产品和服…

mac 安装nvm的教程

在macOS上切换Node.js版本,可以使用nvm(Node Version Manager)。以下是安装nvm和切换Node.js版本的步骤: 安装nvm 下载方式 终端复制输入: curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.…

Odoo14使用hiPrint实现打印功能

使用hiPrint代替odoo原生的打印功能 可以实现快速自定义修改打印模板,无需每次都调整打印模板 无论是表单分页还是各种需求,都能满足 目录 1 使用命令创建新的模块,无用的demo文件可以删除掉 2 新建“打印模板”,用于保存打印…

MySQL表的增删改查(CRUD)

MySQL表的增删改查(CRUD) 文章目录 MySQL表的增删改查(CRUD)1. Create1.1 单行数据 全列插入1.2 多行数据 指定列插入1.3 插入否则更新1.4 替换 2. Retrieve2.1 SELECT 列2.1.1 全列查询2.1.2 指定列查询2.1.3 查询字段为表达式…

嵌入式系统中状态机实现详解

嵌入式开发中系统经常处于某种状态,如何处理呢?接下来分析一下,状态机的实现无非就是 3 个要素:状态、事件、响应。转换成具体的行为就 3 句话。 发生了什么事? 现在系统处在什么状态? 在这样的状态下发生了这样的事,系统要干什么? 用 C 语言实现状态机主要有 3 种方法…

JVM专题之垃圾收集算法

标记清除算法 第一步:标记 (找出内存中需要回收的对象,并且把它们标记出来) 第二步:清除 (清除掉被标记需要回收的对象,释放出对应的内存空间) 缺点: 标记清除之后会产生大量不连续的内存碎片,空间碎片太多可能会导致以后在程序运行过程中需 要分配较大对象时,无法找到…

spark on k8s两种方式的原理与对比

spark on k8s两种方式的原理与对比 1、spark on k8s 方式 spark-submit可以直接用来向 Kubernetes 集群提交 Spark 应用,提交机制如下: 1、Spark 创建一个在Kubernetes pod中运行的 Spark 驱动程序。 2、驱动程序创建在 Kubernetes Pod 中运行的执行器…

阿里云服务器配置、搭建(针对Spring boot和MySQL项目)

这是一篇极其详细且痛苦的文章,还是在两位后端的大佬手把手教导下、以及我找遍全网所有资料、问了N遍AI、甚至直接申请阿里云工单一对一询问客服一整天、连续清空再上传反复30多次整个项目jar包......总结出来的终极要人命踩坑的问题总结 一、首先购买服务器 其实不…

25.【C语言】循环结构之for 上

1.基本使用 类比while 在while循环中&#xff0c;有三个不可或缺的部分&#xff1a;初始化&#xff0c;判断部分&#xff0c;调整部分 int i 0;//初始化 while (i < 10)//判断部分 {……i;//调整部分 }三个部分太分散&#xff0c;用for循环可集为一体&#xff0c;简洁 …

dotnet ef工具使用

设置工具安装目录 dotnet tool install dotnetsay --tool-path G:\dotnet-tools安装 dotnet tool install --global dotnet-ef更新 dotnet tool update --global dotnet-ef查看版本 dotnet ef --version创建迁移文件 # 只有一个dbcontext dotnet ef migrations add init #…

Android Camera2 集成人脸识别算法

这可能是全网唯一一篇介绍Android Camera2接口集成人脸算法的文章了~ 写在前面&#xff1a; 说起人脸识别&#xff0c;相信大家都不会感到陌生&#xff0c;在我们平时的工作生活中&#xff0c;人脸打卡、刷脸支付等等已经是应用的非常广泛了&#xff0c;人脸识别也给我们的生活…

基于若依的文件上传、下载

基于若依实现文件上传、下载 文章目录 基于若依实现文件上传、下载1、前端实现-文件上传1.1 通用上传分析1.2 修改实现上传接口 2、后端实现-文件上传3、后端实现-文件下载4、前端实现-文件下载 官网其实也写了&#xff0c;但是我是自己改造封装了一下&#xff0c;再次迈向全栈…

kafka系列之消费后不提交offset情况的分析总结

概述 每当我们调用Kafka的poll()方法或者使用KafkaListener(其实底层也是poll()方法)时&#xff0c;它都会返回之前被写入Kafka的记录&#xff0c;即我们组中的消费者还没有读过的记录。 这意味着我们有一种方法可以跟踪该组消费者读取过的记录。 如前所述&#xff0c;Kafka的一…

一种一维时间序列信号变化/事件/异常检测方法(MATLAB)

随着工业物联网、大数据和人工智能的发展&#xff0c;传统工业正在向数字化和智能化升级&#xff0c;从而创造了大量的时间序列数据。通过分析这些数据&#xff0c;可以提供准确可靠的信息服务和决策依据&#xff0c;促进制造业的转型升级。工业物联网在传统工业向“工业 4.0”…