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
相关文章:
2024年6月后2周重要的大语言模型论文总结:LLM进展、微调、推理和对齐
本文总结了2024年6月后两周发表的一些最重要的大语言模型论文。这些论文涵盖了塑造下一代语言模型的各种主题,从模型优化和缩放到推理、基准测试和增强性能。 LLM进展与基准 1、 BigCodeBench: Benchmarking Code Generation with Diverse Function Calls and Com…...
大数据面试题之数仓(1)
目录 介绍下数据仓库 数仓的基本原理 数仓架构 数据仓库分层(层级划分),每层做什么?分层的好处? 数据分层是根据什么? 数仓分层的原则与思路 知道数仓建模常用模型吗?区别、优缺点? 星型模型和雪花模型的区别?应用场景?优劣对比 数仓建模有哪些方式…...
[机器学习]-4 Transformer介绍和ChatGPT本质
Transformer Transformer是由Vaswani等人在2017年提出的一种深度学习模型架构,最初用于自然语言处理(NLP)任务,特别是机器翻译。Transformer通过自注意机制和完全基于注意力的架构,核心思想是通过注意力来捕捉输入序列…...
基于深度学习的电力分配
基于深度学习的电力分配是一项利用深度学习算法优化电力系统中的电力资源分配、负荷预测、故障检测和系统管理的技术。该技术旨在提高电力系统的运行效率、稳定性和可靠性。以下是关于这一领域的系统介绍: 1. 任务和目标 电力分配的主要任务是优化电力系统中的电力…...
飞书 API 2-4:如何使用 API 将数据写入数据表
一、引入 上一篇创建好数据表之后,接下来就是写入数据和对数据的处理。 本文主要探讨数据的插入、更新和删除操作。所有的操作都是基于上一篇(飞书 API 2-4)创建的数据表进行操作。上面最终的数据表只有 2 个字段:序号和邮箱。序…...
系统设计题-日活月活统计
一、题目描述 根据访问日志统计接口的日活和月活。日志格式为 yyyy-mm-dd|clientIP|url|result 其中yyyy-mm-dd代表年月日,一个日志文件中时间跨度保证都在同一个月内,但不保证每行是按照日期顺序。 clientIP为合法的点分十进制ipv4地址(1.1.1.1和1.01.…...
在CentOS7云服务器下搭建MySQL网络服务详细教程
目录 0.说明 1.卸载不要的环境 1.1查看当前环境存在的服务mysql或者mariadb 1.2卸载不要的环境 1.2.1先关闭相关的服务 1.2.2查询曾经下载的安装包 1.2.3卸载安装包 1.2.4检查是否卸载干净 2.配置MySQLyum源 2.1获取mysql关外yum源 2.2 查看当前系统结合系统配置yum…...
【数据结构与算法】快速排序霍尔版
💓 博客主页:倔强的石头的CSDN主页 📝Gitee主页:倔强的石头的gitee主页 ⏩ 文章专栏:《数据结构与算法》 期待您的关注 ...
无人机5公里WiFi低延迟图传模组,抗干扰、长距离、低延迟,飞睿智能无线通信新标杆
在科技日新月异的今天,我们见证了无数通信技术的飞跃。从开始的电报、电话,到如今的4G、5G网络,再到WiFi的广泛应用,每一次技术的革新都极大地改变了人们的生活方式。飞睿智能5公里WiFi低延迟图传模组,它以其独特的优势…...
Kappa架构
1.Kappa架构介绍 Kappa架构由Jay Kreps提出,不同于Lambda同时计算和批计算并合并视图,Kappa只会通过流计算一条的数据链路计算并产生视图。Kappa同样采用了重新处理事件的原则,对于历史数据分析类的需求,Kappa要求数据的长期存储能…...
护网在即,助力安服仔漏洞扫描~
整合了个漏扫系统,安服仔必备~ 使用场景 网前布防,漏洞扫描,资产梳理 使用方法: 启动虚拟机后运行命令: ./StartSystemScript.sh 输入密码attack 启动完成后浏览器打开网站: http://IP:5000 相关账户…...
3C电子制造行业MES系统,提高企业生产效率
随着科技的不断进步,3C电子制造行业正迎来传统工厂向数字化工厂转型的阶段。在这场变革中,MES系统发挥着重要的作用,成为了企业变革的“智慧大脑”,引领着生产流程的优化和升级。 那么,MES系统究竟有哪些功能…...
C++ 多态和虚函数
参考C:多态 详解_c多态-CSDN博客 C多态——虚函数_c的a* a new b()是什么意思-CSDN博客 一.多态的概念 多态是在不同继承关系的类对象,去调用同一函数,产生了不同的行为。比如 Student 继承了 Person。 Person 对象买票全价,…...
七月记录上半
7.5 运行mysql脚本 mysql -u root -p 数据库名 < 脚本名 7.6 使用screen在服务器后台长期运行一个程序: screen -S 窗口名:创建窗口 执行程序脚本 ctrlad:退出窗口 screen -ls :查看所有窗口 screen -r 窗口号 &#…...
Wing FTP Server
文章目录 1.Wing FTP Server简介1.1主要特点1.2使用教程 2.高级用法2.1Lua脚本,案例1 1.Wing FTP Server简介 Wing FTP Server,是一个专业的跨平台FTP服务器端,它拥有不错的速度、可靠性和一个友好的配置界面。它除了能提供FTP的基本服务功能以外&#…...
【Linux进阶】文件系统6——理解文件操作
目录 1.文件的读取 1.1.目录 1.2.文件 1.3.目录树读取 1.4.文件系统大小与磁盘读取性能 2.增添文件 2.1.数据的不一致(Inconsistent)状态 2.2.日志式文件系统(Journaling filesystem) 3.Linux文件系统的运行 4、文件的删…...
Python编译器的选择
了解如何使用一个集成开发环境(IDE)对于 Python 编程是非常重要的。IDE 提供了代码编辑、运行、调试、版本控制等多种功能,可以极大地提升开发效率。以下是一些流行的 Python IDE 和代码编辑器的介绍,以及如何开始使用它们&#x…...
Java | Leetcode Java题解之第217题存在重复元素
题目: 题解: class Solution {public boolean containsDuplicate(int[] nums) {Set<Integer> set new HashSet<Integer>();for (int x : nums) {if (!set.add(x)) {return true;}}return false;} }...
python基础语法 006 内置函数
1 内置函数 材料参考:内置函数 — Python 3.12.4 文档 Python 解释器内置了很多函数和类型,任何时候都能直接使用 内置函数有无返回值,是python自己定义,不能以偏概全说都有返回值 以下为较为常用的内置函数,欢迎补充…...
ABAP中BAPI_CURRENCY_CONV_TO_EXTERNAL函数详细的使用方法
在ABAP(SAP的应用程序开发语言)中,BAPI_CURRENCY_CONV_TO_EXTERNAL函数用于将SAP系统内部存储的货币金额转换为外部显示的格式。这个函数在处理财务报告、用户界面显示或与其他系统集成时非常有用。以下是该函数的详细使用方法: …...
RestClient
什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端,它允许HTTP与Elasticsearch 集群通信,而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级ÿ…...
龙虎榜——20250610
上证指数放量收阴线,个股多数下跌,盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型,指数短线有调整的需求,大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的:御银股份、雄帝科技 驱动…...
Chapter03-Authentication vulnerabilities
文章目录 1. 身份验证简介1.1 What is authentication1.2 difference between authentication and authorization1.3 身份验证机制失效的原因1.4 身份验证机制失效的影响 2. 基于登录功能的漏洞2.1 密码爆破2.2 用户名枚举2.3 有缺陷的暴力破解防护2.3.1 如果用户登录尝试失败次…...
Vue记事本应用实现教程
文章目录 1. 项目介绍2. 开发环境准备3. 设计应用界面4. 创建Vue实例和数据模型5. 实现记事本功能5.1 添加新记事项5.2 删除记事项5.3 清空所有记事 6. 添加样式7. 功能扩展:显示创建时间8. 功能扩展:记事项搜索9. 完整代码10. Vue知识点解析10.1 数据绑…...
ES6从入门到精通:前言
ES6简介 ES6(ECMAScript 2015)是JavaScript语言的重大更新,引入了许多新特性,包括语法糖、新数据类型、模块化支持等,显著提升了开发效率和代码可维护性。 核心知识点概览 变量声明 let 和 const 取代 var…...
【HarmonyOS 5.0】DevEco Testing:鸿蒙应用质量保障的终极武器
——全方位测试解决方案与代码实战 一、工具定位与核心能力 DevEco Testing是HarmonyOS官方推出的一体化测试平台,覆盖应用全生命周期测试需求,主要提供五大核心能力: 测试类型检测目标关键指标功能体验基…...
SCAU期末笔记 - 数据分析与数据挖掘题库解析
这门怎么题库答案不全啊日 来简单学一下子来 一、选择题(可多选) 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘:专注于发现数据中…...
DIY|Mac 搭建 ESP-IDF 开发环境及编译小智 AI
前一阵子在百度 AI 开发者大会上,看到基于小智 AI DIY 玩具的演示,感觉有点意思,想着自己也来试试。 如果只是想烧录现成的固件,乐鑫官方除了提供了 Windows 版本的 Flash 下载工具 之外,还提供了基于网页版的 ESP LA…...
Matlab | matlab常用命令总结
常用命令 一、 基础操作与环境二、 矩阵与数组操作(核心)三、 绘图与可视化四、 编程与控制流五、 符号计算 (Symbolic Math Toolbox)六、 文件与数据 I/O七、 常用函数类别重要提示这是一份 MATLAB 常用命令和功能的总结,涵盖了基础操作、矩阵运算、绘图、编程和文件处理等…...
python报错No module named ‘tensorflow.keras‘
是由于不同版本的tensorflow下的keras所在的路径不同,结合所安装的tensorflow的目录结构修改from语句即可。 原语句: from tensorflow.keras.layers import Conv1D, MaxPooling1D, LSTM, Dense 修改后: from tensorflow.python.keras.lay…...
