“千模千测”——针对大语言模型认知能力的高效测试方法

news2024/11/16 19:58:37

2146242f8184cb54f6e410524eb2e2bb.gif

©PaperWeekly 原创 · 作者 | 庄严、宁雨亭

单位 | 中国科学技术大学BASE课题组

b171eef49caf93a259f3b6c5b804c973.png

论文标题:

Efficiently Measuring the Cognitive Ability of LLMs: An Adaptive Testing Perspective

作者:

Yan Zhuang, Qi Liu, Yuting Ning, Weizhe Huang, Rui Lv, Zhenya Huang, Guanhao Zhao, Zheng Zhang, Qingyang Mao, Shijin Wang, Enhong Chen

单位:

中国科学技术大学、认知智能全国重点实验室

链接:

http://arxiv.org/abs/2306.10512

8dda0b3892c2ab91a94a1fbb28ba6fb6.png

摘要

ChatGPT 等大规模语言模型(LLM)已经展现出与人类水平相媲美的认知能力。为了比较不同模型的能力,通常会用各个领域的 Benchmark 数据集(比如文学、化学、生物学等)进行测试,然后根据传统指标(比如答对率、召回率、F1 值)来评估它们的表现。

然而,从认知科学 [1] 的角度来看,这种评估 LLM 的方法可能是低效且不准确的。受心理测量学中的计算机自适应测试(CAT)的启发,本文提出了一个用于 LLM 评估的自适应测试框架:并非简单计算答对率,而是根据各个被试(模型)的表现动态地调整测试问题的特征,如难度等,为模型“量身定制”一场考试。

以下图为例,CAT 中的诊断模型 CDM 会根据被试之前的作答行为(对/错)对其能力进行估计。接着,选题算法(Selection Algorithm)会根据该估计值选择最具信息量或最适合他的下一道题,例如选择难度和被试能力最接近的题目。如此循环往复直到测试结束。相比传统评估方法,该框架能用更少的题目更准确地估计模型的能力 [2]。

1177ef43d0b3e859dbc40557dc23b962.png

▲ 图1 CAT流程

本文对 6 个商业化的大语言模型:ChatGPT(OpenAI)、GPT4(OpenAI)、Bard(谷歌)、文心一言(百度)、通义千问(阿里)、星火(讯飞)进行细粒度的诊断,并从学科知识、数学推理和编程三个方面对它们进行了认知能力排名。其中 GPT4 显著优于其他模型,已经达到了人类平均水平的认知能力。本文的诊断报告也发现,ChatGPT 表现得像一个“粗心的学生”,容易失误,偶尔也会猜测问题的答案。

“千模千测”——这有可能成为评估大规模语言模型的新范式。

27bc42b381c2b80aabf042778a8e9c10.png

引言

近几个月来, 大规模语言模型(LLM)以其强大的能力颠覆了人们对语言模型的认知。除了传统的 NLP 任务,大模型在写作、编程、作词作曲等各方面展现出难以置信的类人水平 —— 这仅仅是 LLM 能力的冰山一角。

为了充分评估 LLM 认知能力水平,一些最初为人类设计的各类专业或学术考试被用来对模型进行评测:

2605eebd019870428ca4b5f8eeac618d.png

▲ 图2 传统 LLM 评测方法

然而,依赖这些固定的考试并不高效:(1)它通常需要许多相应领域的专家对 LLM 的每一个回答进行评判/打分,尤其对于主观或创造性的问题。(2)模型回答过程中推理(inference)的开销是巨大的。例如,GPT3 需要在 1750 亿参数的模型上进行推理、GPT4 对每一千 tokens 收费 0.03 美元,并且限制了 API 请求的频率...

因此,本文从认知科学领域中引入了一种新的评估模式——计算机自适应测试(Computerised Adaptive Testing, CAT),建立一个自适应的、高效的评估框架:

80b954928dd6c142ad166a88ee858dc3.png

▲ 图3 自适应 LLM 评测

本文将 LLM 视为一个学生,为各个模型“定制试卷”以准确评估其能力。相比传统基于答对率的方法,它所需要的题目数量更少(降低专家人工成本)、能力估计更准,是一种更符合认知能力评估的范式。本文贡献如下:

