OpenAI全新发布o1模型:开启 AGI 的新时代

devtools/2024/9/19 11:20:39/ 标签: agi, chatgpt, 人工智能

OpenAI全新发布o1模型:开启 AGI 的新时代


欢迎关注【youcans的AGI学习笔记】原创作品


2024年9月13日,OpenAI新模型o1 正式发布。o1 在测试化学、物理和生物学专业知识的基准 GPQA-diamond 上,全面超过了人类博士专家。

OpenAI 宣称:“通用人工智能(AGI)之路,已经没有任何阻碍。”
这标志着,AI行业正式进入了一个新时代。更准确的说,是新纪元。


在这里插入图片描述


OpenAI全新发布o1模型:开启 AGI 的新时代

  • OpenAI全新发布o1模型:开启 AGI 的新时代
    • 0. 简介
    • 1. OpenAI o1 模型介绍
    • 2. 基于“思维链”的复杂推理
    • 4. 结论


0. 简介

OpenAI o1 就是之前传说的“Strawberry”,正式发布的命名为 OpenAI o1。版本号重置为 1,意味着新的起点。

OpenAI 表示:

  • 刚刚推出 OpenAI o1-preview 模型,代表着 OpenAI 下一代大模型 Orion(猎户座)的第一代版本。
  • 对于复杂推理任务来说,这是一个重要的进展,代表了人工智能的新水平。

o1系列包含三个版本:OpenAI o1 正式版、OpenAI o1-preview 预览版和OpenAI o1-mini 迷你版,分阶段向付费用户、免费用户和开发者推出。

  • OpenAI o1:高级推理模型,暂不对外开放。
  • OpenAI o1-preview:这个版本更注重深度推理处理,每周可以使用30次。
  • OpenAI o1-mini:这个版本更高效、划算,适用于编码任务,每周可以使用50次。

开发者和研究人员现在可以通过ChatGPT和应用程序编程接口访问这些模型。

ChatGPT Pro会员已经上线,售价200美元/月。


1. OpenAI o1 模型介绍

在这里插入图片描述

OpenAI o1 是一系列用于解决难题的新推理模型。

我们开发了一系列新的人工智能模型,旨在在做出反应之前花更多的时间思考。它们可以推理复杂的任务,解决比以前的科学、编码和数学模型更难的问题。

今天,我们将在ChatGPT和我们的API中发布本系列的第一个。这是一个预览版,我们希望定期更新和改进。除了这个版本,我们还包括目前正在开发的下一个更新的评估版。


OpenAI o1 如何工作

我们训练这些模型在问题做出反应之前花更多的时间思考问题,就像一个人一样。通过培训,他们学会了完善自己的思维过程,尝试不同的策略,并认识到自己的错误。

在我们的测试中,下一次模型更新在物理、化学和生物学的挑战性基准任务上的表现与博士生相似。我们还发现它在数学和编码方面表现出色。在国际数学奥林匹克竞赛(IMO)的资格考试中,GPT-4o仅正确解决了13%的问题,而推理模型的得分为83%。他们的编码能力在比赛中得到了评估,在Codeforce比赛中达到了第89百分位。您可以在我们的技术研究帖子中相关信息。

作为早期的模型,它还没有很多让ChatGPT有用的功能,比如浏览网页获取信息、上传文件和图像。对于许多常见情况,GPT-4o在短期内将更有能力。

但对于复杂的推理任务来说,这是一个重大的进步,代表了人工智能能力的新水平。鉴于此,我们将计数器重置为1,并将此系列命名为OpenAI o1。


OpenAI o1 的安全性
作为开发这些新模型的一部分,我们提出了一种新的安全培训方法,利用他们的推理能力,使他们遵守安全和对齐指南。通过能够在上下文中推理我们的安全规则,它可以更有效地应用它们。

我们衡量安全性的一种方法是测试如果用户试图绕过我们的模型(称为“越狱”),我们的模型在多大程度上继续遵循其安全规则。在我们最难的越狱测试中,GPT-4o得分为22(0-100分),而o1预览版得分为84。您可以在系统卡和我们的研究帖子中了解更多信息。

为了与这些模型的新功能相匹配,我们加强了安全工作、内部治理和联邦政府合作。这包括使用我们的准备框架(在新窗口中打开)进行严格的测试和评估,一流的红队合作,以及包括我们的安全与安保委员会在内的董事会级审查流程。

