在我以前的基准( , ],我表明法学硕士可以成功解决大多数Leetcode问题,但是,他们在解决已知问题方面比新问题更好,这可以通过受污染的培训数据来解释 - 已知问题的解决方案很可能会被纳入培训数据中(这部分是最近对SWE Bench的OpenAI评论证实的。 ) )。 1 2 3 1 2 3 原来的SWE Bench和SWE Bench Verified使用Python。我也使用Python,但偶尔也会使用Go,C#,JavaScript,Bash等。所以我很自然地感兴趣:LLM结果如何不同语言?我的假设是,由于公众可用的代码量更大,模型在更受欢迎的语言中表现更好。 这与来自 然而,现实世界的问题涉及额外的复杂性 - 工具,图书馆,管道等我想要验证模式,使用更清洁的设置。 Leetcode 问题孤立了语言本身,因为底层的算法大多是语言无知的。 多语种平台 多语种平台 基准 与我之前的基准一样,我使用了Leetcode在线评判,以验证LLM解决算法问题的技能,但这次,我尝试了四种不同的语言,具有不同的受欢迎程度。 语言 在写作时,Leetcode支持大约20种语言来解决算法问题,Leetcode没有明确提供语言统计数据,但用户发布了他们的解决方案,而平台为这些发布的解决方案提供了统计数据。 Language Published solutions, % C++ 26.21% Java 25.60% Python3 17.81% Python 7.99% JavaScript 6.68% C 6.45% Go 2.17% C# 2.12% TypeScript 1.44% Swift 0.86% Kotlin 0.74% Rust 0.65% Ruby 0.36% PHP 0.43% Dart 0.25% Scala 0.16% Elixir 0.05% Racket 0.03% C 和 C++ 26.21 百分比 Java 25.60% Python3 17.81% Python 的 七、99% 加密货币 6.68% C 六、45% 去吧 2、17% C# 的 2.12 百分比 类型 1.44 百分比 快速 0.86% 卡特林 0,74% 的 Rust 0.65% 鲁比 百分比 0.36 PHP 的 百分比 0.43 达尔特 百分比 0.25 尺寸 十六% Elixir 0.05% 拉克 0,03% 的 我选择了四种语言:Java和Python3,作为最受欢迎的两种语言。Leetcode区分Python3和2;它们之间有最小的差异,而版本2的解决方案几乎总是适用于版本3。 这些四个在Leetcode上的普及与 虽然不准确匹配。 泰博指数 泰博指数 Language TIOBE Ratings, % Python 21.8 Java 8.12 Rust 1.32 Elixir 0.19 Python 的 21.8 java 8.12 休息 1.32 埃利克斯 0.19 此外,我检查了这四个公共GitHub repos的数量: Language GitHub Repos, Millions Java 20.20 Python 26.50 Rust 1.00 Elixir 0.12 java 20.20 Python 的 26.50 休息 1.00 埃利克斯 0.12 简而言之,Java和Python3代表了数以百万计的公共项目最常见的编程语言,我预计LLM会很好地处理它们。Elixir位于规模的反面,数量较少的代码可用,所以LLM的能力可能会随之减少。 问题设定 我选择了100个问题,在2025年10月至2026年2月之间发布。 Easy Medium Hard Total 15 59 26 100 15 59 26 100 意图是获得最近的问题,可能“看不见”的法学硕士. 已知解决方案的旧,特别是流行的问题,进入模型的培训套件。 模型 在基准中使用的模型在下表中列出,指定了所有非默认参数,发布日期和知识截止日期从供应商的官方文档中获得,并提供参考。 Vendor Model Release date Knowledge cutoff date "Reasoning" Parameters Anthropic claude-sonnet-4-5-20250929 Sep 2025 Jul 2025 No temperature = 0.0 max_tokens = 4096 Google gemini-3-flash-preview Dec 2025 unknown Yes temperature = 0.0 gemini-2.5-flash Apr 2025 unknown Yes temperature = 0.0 xAI grok-code-fast-1-0825 Aug 2025 unknown Yes seed = 42 OpenAI gpt-5-mini Aug 2025 May 2024 Yes seed = 42 Anthropic 第2025章 圣诞节2025 没有 温度 = 0.0 max_tokens = 4096 Google Gemini 3 - 闪存预览 第2025章 未知 是的 温度 = 0.0 双子 2.5 闪存 第2025章 未知 是的 温度 = 0.0 xAI 快 快 快 快 快 快 快 快 快 快 第2025章 未知 是的 种子 = 42 OpenAI gpt5 迷你 第2025章 2024年5月 是的 种子 = 42 除 Gemini 3 Flash (预览) 外,所有模型都比数据集中最古老的问题更早发布(2025 年 10 月)。 The benchmark aimed to be as deterministic and reproducible as possible; therefore, parameters such as "temperature" or "seed" were used. However, none of the models tested guarantee fully deterministic output. This should be kept in mind when reproducing these results. 所有模型都支持默认的“推理”或“思考”模式,除了Claude Sonnet 4.5。 结果 一个问题被视为“接受”或“解决”,如果解决方案被在线法官接受,所有其他结果,如“错误的答案”或“时间限制超过”,都只是“不接受”而没有任何差异化。 Model python3 java 𝝙 python3 rust 𝝙 python3 elixir 𝝙 python3 claude-sonnet-4-5-20250929 50% 52% +2 51% +1 35% -15 gemini-2.5-flash 82% 82% +0 77% -5 39% -43 gemini-3-flash-preview 84% 93% +9 78% -6 83% -1 gpt-5-mini 93% 94% +1 80% -13 63% -30 grok-code-fast-1-0825 73% 65% -8 65% -8 30% -43 claude-sonnet-4-5-20250929 五成 52% 的 +2 +2 五十一% +1 +1 35% 的 -15 -15 gemini-2.5-flash 82% 的 82% 的 +0 +0 77% 的 -5 -5 39% 的 -43 -43 gemini-3-flash-preview 八十四% 九三成 +9 +9 78% 的 -6 -6 八十三% -1 -1 gpt-5-mini 九三成 九四成 +1 +1 八成 -13 -13 六三成 -30 -30 grok-code-fast-1-0825 73% 65% 的 -8 -8 65% 的 -8 -8 三成 -43 结果显示,Elixir在大多数模型中明显下降,但这些差异是否具有统计意义? 为了评估语言之间通过率的差异是否具有统计意义,我使用了两个比例的z测试. 对于每个测试的两个语言的N=100问题,p=0.05的最小可检测的差异是1.96×√(2p̄(1-p̄)/N),其中p̄是两种语言之间的平均接受率。 考虑到Python作为基线,Python-Java和Python-Rust的差距对于所有模型来说并不重要(门槛分别为 ~11.7pp 和 ~12.3pp)。 然而,Python-Elixir差距在所有模型中都超过了 ~13.4pp,除了 Gemini 3 Flash Preview,这表明它们处理Elixir的效果要差得多。 数据库问题 有趣的是,这个模式也适用于SQL,我收集了321个Leetcode数据库问题,从2015年到2025年出版。 Easy Medium Hard Total 114 142 65 321 114 142 65 321 我使用了相同的五个LLM作为算法基准,但只有两个语言:MySQL和Oracle SQL。 对于Oracle SQL,在Leetcode上发布的解决方案比MySQL少15倍,TIOBE和GitHub对这些语言不提供任何统计数据,因为它们实际上不是编程语言。 鉴于大多数问题早于模型的知识截止日期,污染是可能的,并且在解释这些结果时应记住。 Model MySQL Oracle SQL 𝝙 claude-sonnet-4-5-20250929 87.5% 76.3% -11.2 gemini-2.5-flash 86.6% 67.9% -18.7 gemini-3-flash-preview 95.6% 85.7% -9.9 gpt-5-mini 89.1% 79.4% -9.7 grok-code-fast-1-0825 80.4% 66.7% -13.7 claude-sonnet-4-5-20250929 八百八十五 七六三成 -11.2 gemini-2.5-flash 八六六成 六七九成 -18.7 gemini-3-flash-preview 九五六成 八十五、七成 -9.9 gpt-5-mini 89.1 % 的 七九四分之一 -9.7 grok-code-fast-1-0825 八十四% 六、七成 -13.7 随着 N = 321 问题和平均通过率约为 82%,重要性门槛大约为 6 个百分点。 这意味着每个测试的模型对MySQL的接受率都显著提高。 结论 我们可以看到,法学硕士在编码问题上的表现与语言的普及相相关,这尤其令人惊讶:算法问题在很大程度上是语言无知的,所以人们可以期望基础逻辑在不同语言中转移。 与 Python 和 Java,最广泛使用的语言,模型优于 Elixir,一个 niche 语言. 同样的趋势适用于 SQL 问题,其中LLM 在MySQL比在Oracle SQL中更好地工作。 最有可能的解释是训练数据密度:更流行的语言产生更多的代码示例,给模型更多的材料来学习。 实际影响是简单的:如果你依靠LLM进行编码帮助,你的语言选择可能与你的模型选择一样重要。使用不常见的语言意味着接受更弱的AI支持,尽管Gemini 3 Flash Preview是一个显著的例外,在所有测试的语言中显示了几乎一致的结果,用于算法问题。 尽管有更少的公共存储库和发布的Leetcode解决方案,但没有显示统计显著的差异。 首先,扩展问题组将允许Rust发现得到证实或排除,其次,测试额外的语言,如Scala,Dart或Racket将有助于更准确地建立普及性能关系。 左边 用于此基准的数据集: https://huggingface.co/datasets/whiskwhite/leetcode-complete https://huggingface.co/datasets/whiskwhite/leetcode-complete 用于提出和提交解决方案的工具: https://github.com/whisk/leetgptsolver https://github.com/whisk/leetgptsolver