GenAI成熟度模型:不同层次的精细化

这种成熟度模型为GenAI解决方案的不断提升提供了一条路径,从基本数据准备和模型选择开始,逐步进行微调、评估,最终达到多代理系统、先进推理和负责任的人工智能实践阶段。

Level 0:准备数据

这个基础级别侧重于获取或创建必要的数据集,并确保这些数据集的质量和适用性,以供GenAI/LLM或基于代理的应用程序使用。这将涉及采购、清洁、准备、获取使用许可证,生成合成数据和数据工程和转换活动。

Level 1:选择模型与提示:提供模型

这是最简单的级别:选择一个LLM并提示它。处于这一级别的组织已经确定了合适的模型,并正在制定有效的提示与之进行交互。他们还有能力使用这些模型来执行通常通过提示工程驱动的特定任务。请注意,相同的提示可能对不同的LLM产生不同的结果。

模型选择、提示工程和检索:该过程始于选择一个适合特定任务的LLM模型,并使用专有数据进行微调。有效的提示工程指导模型的行为,信息检索机制从内部知识库中提取相关信息。这个检索步骤通常由企业搜索功能提供支持,允许模型访问组织内部资源中的相关文档和数据。

请注意,上下文学习和多次学习可以提供有前途的模型调优。请参阅模型调优部分。

Level 2:检索增强:检索信息以增强提示

在之前的级别基础上建立,这个阶段涉及通过GenAI模型检索相关信息。这表明了与模型进行更复杂交互以提取特定见解或数据。

此时,注意力转向了使用专有或领域特定数据对GenAI模型进行微调。这可以提高性能,并使模型更加可定制,以满足特定要求。

检索增强生成(RAG)是一个将信息检索系统与LLM结合起来以生成更准确和知情回应的框架。RAG的复杂性可以根据检索和集成机制的复杂程度进行分类。

RAG(检索增强生成):在从内部来源进行初始检索之后,RAG利用类似谷歌外部搜索的能力,例如由Vertex AI基础服务提供的搜索。这涉及查询外部知识库、网络和其他相关来源,以收集可增强生成输出的准确性和上下文的附加信息。内部和外部搜索的结合确保对主题进行全面理解。

值得注意的是,检索增强本身具有几个复杂层次。让我们来探讨一下。

2.1级:简单检索和生成

在这个基本级别上,RAG根据用户的查询从知识库或语料库中检索相关文档或段落。然后,检索到的信息直接传递给LLM,后者使用检索到的内容作为上下文生成响应。这种方法相对简单,但可能并不总是产生最准确或相关的结果,因为它完全依赖于LLM理解和综合检索到的信息的能力。

2.2级:情境检索和生成

这一级别引入了更复杂的检索机制,考虑用户查询的上下文。与仅基于关键词匹配检索文档不同,它可能利用语义搜索或查询扩展等技术来识别更相关的信息。此外,检索到的信息可能会根据相关性或重要性进行过滤或排序,然后传递给LLM。通过提供更专注和上下文相关的信息,这可以提高生成响应的质量。

2.3级:动态检索和生成

这一级别通过在生成过程中动态检索信息将RAG推进一步。LLM可以在需要时逐步请求额外信息以生成更全面和准确的响应,而不是一次性检索所有相关信息。这种方法允许进行更微妙和互动式的对话,在这种对话中,LLM可以积极寻找额外信息以澄清歧义或填补知识空白。

2.4级:多源检索和生成

这一高级别涉及从多个来源(如不同的知识库、数据库或甚至实时数据流)检索信息。此处的挑战在于有效整合来自不同来源的信息,这些信息可能具有不同的格式、结构或可靠性水平。这需要复杂的检索和融合技术,以确保生成的响应连贯、准确且及时更新。

2.5级:知识感知生成,知识图谱增强

在这个最高复杂级别,RAG将知识图谱或其他结构化知识表示整合到LLM对检索到的信息的理解中。这使LLM能够对检索到的知识进行推理,识别概念之间的关系,并生成更为见解深刻和明智的响应。这种方法特别适用于需要深入领域知识或推理能力的复杂任务。