为了推进我们对人工智能安全的承诺,我们最近与美国和英国人工智能安全研究所正式签订了协议。我们已经开始实施这些协议,包括允许研究所尽早获得该模型的研究版本。这是我们合作的重要第一步,有助于在未来模型公开发布之前和之后建立研究、评估和测试流程。


OpenAI o1 适合哪些用户

如果你正在处理科学、编码、数学和类似领域的复杂问题,这些增强的推理能力可能特别有用。例如,o1可以被医疗保健研究人员用来注释细胞测序数据,被物理学家用来生成量子光学所需的复杂数学公式,被所有领域的开发人员用来构建和执行多步骤工作流程。


OpenAI o1-mini 迷你版

o1系列擅长准确生成和调试复杂代码。为了为开发人员提供更有效的解决方案,我们还发布了OpenAI o1-mini,这是一种更快、更便宜的推理模型,在编码方面特别有效。作为一个较小的模型,o1 mini比o1预览版便宜80%,使其成为需要推理但不需要广泛知识的应用程序的强大、经济高效的模型。

我们正在发布OpenAI o1 mini,这是一个具有成本效益的推理模型。o1-mini擅长STEM,尤其是数学和编码——在AIME和Codeforce等评估基准上几乎与OpenAI o1的性能相当。我们预计o1-mini将是一种更快、更具成本效益的模型,适用于需要在没有广泛知识的情况下进行推理的应用程序。
今天,我们将向API第5层用户推出o1-mini(在新窗口中打开),其成本比OpenAI o1-preview低80%。ChatGPT Plus、团队、企业和Edu用户可以使用o1 mini作为o1预览的替代品,具有更高的速率限制和更低的延迟(请参阅模型速度)。

针对STEM推理进行了优化

像o1这样的大型语言模型是在庞大的文本数据集上预先训练的。虽然这些高容量模型具有广泛的世界知识,但对于现实世界的应用来说,它们可能既昂贵又缓慢。相比之下,o1-mini是一个较小的模型,在预训练期间针对STEM推理进行了优化。在使用与o1相同的高计算强化学习(RL)管道进行训练后,o1-mini在许多有用的推理任务上取得了相当的性能,同时具有更高的成本效益。
当在需要智能和推理的基准上进行评估时,o1-mini与o1预览和o1相比表现良好。然而,o1-mini在需要非STEM事实知识的任务上表现较差(见局限性)。

在这里插入图片描述

数学:在高中AIME数学竞赛中,o1 mini(70.0%)与o1(74.4%)具有竞争力,同时价格明显更低,表现优于o1预览版(44.6%)。o1mini的分数(约11/15个问题)使其跻身美国高中生前500名左右。
编码:在Codeforces竞赛网站上,o1-mini达到了1650 Elo,再次与o1(1673)竞争,并高于o1预览版(1258)。这个Elo分数使该模型在Codeforces平台上竞争的程序员中约占第86百分位。o1-mini在HumanEval编码基准测试和高中级别的网络安全捕获标志挑战(CTF)中也表现良好。
STEM:在一些需要推理的学术基准上,如GPQA(科学)和MATH-500,o1-mini的表现优于GPT-4o。o1-mini在MMLU等任务上的表现不如GPT-4o,并且由于缺乏广泛的世界知识,在GPQA上落后于o1预览。
人类偏好评估:我们让人类评分员使用与o1预览与GPT-4o比较相同的方法,在各个领域对o1-mini和GPT-4o进行具有挑战性的开放式提示比较。与o1预览类似,o1-mini在推理量大的领域比GPT-4o更受欢迎,但在以语言为中心的领域不比GPT-40o更受青睐。

型号速度
作为一个具体的例子,我们比较了GPT-4o、o1-mini和o1预览对单词推理问题的回答。虽然GPT-4o没有正确回答,但o1 mini和o1预览版都正确回答了,o1迷你的回答速度快了3-5倍。

安全
o1-mini使用与o1预览相同的对齐和安全技术进行训练。与GPT-4o相比,该模型在StrongREJECT数据集的内部版本上的越狱鲁棒性提高了59%。在部署之前,我们使用与o1预览相同的准备、外部红队和安全评估方法,仔细评估了o1-mini的安全风险。我们将在随附的系统卡中公布这些评估的详细结果。

