跳到正文
RadarAI· Meta Engineering Blog(RSS)·· 4 小时前AI 评分38

Meta 发布 2026 Python Typing Survey:AI 工具改写类型标注,新检查器快速崛起

AI 导读

Meta 发布 2026 Python Typing Survey,共收到 1,794 份回复,连续三年追踪 Python 类型标注使用情况。AI 工具为 42.5% 的受访者编写类型提示,认为 AI 让代码更可靠的比例从 2025 年的 18.5% 升至 38.4%,24.4% 的受访者由 AI 编码工具调用类型检查器。第三方库缺少类型信息仍是最常见困难,65.1% 的受访者选择了这一项。

正文 · AI 翻译

Meta Engineering Blog·2026-10-27 23:59· 1 小时前AI 评分55

2026 年 Python 类型标注调查:AI 工具与不断变化的类型检查器格局

AI 导读

Meta 发布 2026 年 Python 类型标注调查结果,共收到 1,794 份回复,连续三年追踪 Python 类型标注的使用与体验。AI 工具为 42.5% 的受访者编写类型提示,认为 AI 让代码更可靠的比例从 2025 年的 18.5% 升至 38.4%,24.4% 的受访者由 AI 编码工具调用类型检查器。

正文 · 原文

  • 2026 年 Python 类型标注调查共收到 1,794 份回复。 
  • 三年来类型提示的使用变化不大,但类型检查器的选择发生了显著变化。 
  • 在报告了所用类型检查器的受访者中,一半选择了不止一种,而缺少库类型信息是最常见的困难。

连续第三年,我们询问 Python 开发者如何使用和体验 Python 类型标注:即用于描述和检查 Python 代码中类型的语言特性、规范和工具。我们开展这项调查,是为了了解哪些方面行之有效,以及库维护者、工具构建者、文档作者和标准贡献者接下来应着手解决哪些问题。

大多数受访者是经验丰富的 Python 开发者:76.4% 使用 Python 至少五年。最明显的变化是类型检查器选择上的转变,而缺少库类型信息仍是最常见的困难。

2026 年 Python 类型标注调查的主要发现

今年的调查结果呈现出若干反复出现的机会:

更广泛、更准确的类型信息将有助于数据科学包的用户:动态框架带来了不同的挑战,因为当前的类型系统无法表达某些运行时行为。可能的方向包括新的类型特性,以及针对各个库和框架量身定制的类型检查器支持。

工具构建者可以专注于编辑器反馈和几乎无需配置的首次类型检查器运行:错误消息可以链接到简短说明和示例。类型标注文档可以假定读者具备 Python 经验。使用多个类型检查器的项目将受益于对它们之间有意差异的清晰说明。

更好的可调用对象语法仍是标准制定工作中一个切实可行的领域,尤其是当改进能让常见的类型标注任务保持简单直接时。

AI 的使用仍是一个悬而未决的问题:关于 AI 的调查结果留下了一个悬而未决的问题:AI 工具与类型检查器之间的哪些交互对开发者有帮助。进一步的实证研究可以为未来的设计提供参考。

AI 工具如今会编写类型并响应类型检查器错误

选择“让 AI 生成的代码更准确/可靠”的受访者比例从 2025 年的 18.5% 升至 2026 年的 38.4%。在 1,517 名受访者中,42.5% 的人使用 AI 工具编写类型提示,32.6% 的人编写类型以改进 AI 生成的代码。受访者还使用 AI 修复或解释类型错误。在列出的全部四项 AI 工具用于类型标注的活动里,61.0% 的受访者表示他们至少使用了其中一项。

一些受访者表示,他们的 AI 编码工具会运行类型检查器,然后修复错误。在 1,517 名回答了如何运行类型检查器的开发者中,24.4% 表示由 AI 编码工具调用他们的类型检查器。在这 370 名受访者中,61.6% 还使用 AI 修复类型检查器错误。而在其余受访者中,这一比例为 19.3%。

一些受访者描述了 AI 生成的类型过于宽泛,以及智能体会压制类型检查器错误的情况:

“我修复 AI 编写的类型提示,因为 AI 经常偷懒,把所有东西都用 object 表示。”

“偷懒的编码智能体到处乱刷 #type: ignore 注释。”

当被问及类型对更好的 AI 辅助编码有多大用处时,1,551 名受访者中有 29.8% 选择了“我不确定”。AI 辅助编码的不确定率几乎是运行时保证 7.7% 的四倍,后者是六项收益中第二高的。我们仍然需要实证证据来了解哪些交互真正有帮助。

Pyrefly 团队已经在研究 AI 编码工具和类型检查器如何协同工作。在 2026 年 Python 类型峰会上,该团队展示了 智能体工作流中的类型检查。

库的缺口总体居首;偶尔使用者难以应对复杂性

第三方库中缺失类型信息是首要困难,1,486 名受访者中有 65.1% 选择了它。另有 44.6% 表示类型系统无法描述其代码所做的所有事情。

即使库发布了专用存根,开发者的体验仍可能很差。在 156 名自行填写答案的人中,22 人描述了动态构造、装饰器、元编程或框架行为。10 人描述了数组、数据框或科学计算类型,至少 8 人描述了不准确、不完整或过于宽泛的注解。受访者反复提到 Django、SQLAlchemy、Pydantic、NumPy、pandas 和 Polars。

“Django 做了太多黑魔法,类型检查器还能工作真是个奇迹。”——调查受访者

库维护者需要能够捕捉框架和数据科学库行为的注解。Pyrefly 团队一直在 与 Quansight 合作改进第三方库的类型标注,包括对 pandas-stubs 和 NumPy 的贡献。