第3级:使用特定领域数据调优模型

本级别包括调优模型的能力,随着成熟度的提高,可以使用参数高效微调、带人类反馈的强化学习(RLHF)、监督微调(SFT)或完全微调(FFT)。了解如何使用 Google Vertex AI 来调整您模型的各种选择。这使模型能够根据特定行业或领域的数据进行训练。每个组织的秘密来源是它们多年来积累的专属数据,通常代表着该垂直领域中的独特价值。

重要的是训练模型或两种模型,这些模型与该特定垂直领域的数据中蕴含的术语、本体实体和通用知识相符,如零售、医疗保健、金融服务等。微调 AI 模型涉及各种复杂程度和应用方法,从简单的上下文调整到高级的强化学习。以下是这些方法的详细概述,按成熟度和精密度水平排列:

3.1. 上下文学习(ICL)

  • 成熟度:基本

  • 相对成本:低

  • 所需数据大小:最少(零示例或少数示例)

  • 描述:该模型仅基于所提供的提示上下文进行预测,而无需更新其参数。它依赖于在预训练阶段获得的知识。

  • 用例:根据给定示例或提示,快速高效地生成文本或其他输出。适用于需要快速适应而无需重新训练整个模型的场景。

3.2. 多示例(使用大型上下文窗口)

  • 成熟度:中级

  • 相对成本:中等

  • 所需数据大小:最少至中等(少数示例至多数示例,具有广泛背景)

  • 描述:这种方法通过利用非常大的上下文窗口构建在标准的上下文学习之上。它使模型能够处理来自提示和周围文本的大量信息。这不仅提高了对复杂任务的理解,还允许进行多示例上下文学习,其中模型可以从上下文窗口中提供的多个示例中学习。

  • 用例:适用于需要深入的上下文理解的任务,例如:

  • 长篇文本生成

  • 复杂问题回答

  • 文档摘要

  • 多步推理任务

  • 在增加上下文窗口中提供的示例数量时,“DeepMind”对“多示例上下文学习”的研究显示出显著的性能提升。这突显了利用大型上下文窗口的潜力,不仅可以提高理解能力,还可以使模型有效地学习多个演示。

3.3. 小语言模型的预训练

  • 成熟度水平:中级

  • 相对成本:中等

  • 所需数据规模:中等到大(取决于模型大小和所需性能)

  • 描述:这涉及从头开始训练较小的语言模型,或者在有限数量的数据上进行训练。由于计算约束或领域特定要求,这些模型通常用于特定应用,大型通用模型不切实际 [3]。

  • 用例:适用于具有特定词汇或有限计算资源的专业领域的任务。还可以用作进一步微调或适应的基础。

3.4. 适配器调优

  • 成熟度水平:中级

  • 相对成本:低至中等

  • 所需数据规模:小到中等(任务特定数据)

  • 描述:该技术将小型可训练适配器模块引入到预训练语言模型中。这些模块专门设计用于在新任务上微调,同时保持大部分原始模型参数冻结。这导致高效的任务特定适应,计算开销最小 [4]。

  • 用例:适用于将大型模型调整到具体任务的情况下。保持了原始模型的效率和知识,同时可以实现快速而有针对性的微调。

3.5. 低秩适应(LoRA)

  • 成熟度水平:中级至高级

  • 相对成本:中等

  • 所需数据规模:小到中等(任务特定数据)

  • 描述:LoRA通过调整权重矩阵的低秩逼近来微调模型。这会显著减少可训练参数的数量,使其比完全微调更高效 [5]。

  • 用例:适用于各种任务,包括自然语言处理和计算机视觉,在这些任务中,您需要调整一个大型模型到一个特定任务,而无需进行训练所有参数的全部计算成本。

3.6. 其他参数高效微调方法

  • 熟练程度:中级至高级

  • 相对成本:中等

  • 所需数据大小:小到中等(特定任务数据)

  • 描述:此类别包括几种技术,如前缀微调、提示微调和bitfit。它们的共同目标是通过仅调整模型的一小部分参数或输入来对模型进行微调,从而显著减少计算负担【6】。

  • 用例:适用于快速适应新任务或在计算资源有限的情况下。这些方法在效率和调整模型行为能力之间取得平衡。