1. 正式将心理测量学中的 CAT 引入 LLM 的评估中,分析发现每个模型的试卷中有 20%~30% 的题目是不同的,这部分题目对测试的自适应性和个性化至关重要。同时,在相同的能力评估精度下,仅需要传统评估方法 20% 的样本/题目数量

2. 模型 vs 人类:本文将 ChatGPT 与不同能力水平人类进行了比较,发现它在动态规划和搜索方面的编程能力已经超越了高水平的大学生。同时,ChatGPT 经常表现得像一个“粗心的学生”,很容易失误,偶尔也会靠猜。

3. 模型 vs 模型:本文研究了 6 个有代表性大模型,并得到它们在学科知识、数学推理和编程水平三个方面的细粒度诊断报告,发现 GPT4 显著超越其他大模型,其数学推理能力已经接近中等水平的高中生。

b05f61814ba82ecc0b72be10a9a969bb.png

LLM 自适应评测框架

计算机自适应测试(CAT)是一种高效的、个性化的测试模式,已被广泛应用于各类标准化考试中(如 GRE、GMAT)。它的首要目标是在准确评估被试者能力的同时尽可能缩短考试长度。相比传统的纸笔测试,CAT 的测评效率更高。本节将详细介绍本文提出的两阶段 LLM 自适应评测框架:题库构建和自适应测试。

64504eccf5cb059f956f8d0f0f2218ea.png

▲ 图4 LLM 自适应评测框架

3.1 阶段1:题库构建

首先需要为自适应测试构建一个多样且高质量的题库:准备好要目标领域/学科的题目集 ,题库构建的目标就是校准所有题目的参数特征(如难度、区分度等)。由于本文需要将人和 LLM 进行对比,还需要收集人类在这些题目上的作答记录。本文选择测量心理学中经典认知诊断模型——项目反应理论(Item Response Theory, IRT)来对题目参数进行校准:

a186dea63aec91e98e89489a82172b7e.png

其中 表示能力为 的被试者答对题目 的概率。每个题目 有三个参数:难度 、区分度 、猜测因子 。

通过在作答记录  上进行参数估计,得到所有  个试题的参数 ,以及  个真实人类的估计能力值 ,可以后续直接用于与 LLM 进行比较。

IRT 基本假设是:不同的题目对于能力评估的重要性并不相同。例如,大模型 A 和 B 在某个 Benchmark 中的答对率分别为 0.88 和 0.89,他们的差距可能并不像看起来那么小,甚至并不准确。因为(1)大量简单的问题可能会淹没困难的问题,从而导致 B 无法显著地体现出其优越性;(2)数据集中或存在标注错误/噪声,可能导致这些传统指标失效。下面利用估计出的题目参数列举一些例子。

1. 难度 :当被试能力  保持不变时,难度  越大,答对的概率越小。下图是本文中的 MOOC 数据集中估计出最难和最简单的题目。解决问题 需要 ChatGPT 理解 PAC,这是计算学习理论中一个非常难理解的知识点。相比之下,最简单的问题和机器学习中的“感知机”有关,初学者也可以很容易地解决。

ce7aaf9325370563cd3d07cb3fd3d030.png

▲ 图5 难度

2. 区分度 :对于区分度高的问题,能力的微小变化可能会引起答对率的较大变化,因此这些题目可以更好地区分具有相似能力的被试。下图低区分度   非常简单,而且这种“垂直平分线”问题有固定的套路,很难真正区分不同能力的被试。高区分度问题  虽然也不难,但需要对原问题进行转换,并熟练掌握“圆与圆之间的位置关系”的相关知识。

8f8243b526d3bd592e167749fdc785b6.png

▲ 图6 区分度

3. 猜测因子 :它主要反映低能力被试能答对的概率,可以简单理解为猜对该题的概率。对于下图  的 题,甚至不需要被试掌握任何编程语言的知识,就可以用常识“猜”对。然而,为了答对  最小的  题(下),ChatGPT 需要掌握并理解 JAVA 中 Interface 的定义和用法:Interface 是一个完全抽象的类',并且能够选出所有不相关的选项;如果没有熟练掌握 “Interface” 的概念,想要猜对几乎不可能。

a62e51c8100e2c76a102e4eb737d2d1f.png

▲ 图7 猜测因子

3.2 阶段2:自适应测试