限制和下一步是什么
由于o1-mini在STEM推理能力方面的专业化,o1-mini对日期、传记和琐事等非STEM主题的事实知识与GPT-4o-mini等小型LLM相当。我们将在未来的版本中改进这些局限性,并尝试将该模型扩展到STEM以外的其他模式和专业。


如何使用 OpenAI o1

从今天开始,ChatGPT Plus和团队用户将能够访问ChatGPT中的o1模型。o1预览和o1mini都可以在模型选择器中手动选择,启动时,o1预览的每周速率限制为30条消息,o1mini为50条消息。我们正在努力提高这些速率,并使ChatGPT能够为给定的提示自动选择正确的模型。
ChatGPT Enterprise和Edu用户将从下周开始访问这两种模型。

符合API使用层5(在一个新窗口中打开)的开发人员今天可以在API中开始两个模型的原型设计,速率限制为20 RPM。在进一步测试后,我们正在努力提高这些限制。这些模型的API目前不包括函数调用、流、对系统消息的支持和其他功能。要开始,请查看【API文档】(http://platform.openai.com/docs/guides/reasoning)。

我们还计划为所有ChatGPT Free用户提供o1 mini访问权限。

在这里插入图片描述


敬请期待

这是ChatGPT和API中这些推理模型的早期预览。除了模型更新,我们还希望添加浏览、文件和图像上传以及其他功能,使其对每个人都更有用。

除了新的OpenAI o1系列之外,我们还计划继续开发和发布GPT系列中的模型。


2. 基于“思维链”的复杂推理

我们正在引入OpenAI o1,这是一种新的大型语言模型,通过强化学习进行训练,以执行复杂的推理。o1在回答之前会思考——它可以在回应用户之前产生一个漫长的内部思维链。

OpenAI o1在竞争性编程问题(Codeforce)上排名第89百分位,在美国数学奥林匹克竞赛(AIME)资格赛中跻身美国前500名学生之列,在物理、生物和化学问题(GPQA)的基准上超过了人类博士水平的准确率。虽然使这个新模型与当前模型一样易于使用所需的工作仍在进行中,但我们正在发布这个模型的早期版本OpenAI o1-preview,以便在ChatGPT中立即使用,并提供给值得信赖的API用户。

我们的大规模强化学习算法教导模型如何在高度数据高效的训练过程中使用其思维链进行高效思考。我们发现,o1的性能随着更多的强化学习(训练时间计算)和更多的思考时间(测试时间计算)而持续提高。扩展这种方法的限制与LLM预培训的限制有很大不同,我们正在继续研究它们。


OpenAI o1 测评结果

为了强调GPT-4o在推理方面的改进,我们在一组不同的人类考试和机器学习基准上测试了我们的模型。我们发现,在绝大多数推理繁重的任务中,o1的表现明显优于GPT-4o。除非另有说明,否则我们在最大测试时间计算设置上评估o1。

o1在具有挑战性的推理基准上大大优于GPT-4o。如下图所示,实心条形图pass@1准确性和阴影区域显示了64个样本的多数投票(共识)的性能。
在这里插入图片描述


o1在广泛的基准测试中比GPT-4o有所改进,包括54/57 MMLU子类别。如下图所示,图中显示了七个用于说明。
在这里插入图片描述

在许多推理繁重的基准测试中,o1的性能可与人类专家相媲美。最近的先进模型在MATH和GSM8K上表现良好,以至于这些基准在区分模型方面不再有效。我们评估了AIME的数学成绩,这是一项旨在挑战美国最聪明的高中数学学生的考试。在2024年的AIME考试中,GPT-4o平均只解决了12%(1.8/15)的问题。当使用学习到的评分函数对1000个样本进行重新排名时,o1平均为74%(11.1/15),每个问题有一个样本,83%(12.5/15)在64个样本之间达成共识,93%(13.9/15)。o1 的得分 13.9,跻身全国前500名学生之列,并超过了美国数学奥林匹克竞赛的门槛。

我们还在GPQA diamond上评估了o1,这是一个困难的智力基准,用于测试化学、物理和生物学方面的专业知识。为了将模型与人类进行比较,我们招募了具有博士学位的专家来回答GPQA钻石问题。我们发现o1超越了那些人类专家的表现,成为第一个在这个基准上做到这一点的模型。这些结果并不意味着o1在所有方面都比博士更有能力,只是该模型更擅长解决博士应该解决的一些问题。在其他几个机器学习基准测试中,o1比最先进的有所改进。由于启用了视觉感知能力,o1在MMMU上的得分为78.2%,使其成为第一个与人类专家竞争的模型。在57个MMLU子类别中,它在54个方面的表现也优于GPT-40。


思维链

思维链是一种帮助AI模型进行推理的技术。它通过让模型在回答复杂问题时,逐步解释每一步的推理过程,而不是直接给出答案。因此模型在回答问题时就像是人类在解题时那样,先思考每一步的逻辑,再逐步推导出最终的结果。

与人类在回答难题之前长时间思考的方式类似,o1在试图解决问题时也会使用一连串的思维。通过强化学习,o1学会磨练其思维链并完善其使用的策略。它学会了识别和纠正错误。它学会了把棘手的步骤分解成更简单的步骤。它学会了在当前方法不起作用时尝试不同的方法。这个过程极大地提高了模型的推理能力。为了说明这一飞跃,我们展示了o1预览版对下面几个难题的思路。

案例1:解码
用户输入如下:

oyfjdnisdr rtqwainr acxz mynzbhhx -> Think step by step
使用上面的示例进行解码:
oyekaijzdf aaptcg suaokybhai ouow aqht mynznvaatzacdfoulxxz

GPT-4o 的输出如下:

让我们根据这个例子一步一步地分解它:
1.示例如下:
•输入:oyfjdnisdr rtqwainr acxz mynzbhhx
•输出:逐步思考
通过检查单词:
•该模式涉及选择特定字母或对其进行转换。
2.现在,让我们解码新短语:
•输入:oyekaijzdf aaptcg suaokybhai ouow aq mynznvaat zacdfulxz
逐步解码过程:
识别可能的单词划分。
第一个短语可能遵循与示例相同的结构。看起来输入文本可以根据自然分离或模式分为几组。
一个可能的划分是:
oyekaijzdf
aaptcg
suaokybhai
ouow
aqht
mynznvaatzacdfoulxxz
然而,为了进行有意义的解码,我需要更多关于可能涉及的转换或字母转换的上下文。
您能提供此密码中使用的任何其他解码规则或转换吗?

OpenAI o1-preview 的输出如下:

要使用提供的示例对给定的密文进行解码,我们将使用示例中标识的模式。
密文示例:
纯文本(plainText)
oyfjdnisdr rtqwainr acxz mynzbhhx解码为:
纯文本(plainText)
Think step by step解码方法:
将密文中的字母配对。
将每个字母转换为其在字母表中的数字位置(A=1B=2,…,Z=26)。
将每对数值相加。
计算总和的平均值(除以2)。
将平均值转换回字母(1=a,2=B,…,26=Z)。
将此方法应用于给定的密文:纯文本(plainText)
oyekaijzdf aaptcg suaokybhai ouow aqht mynznvaatzacdfoulxxz将密文成对分解:
1.1个词:“oyekaijzdf”
配对:oy、ek、ai、jz、df
解码字母:
oy → (15+25)/2 = 20T
ek → (5+11)/2 = 8H
ai → (1+9)/2 = 5E
jz → (10+26)/2 = 18R
df → (4+6)/2 = 5E
解码单词: THERE2.2个词:“aaptcg”
配对:aa, pt, cg
解码字母:
aa → (1+1)/2 = 1A
pt → (16+20)/2 = 18R
cg → (3+7)/2 = 5E
解码单词: ARE3.3个词:“suaokybhai”
配对:su, ao, ky, bh, ai
解码字母:
su → (19+21)/2 = 20T
ao → (1+15)/2 = 8H
ky → (11+25)/2 = 18R
bh → (2+8)/2 = 5E
ai → (1+9)/2 = 5E
解码单词: THREE4.4个词:“ouow”
配对:ou, ow
解码字母:
ou → (15+21)/2 = 18R
ow → (15+23)/2 = 19S
解码单词: RS5.5个词:“aqht”
配对:aq, ht
解码字母:
aq → (1+17)/2 = 9I
ht → (8+20)/2 = 14N
解码单词: IN6.6个词: “mynznvaatzacdfoulxxz”
配对:my, nz, nv, aa, tz, ac, df, ou, lx, xz
解码字母:
my → (13+25)/2 = 19S
nz → (14+26)/2 = 20T
nv → (14+22)/2 = 18R
aa → (1+1)/2 = 1A
tz → (20+26)/2 = 23W
ac → (1+3)/2 = 2B
df → (4+6)/2 = 5E
ou → (15+21)/2 = 18R
lx → (12+24)/2 = 18R
xz → (24+26)/2 = 25Y
解码单词:  STRAWBERRY最终解码信息: “mynznvaatzacdfoulxxz”
纯文本(plainText)
THERE ARE THREE R'S IN STRAWBERRY
结果:
THERE ARE THREE RS IN STRAWBERRY

案例2:编码

我们训练了一个模型,该模型在2024年国际信息学奥林匹克竞赛(IOI)中得分213分,排名第49百分位,通过从o1开始初始化和训练来进一步提高编程技能。该模型在与人类参赛者相同的条件下参加了2024年IOI比赛。它有十个小时的时间来解决六个具有挑战性的算法问题,每个问题允许提交50份。

对于每个问题,我们的系统对许多候选提交进行了抽样,并根据测试时间选择策略提交了其中的50个。提交的内容是根据IOI公共测试用例、模型生成的测试用例和学习到的评分函数的性能进行选择的。如果我们随机提交,我们的平均得分只有156分,这表明在竞争限制下,这种策略的价值接近60分。

通过放宽提交约束,我们发现模型性能显著提高。当每个问题允许10000次提交时,即使没有任何测试时间选择策略,该模型也获得了362.14分,高于金牌门槛。

最后,我们模拟了Codeforce主办的竞争性编程竞赛,以展示该模型的编码技能。我们的评估与竞赛规则非常匹配,允许提交10份参赛作品。GPT-4o的Elo评分为808,在人类竞争对手中排名第11位。该型号远远超过GPT-4o和o1,其Elo评级为1807,表现优于93%的竞争对手。

ioi-code


人类偏好评估

除了考试和学术基准之外,我们还评估了人类对o1预览与GPT-4o在广泛领域中具有挑战性的开放式提示的偏好。在这项评估中,向人类培训师展示了对o1预览和GPT-4o提示的匿名回应,并投票选出他们喜欢的回应。在数据分析、编码和数学等推理繁重的类别中,o1预览比gpt-4o更受欢迎。然而,o1预览在某些自然语言任务中并不受欢迎,这表明它并不适合所有用例。


安全性

思维链推理为对齐和安全提供了新的机会。我们发现,将我们的模型行为策略整合到推理模型的思维链中,是强有力地教授人类价值观和原则的有效方法。通过教授模型我们的安全规则以及如何在上下文中对其进行推理,我们发现了推理能力直接有益于模型鲁棒性的证据:o1预览在关键越狱评估和我们评估模型安全拒绝边界的最困难的内部基准上实现了显著提高的性能。

我们认为,使用思维链可以在安全性和一致性方面取得重大进展,因为
(1)它使我们能够以清晰的方式观察模型思维,
(2)关于安全规则的模型推理对分布外的场景更稳健。

为了对我们的改进进行压力测试,我们在部署前根据我们的准备框架(在新窗口中打开)进行了一系列安全测试和红队合作。我们发现,思维链推理有助于我们在评估中提高能力。特别值得注意的是,我们观察到了一些有趣的奖励黑客事件。这些评估的详细结果可以在随附的系统卡中找到。


隐藏的思维链

我们认为,隐藏的思维链为监控模型提供了独特的机会。假设它是忠实和清晰的,隐藏的思维链允许我们“阅读模型的思想”并理解其思维过程。例如,在未来,我们可能希望监控思维链,寻找操纵用户的迹象。然而,为了实现这一点,模型必须能够以不变的形式自由表达其思想,因此我们无法将任何政策合规性或用户偏好训练到思想链上。我们也不想让用户直接看到不一致的思维链。

因此,在权衡了用户体验、竞争优势和追求思维链监控的选择等多个因素后,我们决定不向用户展示原始的思维链。我们承认这一决定有缺点。我们努力通过教模型从答案中的思维链中再现任何有用的想法来部分弥补这一点。对于o1模型系列,我们展示了模型生成的思维链摘要。


4. 结论

o1显著推进了人工智能推理的最新进展。我们计划在继续迭代的同时发布此模型的改进版本。我们预计这些新的推理能力将提高我们将模型与人类价值观和原则相一致的能力。我们相信o1及其继任者将为人工智能在科学、编码、数学和相关领域开辟许多新的用例。我们很高兴用户和API开发人员能够发现它如何改善他们的日常工作。

在这里插入图片描述


“AGI 之路从此畅通无阻。”

o1 不仅是一个ChatGPT,而是我们通向 AGI 时代的基石。

开启新时代,谱写新篇章。通用人工智能的新纪元,就此到来。


**
版权声明:**
欢迎关注【youcans的AGI学习笔记】,转发请注明原文链接:OpenAI全新发布o1模型:开启 AGI 的新时代
Copyright 2024 youcans, XIDIAN
Crated:2024-09-13



http://www.ppmy.cn/devtools/113356.html

相关文章

HarmonyOS NEXT 封装实现好用的网络模块(基于最新5.0的API12)

在 HarmonyOS-NEXT 开发中,网络请求是应用开发中不可或缺的一部分。为了提高开发效率和代码复用性,我们可以封装一个好用的网络模块组件。本文将介绍如何在 HarmonyOS-NEXT 中封装一个功能强大且易于使用的网络模块组件。 封装目的 网络模块使用的频率最…

计算机操作系统之并行性与并发性笔记

目录 在计算机操作系统中,并行性与并发性是两个既相似又有区别的重要概念 并行性: 并发性: 可以通过多任务处理和资源共享来具体说明 并发性的例子 并行性的例子 总结 在计算机操作系统中,并行性与并发性是两个既相似又有区别…

Vue.js 中的 DOM 更新之后执行某些操作

在Vue.js中&#xff0c;如果你需要在DOM更新之后执行某些操作&#xff0c;可以使用nextTick方法。这个方法会在下次DOM更新循环结束之后执行回调函数&#xff0c;这时候相关的DOM变更已经完成。 以下是一个使用nextTick的例子&#xff1a; <template> <div> <…

车载软件架构 --- SOA设计与应用(中)

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 屏蔽力是信息过载时代一个人的特殊竞争力,任何消耗你的人和事,多看一眼都是你的不对。非必要不费力证明自己,无利益不试图说服别人,是精神上的节…

【计算机网络 - 基础问题】每日 3 题(一)

✍个人博客&#xff1a;Pandaconda-CSDN博客 &#x1f4e3;专栏地址&#xff1a;http://t.csdnimg.cn/fYaBd &#x1f4da;专栏简介&#xff1a;在这个专栏中&#xff0c;我将会分享 C 面试中常见的面试题给大家~ ❤️如果有收获的话&#xff0c;欢迎点赞&#x1f44d;收藏&…

个人电脑可以当服务器用吗?

服务器和普通电脑的主要区别体现在以下几个方面&#xff1a; 1.CPU处理性能 服务器的CPU配置通常是多核的&#xff0c;普通电脑的CPU往往只包含单个核心&#xff0c;因此在数据处理能力上远远不如服务器。 2.安全性能 服务器具备更高的可靠性、安全性、容错能力和安全保护能…

苹果 Vision Pro 曝出严重漏洞,黑客可通过用户眼动输入窃取信息

近日&#xff0c;苹果公司的 Vision Pro 混合现实头戴式设备曝出一个安全漏洞&#xff0c;一旦被黑客成功利用&#xff0c;他们就可以推断出用户在该设备的虚拟键盘上输入的具体数据。 该攻击活动名为 GAZEploit&#xff0c;该漏洞被追踪为 CVE-2024-40865。 佛罗里达大学的学…

Spring面试

一、对Spring的理解 &#xff08;一&#xff09;Spring的发展史 &#xff08;二&#xff09;Spring的体系结构 &#xff08;三&#xff09;Spring相关组件 1.Spring和SpringMVC的关系 2.Spring和SpringBoot的关系 3.Spring和SpringCloud的关系 4.Spring和SpringSecurity的…

系统架构设计师 需求分析篇二

&#x1f4d8; 面向对象分析方法 1. 用例模型 &#x1f4c8; 构建用例模型一般需要经历 4 个阶段&#xff1a; 识别参与者 &#x1f50d;&#xff1a;识别与系统交互的所有事物。合并需求获得用例 &#x1f517;&#xff1a;将需求分配给予其相关的参与者。细化用例描述 &am…

Nuxt Kit 中的页面和路由管理

title: Nuxt Kit 中的页面和路由管理 date: 2024/9/17 updated: 2024/9/17 author: cmdragon excerpt: 摘要:本文介绍了Nuxt Kit中页面和路由管理的高级功能,包括extendPages自定义页面路由、extendRouteRules定义复杂路由逻辑及addRouteMiddleware注册路由中间件。通过这…

手把手教你:在微信小程序中加载map并实现拖拽添加标记定位

本文将为大家详细介绍如何在微信小程序中加载map组件&#xff0c;并实现拖拽标记定位功能。 实现步骤 1、首先&#xff0c;我们需要在项目的app.json文件中添加map组件的相关配置。如下所示&#xff1a; {"pages": ["pages/index/index"],"permiss…

2024 年最佳 Chrome 验证码扩展,解决 reCAPTCHA 问题

验证码&#xff0c;特别是 reCAPTCHA&#xff0c;已成为在线安全的不可或缺的一部分。虽然它们在区分人类和机器人方面起着至关重要的作用&#xff0c;但它们也可能成为合法用户和从事网络自动化的企业的主要障碍。无论您是试图简化在线体验的个人&#xff0c;还是依赖自动化工…

SpringBoot Kafka发送消息与接收消息实例

前言 Kafka的基本工作原理 我们将消息的发布&#xff08;publish&#xff09;称作 producer(生产者)&#xff0c;将消息的订阅&#xff08;subscribe&#xff09;表述为 consumer&#xff08;消费者&#xff09;&#xff0c;将中间的存储阵列称作 broker(代理)&#xff0c;这…

TCP/IP - TCP

目录 1. 数据格式2. TCP建立:三次握手第一次握手:Client发出SYN帧(SN=a, AN=0, SYN=1, ACK=0)第二次握手:Server发出SYN+ACK帧(SN=b, AN=a+1, SYN=1, ACK=1)第三次握手:Clietn发出ACK帧(SN=a+1, AN=b+1, SYN=0, ACK=1)为什么是三次握手,而不是两次?建立连接之后,一…

RabbitMQ Spring客户端使用

注解声明式队列和交换机 java自带序列化工具类&#xff0c;将java对象序列化为字节数组&#xff0c;用于网络传输。 jdk序列号存在缺陷&#xff0c;&#xff08;不安全&#xff0c;占用空间大等&#xff09; 推荐使用JSON的序列化&#xff1a; springboot扫描包使配置生效&…

CentOS 入门基础

CentOS 入门基础 一、CentOS 简介 CentOS&#xff08;Community Enterprise Operating System&#xff09;是一个基于 RHEL&#xff08;Red Hat Enterprise Linux&#xff09;的开源操作系统&#xff0c;由 Red Hat 公司赞助。它提供了与 RHEL 相同的稳定性和安全性&#xff…

Kotlin 极简小抄 P2(插值表达式、运算符、选择结构赋值)

一、Kotlin Kotlin 由 JetBrains 开发&#xff0c;是一种在 JVM&#xff08;Java 虚拟机&#xff09;上运行的静态类型编程语言 Kotlin 旨在提高开发者的编码效率和安全性&#xff0c;同时保持与 Java 的高度互操作性 Kotlin 是 Android 应用开发的首选语言&#xff0c;也可以…

Apache-wed服务器环境的安装

一。安装httpd并且开启httpd yum install httpd systemctl start httpd 二。关闭防火墙 systemctl stop firewall 三。常规配置wed服务 mkdir /www vim index.html&#xff08;里面写入自己的内容&#xff09; chmod 755 index.htm chmod 755 /www vim /etc/httpd/co…

R语言机器学习算法实战系列(一):XGBoost算法(eXtreme Gradient Boosting)

文章目录 介绍算法原理应用方向下载数据加载R包导入数据数据描述数据预处理数据切割设置数据对象设置参数训练模型预测测试数据评估模型模型准确性混淆矩阵ROC Curve特征的重要性模型解释保存模型总结系统信息介绍 XGBoost(eXtreme Gradient Boosting)是一种基于梯度提升决策…

Redis面试---缓存问题

一、Redis和MySQL数据一致性解决方案 (一)借助lua脚本 Redis命令是单线程,不会存在数据并发安全问题,如果要保证多条命令并发执行的原子性,可以将多个Redis命令存放在lua脚本中,然后再统一执行。 在数据一致性问题方面,将Redis伪装成MySQL的slave,按照MySQL的主从交互…