3.7. 领域特定预训练

  • 熟练程度:高级

  • 相对成本:高

  • 所需数据大小:大(特定领域语料库)

  • 描述:这涉及在大量特定领域文本语料库上对模型进行预训练(例如,法律、医学或金融)。这有助于模型捕捉该领域独特的细微差别、词汇和知识结构【7】。

  • 用例:在专业领域非常有价值,通用模型可能缺乏必要的领域专业知识。可用作在该领域内进一步微调或适应的起点。

3.8. 监督微调

  • 熟练程度:高级

  • 相对成本:高

  • 所需数据大小:大(标记的特定任务数据)

  • 描述:这是微调的经典方法,其中整个模型在特定任务的标记数据集上进行训练。所有模型参数都将被更新以优化其在该任务上的性能【8】。

  • 用例:非常适用于具有充足标记数据的任务,如文本分类、情感分析、命名实体识别和问答。

3.9. 完全微调

  • 熟练程度:高级

  • 相对成本:非常高

  • 所需数据大小:大到非常大(标记的特定任务数据)

  • 描述:这种方法是微调的最全面形式,即在新的特定任务数据集上训练时调整预训练模型的所有参数【8】。

  • 用例:通常用于关键特定任务表现至关重要、且您可以获得重要计算资源和大型、高质量数据集的情况。

3.10. 指令微调

  • 成熟度水平:高级

  • 相对成本:高至非常高

  • 所需数据量:大(多样化、基于指令的数据集)

  • 描述:该方法涉及对模型进行微调,使其能够遵循各种指令并完成各种任务。该模型在包含指令及其相应期望输出的多样化数据集上进行训练 [9]。

  • 用例:增强模型理解和执行复杂指令的能力,使其适用于通用 AI 助手、聊天机器人和其他需要灵活执行任务的应用程序。

3.11. 带人类反馈的强化学习(RLHF)

  • 成熟度水平:前沿

  • 相对成本:非常高

  • 所需数据量:可变,但通常为大(人类反馈数据)

  • 描述:RLHF 将强化学习技术与来自人类用户的反馈结合起来。该模型通过获得基于其行为和所接收的反馈的奖励或惩罚来学习,旨在根据人类偏好优化其行为 [10]。

  • 用例:适用于人类偏好至关重要的场景,如会话代理、推荐系统和其他直接与用户交互的应用程序。

3.12. 直接偏好优化(DPO)

  • 成熟度水平:实验性

  • 相对成本:非常高

  • 所需数据量:可变(用户偏好数据)

  • 描述:DPO 专注于根据用户反馈和偏好直接优化模型。这通常涉及诸如梯度下降之类的技术,以使模型参数与观察到的用户偏好保持一致 [10]。

  • 用例:特别适用于用户满意度至关重要的应用程序,并且可以直接测量和优化偏好。示例包括个性化内容推荐系统和用户界面设计。

3.13. 多任务微调

  • 成熟度水平:高级

  • 相对成本:高至非常高

  • 所需数据量:大(多个任务的标记数据)

  • 描述:在多任务微调中,模型同时在多个相关任务上进行训练。这使模型能够利用跨任务的共享知识和表示,潜在地提高性能和泛化能力 [11]。

  • 用例:在需要在各种任务上表现良好的模型中有益,例如多领域客户服务机器人或需要理解语言各个方面的模型(例如情感分析、问答和文本摘要)。

3.14. 元学习(学会学习)

  • 成熟等级: 尖端

  • 相对成本: 非常高

  • 所需数据规模: 可变,通常很大(元训练数据)

  • 描述:元学习侧重于训练模型,使其能够快速适应新任务,且数据量极少。它涉及在训练阶段对模型进行各种任务的训练,使其学会如何高效地学习[12]。

  • 用例:在需要模型迅速适应新任务或领域的情况下尤为重要,一般情况下只有有限的样本,比如少样本学习场景或个性化学习系统。