题库构建后,将正式进行自适应测试。主要包含两个核心模块:认知诊断模型和自适应选题算法。首先,诊断模型会根据 LLM 之前的作答情况对其能力进行估计。接着,选题算法将根据某种的信息量度量函数选择下一个对被试最有价值/最适合的题目。这两个算法交替工作,直到满足某个停止规则。

1. 使用认知诊断进行 LLM 能力估计:与阶段 1 保持一致,本文使用 IRT 来估计 LLM 的当前能力 :在第 t 轮测试后,利用极大似然估计(交叉熵)根据 LLM 前 步的作答情况(题目 , 正确性 ) 估计出当前能力值 。

能力估计值   的渐进分布 [3] 是以真值 为均值, 为方差的正态分布(下图),其中 为 Fisher 信息量。因此为了提高能力估计的效率(减小测试长度),减小能力估计的不确定性(方差)是至关重要的。

f2b4249b61355cb2459eccf748400e4b.png

▲ 图8 能力估计值的统计特性

2. 自适应选题:为了提高能力估计的效率、减小方差,本文采用最大化 Fisher 信息量的选题算法。在每一轮测试时,根据 LLM 当前能力估计值,选择能够使得 Fisher 信息量 尽可能大的下个题目 给模型回答:

79212a7bc10932b0d221b67d799de2c2.png

研究发现 [4]:Fisher 信息量选题方法倾向于选择(1)高区分度且(2)难度接近当前能力估计值的题目。因此 Fisher 方法不仅考虑了题目的质量(即区分度),也考虑了问题的难度对 LLM 的匹配性。例如,当 ChatGPT 在第 轮回答正确时,选题算法将为其选择一个难度更大的问题,反之亦然。这就是为什么许多能力水平高的 GRE 考生发现考试中题目变得越来越难的原因。

d3cf3f5aedc3d1876af738cd4feed2d4.png

评测效率与可靠性

本文通过上述介绍的自适应测试框架对各个 LLM 进行评测。LLM-CAT-专家 的交互界面如下图所示。

7b9c318fcd85063b137c4227e3a82b9c.png

▲ 图9 LLM-CAT-Expert 交互测试框架

评测效率:本文通过仿真实验来验证该框架的评估效率。本文随机生成 100 名被试的能力真值 ,并进行能力评估的模拟。计算每一轮的能力估计 和真实能力 的 MSE 误差(下图),发现:与使用固定 Benchmark 测试集(即从数据分布中 Random 采样)相比,自适应评估方法在相同的估计误差下最多只需要 20% 的题量。

由于 20 足以满足一般自适应测试,本文将最大长度固定为 20,并根据信息量指标 [5] 自适应调整测试长度。因此,相较于传统评估中需要 LLM 回答上百道题目 [5],该方法可以挑选出真正有价值的问题,最多只需要问模型 20 个问题,特别是对于需要大量专家评分的模型测试,它大大降低人工成本和模型推理开销。

9563dc6eef2eaed72e75674bd93615db.png

▲ 图10 自适应选择和随机选择的能力估计误差

自适应性:为验证 CAT 能否根据模型能力自适应地选择适合的问题,本文用 Jaccard 相似度来衡量任意两个模型所作答的题目集之间的相似性:,其中  和  代表两个不同的题目集合/试卷。下图展示了 CAT 为各个 LLM 定制的试卷相似度。几乎所有 Jaccard 值都在 0.6 左右,表明至少 20-30% 的问题是不同的,这部分题目是实现测试自适应性的关键。其余 70-80% 的题目是相同的,对于评估所有 LLM 都有价值。这两部分共同组成了一份试卷,以高效评估模型。

918a9ae25de71e5ac332c3a95d6846e5.png

▲ 图11 试卷的Jaccard相似度

评测可靠性:为了验证用于人类的 CAT 框架是否可以用于 LLM,本文研究了它的可靠性(SE 曲线 [5])。在 CAT 中,SE值通常是指能力估计 的标准差,它反映了能力估计的精度:。较小的 SE 表示更精确且更可靠的估计 [7]。下图显示了 ChatGPT(蓝色)和 100 名学生(黑色)测试过程中的 SE 变化:ChatGPT 的 SE 曲线虽有波动,但是比真实学生更快、更容易收敛。

7c21e393bf30877c2101f6a25714adc6.png

▲ 图12 ChatGPT 和学生的 SE 曲线