使用频率改变了哪些问题最为突出。在很少或有时使用类型提示的开发者中,41.6% 认为类型系统过于复杂或冗长。在经常或总是使用类型提示的开发者中,这一比例为 14.5%。库类型缺失影响了较低频率组的 36.2% 和较高频率组的 70.0%。

“我只用直截了当的部分,避开难以理解的部分。”——调查受访者。 

类型使用年限呈现出不同的模式。报告复杂性问题的受访者中,零到两年类型经验者占 18.2%,三到六年者占 16.0%,七年及以上者占 21.0%。较新的类型使用者往往是常规用户和经验丰富的 Python 开发者:在 396 名零到两年类型经验的受访者中,306 人(77.3%)经常或总是使用类型提示,345 人(87.1%)使用 Python 至少三年。

面向类型新手开发者的指导应假定其具备 Python 经验,并展示如何向现有代码库添加类型。偶尔使用者需要一个配置极少、错误易于理解的有用首次检查。随着我们改变类型系统,我们应致力于支持更多模式,同时不使常见任务变得更难。

更好的 Callable 语法是一个切实可行的起点。它是被选择最多的缺失功能,在回答该问题的 1,486 名受访者中有 45.7% 选择了它。报告复杂性的受访者与样本其余部分的选择率相近。

较新的检查器迅速获得支持

在三次调查中,频繁使用类型提示的比例保持在 85.5% 到 88.0% 之间:2024 年为 88.0%,2025 年为 85.9%,2026 年为 85.5%。每年回答的群体不同,但总体比例保持一致。

检查器的选择则远不稳定。当 2024 年 Python 类型调查 询问 Python 类型系统缺少什么功能时,有一条回答如今读起来像是对今年结果中所体现变化的预告:

“更快的 Mypy。它缺乏速度导致生态分裂,其他类型检查器不支持 Mypy 插件,且整体行为不同。”——调查受访者

到 2026 年,开发者已有多个较新的开源检查器可供选择。速度或性能是选择检查器的首要原因,占 56.5%。两年使用相同的检查器列表,2026 年有 49.9% 选择了两个或更多,高于 2025 年的 46.0%。

Pyrefly 由 Meta 开发。受访者可选择多个检查器,因此百分比可能重叠。

开发者在工作流中混用检查器

在选择 Mypy 的 700 名受访者中,有 297 人还选择了其编辑器插件。另有 314 人选择了其他具名检查器集成,而未选择 Mypy 插件。

大多数 Pyrefly 受访者还选择了另一个检查器:264 人中有 220 人,即 83.3%。在自由文本回答中,开发者描述了其团队为何在检查器之间分工:

“因为我的团队成员使用不同的 IDE,我们在开发中使用多个类型检查器,但依赖 Mypy 进行 lint(本地和 CI)。”——调查受访者

“在本地,我们主要使用 Pyright,因为它是我们尝试过的唯一能完全理解我们代码库中所有更小众类型模式的选项。在 CI/CD 中,我们运行 Pyrefly,只在 Pyrefly 失败的文件上运行 Pyright,以提高检查性能。”——调查受访者 

在回答困难问题的 1,486 名开发者中,33.3% 报告了检查器之间的不一致。在选择多个静态检查器并回答困难问题的 738 名受访者中,有 315 人(42.7%)报告了检查器之间的不一致。

随着类型帮助从 Stack Overflow 转移,IDE 支持仍居核心地位

可读性或文档是使用类型提示的最多选择原因,在 1,571 名受访者中有 93.6% 选择了它。编辑器支持也排名很高:在给出数字评分的 1,494 人中,84.8% 选择了 4 或 5。在提供自己理由的 103 名开发者中,约 39% 提到了补全、导航、悬停信息或编辑器错误消息。

“大幅改善 IDE 工具提示/自动补全。”——调查受访者 

实时编辑器反馈很普遍:1,517 名受访者中有 82.9% 在编辑器中运行类型检查器。VS Code 是选择最多的编辑器或 IDE,占 59.3%。

开发者寻求帮助的途径也发生了变化。从 2024 年到 2026 年,Stack Overflow 的使用率从 46.4% 降至 22.9%,而大语言模型(LLM)对话的使用率从 26.0% 升至 41.7%。Python 类型标注文档的使用率从 56.2% 升至 65.9%。类型检查器专属文档的使用率在 2025 年经历下滑后,从 52.2% 升至 60.5%。通用 Python 文档的使用率则从 66.7% 降至 62.2%。

随着开发者从 Stack Overflow 转向类型标注和类型检查器专属文档,这些来源的质量变得更加重要。错误消息应链接到简短、相关的解释和示例。链接到文档也能为 LLM 对话工具提供更好的信息以供使用。

调查结果与原始数据

从 Python Typing Survey 2026 下载完整结果和数据。

致谢

本次调查于 2026 年 8 月 5 日至 9 月 2 日进行。调查的开展得到了 Meta 的 Pyrefly 团队、JetBrains 的 PyCharm 团队、Microsoft 的 Python 团队、Astral/OpenAI 的 ty 团队,以及 discuss.python.org 上的社区贡献者的支持。我们通过 Reddit、X、Mastodon、新闻通讯、Python 类型标注论坛、LinkedIn、Bluesky、Discord、Slack,以及类型检查器项目的网站和社交账号分享了该调查。我们对引文进行了轻度编辑,以修正拼写、语法和标点。我们感谢每一位参与调查、分享调查、审阅数据或为 Python 类型标注社区做出贡献的人。

文章 Python Typing Survey 2026: AI Tools and the Shifting Checker Landscape 首次发表于 Engineering at Meta。

来源:Meta Engineering Blog · engineering.fb.com

来源:RadarAI · aihot.news