3.15. 主动学习

  • 成熟等级: 高级

  • 相对成本: 高到非常高

  • 所需数据规模: 可变,通常为迭代(最初较小,随着模型查询更多数据而增长)

  • 描述:主动学习涉及模型积极选择最具信息量的数据点进行标记,从而优化微调过程[13]。

  • 用例:在数据标记成本高或耗时的情况下非常有价值。通过专注于最相关的示例,主动学习可以显著降低进行有效微调所需的标记数据量。

3.16. 知识蒸馏

  • 成熟等级: 中级到高级

  • 相对成本: 中等到高

  • 所需数据规模: 中等到大

  • 描述:将大型预训练教师模型的知识转移到更小、更高效的学生模型中[14]。

  • 用例:适用于在资源受限设备上部署模型,同时保持性能,如移动设备或边缘设备。

  • 这些方法代表了复杂性和资源需求的一大步提升,从基本的上下文调整到涉及人类反馈和广泛参数调整的复杂技术。选择方法取决于任务的具体要求、可用资源和期望的性能结果。

第4级:通过搜索和引用来印证模型的输出

除了模型的微调之外,此级别包括对 GenAI 生成的内容进行基准确定和评估。这意味着确保生成的内容在事实准确性、相关性和符合伦理考虑方面保持一致。

在 GenAI 成熟度模型的第4级,能力的组合侧重于通过强大的基准确定和评估流程来确保生成输出的质量和可靠性,通过内部企业搜索和利用 Vertex AI 基准确定服务进行外部类似于 Google 的搜索增强。

基准确定和评估:从内部和外部来源检索到的信息都经过了彻底的基准确定和评估过程。这包括验证事实的准确性、识别潜在偏见,并评估信息与生成输出的相关性。Vertex AI 基准确定服务在其中发挥了关键作用,为所使用的信息提供引用和参考,为生成的内容增添了可信度和透明度。

后 RAG 完善:在基准确定和评估过程之后,LLM 可以根据收到的反馈对生成的输出进行完善。这个完善的过程确保最终的输出不仅准确和相关,而且也得到了可信来源的充分支持。

模型服务:最后,经过完善和验证的模型将提供给用户或集成到应用程序中,为用户提供可靠和信息丰富的响应,这些响应根植于经过验证的信息之中。

内部企业搜索和与 Google Vertex AI 基准确定的外部搜索如何帮助找到引用和参考资料

内部企业搜索帮助快速识别组织自身知识库中的相关文件、数据和信息。这为将生成的输出基于公司特定知识和专业知识进行基准确定提供了宝贵的起始点。

外部类似于 Google 的搜索,例如 Vertex AI 基准确定服务,通过访问大量外部来源扩大了信息检索范围。这确保生成的输出不仅局限于组织内部知识,还融入了来自更广泛领域的最新信息和见解。

当将这两种搜索能力结合起来时,GenAI 系统可以从内部和外部来源查找引用和参考资料,增强了生成输出的可信度和可靠性。这种后 RAG 基准确定和评估过程确保最终输出不仅具有信息量,而且值得信赖和透明。

第5级:基于智能体的系统

这一高级级别介绍了多Agent系统,其中多个GenAI模型在中央大语言模型(LLM)的管辖下协作工作。这使得能够完成需要协调和整合不同能力的复杂任务。此外,强调观察性(监控和了解模型行为)和LLMOps(对GenAI模型生命周期进行运营化)。

在GenAI成熟度模型的第5级别,几个关键能力汇聚在一起,形成一个复杂系统,为向基于代理和多Agent系统的演化奠定基础。

模型选择、提示工程和检索:流程从根据具体任务选择合适的LLM模型开始,并利用专有数据进行微调。有效的提示[重新-]工程指导模型的行为,信息检索机制从各种来源提取相关信息,丰富LLM的知识库。您可以在提示工程中使用其他复杂技术,如上下文学习,思维链,以清晰步骤和类似XML的结构格式化,或者您可以在复杂度上再进一步,并使用思维大纲,思维树等结合ReAct框架,评估LLM的结果并推理出观察到的输出,然后重新生成最终采取行动。因此,第5级复杂度不仅体现在LLMOps和基于Agent的架构的使用上,还可以在高级提示工程技术方面具有更深层次的复杂性。