为探究 ChatGPT 与人类的相似性,本文在学生的测试过程中添加了猜测和失误因素:(1)猜测因素:即使被试没有掌握,仍有概率答猜对;(2)失误因素:即使掌握了该题,仍有小概率失误答错。因此,Guess10% 表示正确性标签从错误变为正确的概率为 10%,而 Slip10% 表示标签从正确变为错误的概率为 10%。有趣的是,ChatGPT 的 SE 曲线非常接近 Guess=10%、Slip=30% 的学生(红色)。由此,本文推断 ChatGPT 更像一个“粗心的学生”,容易失误(30%)并且偶尔会去猜答案(10%)。

effa8944be17541f8fc91d46c0a85308.png

诊断报告

本文选择了国内外较有代表性的 6 个 instruction-tuned LLM 进行评测:ChatGPT、GPT4、谷歌 Bard、百度文心一言(ERNIEBOT)、阿里通义千问(QianWen)、讯飞星火(Spark)。并将他们与高水平(High-Ability)、中等水平(Mid-Level)的人类学生进行比较。

数据集:本文选择学科知识、数学推理、编程三个领域为例对 LLM 进行细粒度评测,分别对应三个数据集:MOOC、MATH 和 CODIA。

  • 学科知识水平(MOOC):MOOC 是目前最知名的在线学习平台之一,本数据集收集了 1.5 万大学生对计算机科学中不同知识概念(如人工智能、计算机系统等)的回答记录。

  • 数学推理水平(MATH):该数据通过智学网收集,其中包含了超过 10 万名高中生的数学考试数据。

  • 编程水平(CODIA):该数据由中国科学技术大学自主研发的在线编程平台 CODIA(https://code.bdaa.pro/)。提供,其中包含了来自 120 所大学的大学生的编程提交数据。

5.1 ChatGPT VS 人类

本文以 ChatGPT(蓝色)为例对其从上述三个方面进行高效诊断,并和高水平学生(红色)进行比较:

1. 编程水平:尽管 ChatGPT 在官方报告和海量用户case中已经展示出其惊人的编程水平,但它并非全能,并不擅长所有类型的问题。本文使用 CODIA 平台对 ChatGPT 的编程能力中“动态编规划和贪心算法”、“搜索”、“数学问题”、“数据结构”、“树和图论”进行评估。ChatGPT 表现最佳的是“搜索”、“动态规划和贪心算法”。它在这些类型的问题上超过高水平大学生。然而,“数据结构”、“树和图论”是其编程能力上的短板。因此,下次让 ChatGPT 写代码时,可以避免这些类型;而如果你遇到关于动态规划的问题,则可以放心交给 ChatGPT。

bfba35af04864abac4be9c013cd76d8c.png

▲ 图13 编程水平对比:ChatGPT(蓝)vs 学生(红)

2. 学科知识水平:如下图,ChatGPT 在“算法”和“机器学习”这两个知识点上的能力水平显著高于高水平学生。然而,它在编程语言方面相对较弱,这似乎与人们对其的认知不太相符。为了探索原因,本文在下图右侧展示了一个关于编程语言的例子。这是一道非常基础的问题,但是 ChatGPT 却答错了,类似的例子在 ChatGPT 的考试中并不罕见。这说明它在掌握和理解编程语言的一些基础概念方面并不准确。而结合它在 CODIA 上惊人的编码水平(上图),本文有理由相信:ChatGPT 更像是一个 “实干家”,而不是一个 “书呆子”。

58a2d8fc5c5c5a05cb5adb86c96efb37.png

▲ 图14 学科知识水平对比:ChatGPT(蓝)vs 学生(红)

3. 数学推理水平:ChatGPT 的数学推理能力与人类的数学推理能力仍有相当大的差距:在“概率与统计”、“排列与组合”以及“几何”的问题的上尤其差;在“函数”、“方程和不等式”方面的表现相对好一些。因此,对于方程、函数这种有固定解题套路的基本计算问题,ChatGPT 是合格的。但面对现实场景中的推理问题[7](例如,概率和统计、排列组合)显然还差得远。

2cbe97ebfa1ff91f7202b55de4b8c3a9.png

▲ 图15 数学推理能力对比:ChatGPT(蓝色) vs 学生(红色)

5.2 LLM排名

本文在国内外 6 个有代表性的商业化 LLM 进行了 CAT 测试,并同时与不同水平的人类学生进行比较:

40bd5754e57a55896782645f4d1759b3.png

▲ 表1 不同 LLM 及不同水平学生能力诊断结果

数学推理:高水平高中生 > GPT4 ≈ 中等水平高中生 > 星火 > Bard > 文心 > ChatGPT > 千问

编程:高水平大学生 > GPT4 > 中等水平大学生 > ChatGPT >  星火 > 文心 > 千问 > Bard

学科知识:GPT4 > Bard > ChatGPT ≈ 高水平大学生 > 中等水平大学生 > 星火 > 千问 > 文心

GPT4 在学科知识、数学推理、编程水平上明显优于其他 LLM。其学科知识水平几乎在每个知识点上都超过了高水平大学生(Top20%)。

每个 LLM 都有其自己的“特长”。例如编程中,GPT4 擅长“动态规划”和“数学问题”;ChatGPT 更擅长“搜索”问题;星火平均编程水平低于 GPT4/ChatGPT,但是用编程解决数学问题是它的强项。因此,尽管这些 LLM 没有公布它们预训练所用数据的配比和具体细节,本文有理由推断,ChatGPT/GPT4 可能在训练阶段使用了更多的编程相关数据,而星火则使用了更多的数学学科数据。

大模型要实现媲美人类的数学推理仍有很长的路要走。根据 CAT 诊断的结果,即使最强的 GPT4,其推理能力也接近于中等水平的高中生。毕竟 LLM 的本质还是数据驱动的概率生成模型,并非像人类那样去思考和推理。因此,基于或模仿人类的认知结构 [9],或许是未来提升 LLM 推理能力的“捷径”。

04de2f497001a6d5eaed5d5138c82d36.png

总结

大语言模型正逐步改变人们日常的工作和生活方式。越来越多的人尝试探索 LLM 能力边界,让它们完成传统 NLP 时代难以想象的事情,如生成代码、制作 PPT、作诗作曲等等。因此,如何科学有效地诊断并分析 LLM 的能力显得愈发重要。本文尝试引入原本用于人类的认知能力评估框架——计算机自适应测试,来对 LLM 进行评估。在相同的评估精度下,CAT 需要的测试数据更少,极大地降低了 对 LLM 评估的人工成本和计算开销。

原论文由于中国科学技术大学计算机学院 BASE(http://base.ustc.edu.cn/)课题组撰写。该课题组聚焦于将大数据和人工智能技术应用于教育科学,包括:教育资源理解、认知诊断与学生建模、个性化教育服务等。本文希望 CAT 这一科学的评估范式可以促进 LLM 的研究与迭代,欢迎交流探讨!

outside_default.png

参考文献

outside_default.png

[1] Liu Q. Towards a New Generation of Cognitive Diagnosis[C]//IJCAI. 2021: 4961-4964.

[2] Zhuang Y, Liu Q, Huang Z, et al. A Robust Computerized Adaptive Testing Approach in Educational Question Retrieval[C]//Proceedings of the 45th International ACM SIGIR Conference on Research and Development in Information Retrieval. 2022: 416-426.

[3] Sheldon M Ross. A first course in probability. Pearson, 2014.

[4] Zhuang Y, Liu Q, Huang Z, et al. Fully Adaptive Framework: Neural Computerized Adaptive Testing for Online Education[C]//Proceedings of the AAAI Conference on Artificial Intelligence. 2022, 36(4): 4734-4742.

[5] C. Wang, D. J. Weiss, and Z. Shang. Variable-length stopping rules for multidimensional computerized adaptive testing. Psychometrika, 2018.

[6] OpenAI. Gpt-4 technical report, 2023.

[7] Wim J Van der Linden and Cees AW Glas. Elements of adaptive testing, volume 10. Springer, 2010.

[8] Lin X, Huang Z, Zhao H, et al. Learning Relation-Enhanced Hierarchical Solver for Math Word Problems[J]. IEEE Transactions on Neural Networks and Learning Systems, 2023.

[9] Liu J, Huang Z, Lin X, et al. A cognitive solver with autonomously knowledge learning for reasoning mathematical answers[C]//2022 IEEE International Conference on Data Mining (ICDM). IEEE, 2022: 269-278.

更多阅读

e952b4acb9680b652165d1e0ae839b33.png

e74603d3b5c278aa76ba844cd1dc69a6.png

f29508d3beaf55a39d76ab44ae1d3fe1.png

5ab78e9e7f6a81da1d81f84d01eeda79.gif

#投 稿 通 道#

 让你的文字被更多人看到 

如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。

总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 

PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析科研心得竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。

📝 稿件基本要求:

• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注 

• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题

• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算

📬 投稿通道:

• 投稿邮箱:hr@paperweekly.site 

• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者

• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿

9c764ccdda8d8936826b7cc2047a1b2f.png

△长按添加PaperWeekly小编

🔍

现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧

·

·

db2dc182f97cb144f9eec99fa554a4b2.jpeg

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

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

相关文章

Docker 安装Nginx

查看Nginx镜像并拉取镜像: [rootlocalhost nginx]# docker search nginx NAME DESCRIPTION STARS OFFICIAL AUTOMATED nginx …

使用Mybatis添加记录错误

使用Mybatis添加记录错误:Error updating database. Cause: com.mysql.cj.jdbc.exceptions.MysqlDataTruncation: Data truncation: Out of range value for column ‘id’ at row 1 分析:添加记录的id值超出范围,查看JavaBean中的ID&#…

00-C++-ccache使用

ccache使用 前言ccache是什么ccache使用 前言 在编译大型C项目代码时编译时间比较长,那么可以使用ccache来加速代码的编译,一起来学习吧。 ccache是什么 ccache是一个编译器缓存。它通过缓存以前编译的结果并检测何时再次进行相同的编译来加快重新编译…

201天,太平洋保险核心系统迁至国产数据库OceanBase稳定运行

7月7日,2023全球数字经济大会上,国内首个全险种核心迁移至国产数据库的系统正式亮相。 因支撑未来海量并发、海量数据业务发展需求,太平洋保险(集团)股份有限公司(以下称“太平洋保险”)与Ocea…

使用OpenCV的viz模块创建和控制一个3D可视化窗口

#include <opencv2/viz.hpp> #include <iostream>using namespace cv; using namespace std;int main() {

神经网络解决预测问题(以共享单车预测为例)

背景:大约从2015年起,共享单车席卷了大部分城市。共享单车在给人们带来便利的同时,也存在一些问题:单车的分布很不均匀。比如在早高峰的时候,一些地铁口往往聚集着大量的单车,而到了晚高峰却很难找到一辆单车了。那么如何解决共享单车分布不均匀的问题呢?目前,共享单车…

DevOps系列文章 之 SnakeYAML解析与序列化YAML

1、简述 如何使用SnakeYAML库将YAML文档转换为Java对象&#xff0c;以及JAVA对象如何序列化为YAML文档。 在DevOps平台系统中是基础的能力支持&#xff0c;不管是spring boot 的配置还是K8S 资源清单yaml 2、项目设置 要在项目中使用SnakeYAML&#xff0c;需要添加Maven依赖…

基于go-zero的api服务刨析并对比与gin的区别

zero路由与gin的区别 官网go-zero go-zero是一个集成了各种工程实践的微服务框架&#xff0c;集多种功能于一体&#xff0c;如服务主要的API服务&#xff0c;RPC服务等。除了构建微服务工程外&#xff0c;zero也是一款性能优良的web框架&#xff0c;也可以构建单体web应用。 …

并行计算框架Polars、Dask的数据处理性能对比

在Pandas 2.0发布以后&#xff0c;我们发布过一些评测的文章&#xff0c;这次我们看看&#xff0c;除了Pandas以外&#xff0c;常用的两个都是为了大数据处理的并行数据框架的对比测试。 本文我们使用两个类似的脚本来执行提取、转换和加载(ETL)过程。 测试内容 这两个脚本主…

【Linux】-Linux部署Javaweb项目

作者&#xff1a;学Java的冬瓜 博客主页&#xff1a;☀冬瓜的主页&#x1f319; 专栏&#xff1a;【Linux】 分享: 屋檐如悬崖 风铃如沧海 我等燕归来 时间被安排 演一场意外 你悄然走开 故事在城外 浓雾散不开 看不清对白 你听不出来 风声不存在 是我在感慨 梦想来是谁在窗台 …

【服务器】Python一行命令搭建HTTP服务器并外网访问 - 内网穿透

文章目录 1.前言2.本地http服务器搭建2.1.Python的安装和设置2.2.Python服务器设置和测试 3.cpolar的安装和注册3.1 Cpolar云端设置3.2 Cpolar本地设置 4.公网访问测试5.结语 转载自cpolar极点云文章&#xff1a;【Python】快速简单搭建HTTP服务器并公网访问「cpolar内网穿透」…

【专题速递】音频生成、TTS和AIGC在音乐上的运用

// AIGC的发展为音频带来了什么&#xff1f;AIGC如何赋能音乐创作&#xff1f;如何识别虚假音频&#xff1f;TTS可以在哪种场景下解决特定问题&#xff1f;7月29日LiveVideoStackCon2023上海站音频新体验专场&#xff0c;为您解答。 音频新体验 随着多媒体和通信网络技术的不…

开利网络受邀参与广州三会企业数字化转型专题研讨会

​7月6日&#xff0c;开利网络受邀出席由广州三会于广州市黄埔区组织的“广州三会第六届理事会第八次会长联席会议”&#xff0c;并进行了主题为“企业数字化转型如何推动企业价值再造&#xff1f;”的专题分享会&#xff0c;为各位参会来宾分享企业数字化转型常见误区及数字化…

【IC设计】ICC1 workshop lab guide 学习笔记——Lab 2 Design Planning Task5-9

文章目录 ICC1 workshop lab guide2.5 Create P/G Rings Around Macro Groups2.6 Power Network Synthesis2.7 Check the Timing2.8 Write Out the DEF Floorplan File2.9 Create 2nd Pass Design Ready for Placement ICC1 workshop lab guide 2.5 Create P/G Rings Around M…

uniapp 发送全文件 支持App端ios、android,微信小程序,H5

由于uniapp提供的API在app端只能上传图片和视频&#xff0c;不能上传其他文件&#xff0c;说以只能借助插件了。 ios端用的这个插件 获取到文件对象 免费的 这个是返回一个 filePath 可用直接用于 uni.uploadFile 上传的路径&#xff0c;后面自己又改的File对象 全文件上传选择…

CAD绘制三维升旗台

首先绘制长方体的底座 用交叉对角线来定位&#xff0c;绘制一个小一点的矩形&#xff0c;用来定位 大概的效果&#xff1a; 沿着矩形的一个角绘制三个长方体&#xff0c;形成护栏 用阵列或者复制等形成四个角的护栏 旋转&#xff0c;换成真实的效果图&#xff1a; 添加一个圆…

文件共享平台Pingvin Share

本文完成于 2 月上旬。最近正好应网友要求折腾了 ClamAV&#xff0c;所以翻出来一起发了&#xff0c;可以作为 ClamAV 的一个应用示例&#xff1b; 什么是 Pingvin Share &#xff1f; Pingvin Share 是自托管文件共享平台&#xff0c;是 WeTransfer 的替代品。使用 Pingvin Sh…

【C语言基础】遍历

(꒪ꇴ꒪(꒪ꇴ꒪ ),我是祐言博客主页&#xff1a;C语言基础,Linux基础,软件配置领域博主&#x1f30d;快上&#x1f698;&#xff0c;一起学习&#xff01;送给读者的一句鸡汤&#x1f914;&#xff1a;集中起来的意志可以击穿顽石!作者水平很有限&#xff0c;如果发现错误&…

S7-1200与ABB机器人进行SOCKET通信的具体方法示例

S7-1200与ABB机器人进行SOCKET通信的具体方法示例 SOCKET通信是一种基于TCP/IP协议的通信方式,提供了程序内部与外界通信的端口并为通信双方提供了数据传输通道。 ABB机器人实现SOCKET通信必须要在Communication选项中勾选616-1 PC Interface选项功能。 具体方法可参考以下内容…

SpringBoot+Vue酒店客房管理系统

&#x1f495;&#x1f495;作者&#xff1a;程序员徐师兄 个人简介&#xff1a;7 年大厂程序员经历&#xff0c;擅长Java、微信小程序、Python、Android等&#xff0c;大家有这一块的问题可以一起交流&#xff01; 各类成品java毕设 。javaweb&#xff0c;ssh&#xff0c;ssm&…