通过LLM进行协同:在第5级别的核心创新/新增功能之一是引入中央LLM作为协调者。该LLM充当指挥,协调其他模型或组件的操作。它分配任务,管理通信,并整合来自不同模型的输出,创建一个协同工作流程。这是向基于代理系统迈出的初始步骤,其中每个单独的模型都可以被视为具有专门角色的代理。

基础和评估:继续自第4级别,基础持续使用以确保生成输出的质量和可靠性,采用基础机制。这些机制根据可靠来源验证信息,并评估响应潜在影响。评估过程监控系统的性能,为持续改进提供反馈。

评估、观察性和LLMOps:对GenAI参考架构的每个组件引入正式和端到端的观察性和评估机制是第5级的一个关键元素。

对系统性能的持续评估和监控对于LLM生成的内容以及架构的各个组件至关重要;提示,RAG输出,调整模型漂移或倾斜,基础输出等。观察性洞察LLM的行为,使得能够进行主动调整。LLMOps实践简化了整个GenAI基础设施的部署、管理和监控。

基于代理与多代理系统

让我们区分一下这两个概念。

基于代理的系统:涉及一个作为代理的单个LLM模型,执行任务,做出决策并与环境互动。LLM可以被视为具有各种能力的单体实体。

多代理系统:通过引入多个专门的LLM从基于代理的系统发展而来。每个LLM充当具有特定角色或专业知识的独立代理。这些代理协作,交流并协调它们的动作,以解决单个代理无法高效处理的复杂问题。

第5级作为迈向多代理系统的跳板,通过建立协调多个模型的基本基础设施。它使组织能够尝试向不同的模型分配特定任务并评估它们的表现。这种实验为更复杂的多代理系统的开发铺平道路,其中具有互补技能的多种模型可以共同努力实现共同目标。

第5级为从单体LLM模型向一组专门代理的网络的范式转变铺平了道路,每个代理都为解决日益复杂的挑战贡献其独特优势。这种过渡有望在GenAI领域中解锁新水平的效率,适应性和创新。

级别6:多智体乘数

成熟的顶峰涉及使用高级技术,如“思维树”或“思维图”,以增强GenAI模型的推理和规划能力。这些方法促进了更复杂的决策制定和问题解决。在这个层面上,LLM编排和控制其他LLM,表明了一个高度自主和能力强大的GenAI生态系统。该框架强调负责任的AI,展示了对AI技术的道德和公平使用的承诺。

第6级代表了相当高的GenAI成熟度,无缝地集成先进技术和框架,以实现高价值能力。

利用“思维树”/“思维图”进行增强推理:第6级利用“思维树”(ToT)或“思维图”(GoT)框架的强大威力。这些使LLM能够将复杂问题分解为较小可控的步骤,系统地探索潜在解决方案并做出明智的决策。这显著提升了GenAI系统的推理、规划和解决问题能力。

使用DSPY和ReAct进行主动信息收集:第6级整合了DSPY(演示-搜索-预测)和ReAct(思考和行动)等技术方法。DSPY指导LLM决定何时搜索外部信息,预测相关查询,并将检索到的信息整合到其推理过程中。ReAct使LLM能够积极与其环境互动,根据所收集的信息做出决策和采取行动。

信息检索和整合:第6级利用先进的信息检索技术从各种来源获取相关数据,包括内部知识库和外部数据库。然后将检索到的信息无缝整合到LLM的推理过程中,为其提供最新、与上下文相关的知识。

使用自定义数据进行模型调优:LLM经过专有或领域特定数据的优化调整,以提高其性能并根据特定任务和领域加以定制。这确保模型生成准确、相关和上下文适当的响应。

多智能体编排和控制:第6级部署了一个多智能体系统,多个LLM在中央LLM的编排和控制下协同工作。这使系统能够处理需要协调、专业化和不同专业知识的复杂任务。

基础和评估:采用严格的基础和评估机制,确保生成的输出在事实准确、相关,并符合道德和安全准则。这涉及根据可靠来源验证信息并评估响应的潜在影响。

评估、可观察性和LLMOps:第6级强调对GenAI系统性能的持续评估和监控,为其行为提供洞察,并实现积极的调整。实施了强大的LLMOps实践,以简化整个GenAI基础设施的部署、管理和监控。

第6级代表了先进技术和最佳实践的和谐融合,使GenAI系统能够实现无与伦比的推理、决策和问题解决能力水平。这种全面的方法确保系统不仅强大,而且可靠、符合道德,可适应不断变化的需求。

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

LeetCode 热题100(十五)【动态规划】(3)

15.7最长递增子序列(中等) 题目描述:leetcode链接 300. 最长递增子序列 给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。 子序列 是由数组派生而来的序列,删除(或不删除)数组中的元…

springboot如何集成工作流审批流,流程设计器集成,业务表单和工作流绑定,详细步骤和实际案例参考(源码)

前言 activiti工作流引擎项目,企业erp、oa、hr、crm等企事业办公系统轻松落地,一套完整并且实际运用在多套项目中的案例,满足日常业务流程审批需求。 一、项目形式 springbootvueactiviti集成了activiti在线编辑器,流行的前后端…

02_Node.js模块化

02_Node.js模块化 知识点自测 以下代码运行的结果是多少&#xff1f; const arr [10, 20, 30] const result arr.map(val > val 1).reduce((sum, val) > sum val, 0) console.log(result) A&#xff1a;60 B&#xff1a;63 <details><summary>答案</…

vulnhub kioptirx1.2 超详细wp

探测 nmap --min-rate 10000 -p- 192.168.128.134 最小速率10000 nmap -sT -sV -sC -O 192.168.128.134 web打点 无弱口令 暴露cms寻找exp searchsploit LotusCMS -m 16982 [输入id号和参数m可以直接把东西复制到当前目录] 查看txt里面发现 都是xss没有rce github搜索到一个…

vulnhub靶场之【grotesque】三

前言 靶机&#xff1a;grotesque-3 192.168.1.44 攻击 &#xff1a;kali 192.168.1.16 都是虚拟机环境&#xff0c;桥接模式 主机发现 使用arp-scan -l或者netdiscover -r 192.168.1.1/24搜索 信息收集 使用nmap扫描 防止有遗漏&#xff0c;再扫描全端口 网站信息收集 …

大规模模型部署、推理的工具:Xinference

有没有 Xinference之前&#xff0c;如果想要部署应用一个开源模型&#xff0c;可能会面临以下一些情况和挑战&#xff1a; 自行开发推理框架&#xff1a; 需要投入大量的时间和精力来构建一个可靠且高效的推理框架&#xff0c;包括处理模型加载、资源管理、请求调度等复杂的任务…

C语言选择法排序

C语言编程&#xff0c;用选择法对数组中4个整数按由大到小排序 1、代码如下&#xff1a; #include<stdio.h> #include<math.h> #include<string.h>int main() {void sort(int array[],int n);printf("测试开始\n");int nums[] {2,3,4,1};sort(n…

SpringBoot的validation参数校验

文章目录 前言一、引入validation 依赖二、validation中的注解说明 &#xff08;1&#xff09;Validated&#xff08;2&#xff09;Valid&#xff08;3&#xff09;NotNull&#xff08;4&#xff09;NotBlank&#xff08;5&#xff09;NotEmpty&#xff08;6&#xff09;Patte…

Go的Gin比java的Springboot更加的开箱即用?

前言 隔壁组的云计算零零后女同事&#xff0c;后文简称 云女士 &#xff0c;非说 Go 的 Gin 框架比 Springboot 更加的开箱即用&#xff0c;我心想在 Java 里面 Springboot 已经打遍天下无敌手&#xff0c;这份底蕴岂是 Gin 能比。 但是云女士突出一个执拗&#xff0c;非我要…

docker学习笔记(四)--DockerFile

文章目录 一、什么是Dockerfile二、docker build命令三、dockerfile指令3.1 FROM3.2 ENV3.3 WORKDIR3.4 RUN3.5 CMD3.6 ENTRYPOINT3.7 EXPOSE3.8 ARG3.9 ADD3.10 COPY3.11 VOLUME 四、dockerfile示例 一、什么是Dockerfile Dockerfile 是用于构建 Docker 镜像的脚本文件&#…

撰写技术文档的关键步骤和核心要点

编写项目的技术文档是一个重要且细致的任务&#xff0c;它不仅有助于项目的当前开发团队理解系统的结构和工作原理&#xff0c;还为未来的维护和扩展提供了宝贵的参考资料。以下是撰写技术文档时应遵循的几个关键步骤和组成部分&#xff1a; 1. 概述 项目简介&#xff1a;简要…

Ant-Design-Vue 全屏下拉日期框无法显示,能显示后小屏又位置错乱

问题1&#xff1a;在全屏后 日期选择器的下拉框无法显示。 解决&#xff1a;在Ant-Design-Vue的文档中&#xff0c;很多含下拉框的组件都有一个属性 getPopupContainer可以用来指定弹出层的挂载节点。 在该组件上加上 getPopupContainer 属性,给挂载到最外层盒子上。 <temp…

【前端学习路线】(超详细版本)

先附上学习路线图&#xff1a;前端学习路线 第一阶段&#xff1a;前端入门&#xff08;htmlcss&#xff09; 前端最基本的知识&#xff0c;需要先将这些内容融汇贯通&#xff0c;学习后面内容才会不吃力。学习完可以做几个静态页练习一下。 推荐视频学习链接&#xff1a; 黑马程…

Vue生成类似于打卡页面

数据表格 <el-table :data"tableData" border height"calc(100vh - 240px)" :cell-style"cellFun"><el-table-column label"姓名" show-overflow-tooltip prop"name" align"center"/><el-table-co…

JVM学习《垃圾回收算法和垃圾回收器》

目录 1.垃圾回收算法 1.1 标记-清除算法 1.2 复制算法 1.3 标记-整理算法 1.4 分代收集算法 2.垃圾回收器 2.1 熟悉一下垃圾回收的一些名词 2.2 垃圾回收器有哪些&#xff1f; 2.3 Serial收集器 2.4 Parallel Scavenge收集器 2.5 ParNew收集器 2.6 CMS收集器 1.垃圾…

波特图方法

在电路设计中&#xff0c;波特图为最常用的稳定性余量判断方法&#xff0c;波特图的根源是如何来的&#xff0c;却鲜有人知。 本章节串联了奈奎斯特和波特图的渊源&#xff0c;给出了其对应关系和波特图相应的稳定性余量。 理论贯通&#xff0c;不在于精确绘…

【Java】2、集合框架 JCF

目录 CollectionListArrayList扩容机制System.arraycopy() 和 Arrays.copyOf()方法 LinkedList Set MapHashMap *重点&#xff1a; 底层机制&#xff08;源码&#xff09;应用场景 好处&#xff1a; 数组&#xff08;长度不可改&#xff0c;同一类型&#xff0c;增删不便&#…

P5461 赦免战俘

P5461 赦免战俘 #include <iostream> using namespace std; #include <algorithm> #include <vector> #include <cmath> void pardon(auto & matrix,int x,int y,int size){if(size 1) return;int half size / 2;for(int i x;i < x half;i …

GoTrackIt应用指南:共享单车时空轨迹可视化

GoTrackIt平台集成了对 Kepler.gl 可视化工具的部分功能进行了封装&#xff0c;通过引入 KeplerVis 类&#xff0c;显著简化了地理空间数据分析与展示的过程。利用这一类&#xff0c;开发者和数据分析师能够在网页端快速实现复杂地理数据的动态可视化&#xff0c;而无需深入掌握…

LeetCode 力扣 热题 100道(十五)搜索插入位置(C++)

给定一个排序数组和一个目标值&#xff0c;在数组中找到目标值&#xff0c;并返回其索引。如果目标值不存在于数组中&#xff0c;返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 代码如下所示&#xff1a; class Solution { public:int searchIns…