PyTexas 2026 回顾
摘要
PyTexas 2026(4 月 17–19 日,奥斯汀)的演讲涵盖了 AI 智能体、代码质量、CPython 性能优化和安全等话题。核心主题包括审慎设计、智能体应专注于写代码而非决定写什么,以及代码质量对 AI 生产力的关键作用。
<p><a href="https://lobste.rs/s/ugbrsp/pytexas_2026_recap">评论</a></p>
查看缓存全文
缓存时间: 2026/04/21 02:58
# PyTexas 2026 回顾
Source: https://bernat.tech/posts/pytexas-2026-recap/
PyTexas (https://www.pytexas.org/) 是每年在德克萨斯州奥斯汀举办的 Python 会议。2026 年的会议于 4 月 17 日至 19 日在奥斯汀市中心的 Austin Central Library (https://library.austintexas.gov/central-library) 举行。
一句话总结:PyTexas 2026 于 4 月 17 日至 19 日在奥斯汀举办。周五是教程日,周六和周日是演讲环节,包含两场主题演讲和两轮闪电演讲。几个主题在不相关的演讲中反复出现:
- **刻意设计。**贯穿两场主题演讲的主线。Hynek Schlawack:领域模型就是*"the precious"*——先设计它,再在边界处进行转换。Dawn Wages:对技术栈的掌控是她提出的模型与职业专业化三大支柱之一。
- **Agent 应该写代码,而不是决定写什么。**Peter Sobot 的《Seven Stages of AI Grief》以这句话收尾。Al Sweigart 认为 "agentic engineering" 不过是 vibe coding 的更好听的说法,而且 almost-right 比 wrong 更糟。Maria Silvia Mielniczuk 的 MCP 演讲将同样的理念构建成了一种架构:模型只负责建议,只有服务器执行。Adam Gordon Bell 的跑步教练把确定性工作(纯 Python)与解释性工作(LLM)分开。周日的开场演讲直言不讳:当 AI 提交了一个糟糕的 PR,要修复流程,而不是修复模型。
- **代码质量是 AI 生产力的输入。**Miguel Vargas 的框架:在已经干净、安全且有类型的代码库中,AI agent 能产生更干净、更安全的代码,因此 Ruff、ty 和 uv 现在比以往更重要。
- **供应链仍然是攻击面。**Christopher Ariza 解释了为什么 `pip install` 仍在运行任意代码,`.pth` 文件、`sitecustomize.py` 和 `setup.py` 是需要特别关注的具体位置。
- **CPython 本身正在变得更快。**Jacob Coffee 介绍了 PEP 810 (https://peps.python.org/pep-0810/) 的懒加载导入(lazy imports)以提升启动速度;Charlie Lin 讲解了 free-threaded 构建以及如何让扩展模块在其下安全运行。
本文按日程顺序详细介绍了我参加的每场演讲的要点。
PyTexas 2026 周边:一只戴着牛仔帽和德州旗方巾的黄色橡皮鸭
PyTexas 2026 开幕致辞,现场有充气 Buc-ee 吉祥物
## 周五Link to heading (https://bernat.tech/posts/pytexas-2026-recap/#friday)
周五是教程日。**Heather Crawford** 上午讲授了 *Import is Important: The Secret Life of Python Modules and Packages*,我下午讲授了 *Becoming a Better Python Developer with AI* (https://www.pytexas.org/2026/schedule/)。幻灯片地址:gaborbernat.github.io/py-texas-26-workshop (https://gaborbernat.github.io/py-texas-26-workshop/)。我计划在未来几周内将我的教程单独写成一篇更详细的帖子。
## 周六Link to heading (https://bernat.tech/posts/pytexas-2026-recap/#saturday)
### Dawn Wages 主题演讲:Fine-Tune Your FutureLink to heading (https://bernat.tech/posts/pytexas-2026-recap/#dawn-wages-keynote-fine-tune-your-future)
副标题:*职业与模型专业化之我见*。
Dawn Wages 关于职业专业化的演讲幻灯片
Dawn(Anaconda (https://www.anaconda.com/) 社区与开发者关系总监,前 PSF 主席)开场先对 AI 生产力的叙事提出了警示:加州大学伯克利分校的早期研究表明,AI 加剧了工作负荷,而非减轻。更低的启停成本意味着任务碎片化,并侵占大脑所需的休息时间。她提醒观众喝水。
这场演讲将**实验循环**设定为工程师、研究人员和科学家的基础心智模型:计划 → 设计 → 构建 → 测试 → 发布,这是一场对话,而非线性路径。专业化是你通过足够刻意地运行这个循环所解锁的回报。
她的类比贯穿了整场演讲:LLM 专业化与职业专业化是同一套形状。
`` flowchart LR classDef model fill:#DBEAFE,stroke:#1E40AF,color:#1E3A8A; classDef career fill:#FEF3C7,stroke:#B45309,color:#78350F; P[Pre-training]:::model --> F[Fine-tuning]:::model --> S[Specialized prompting]:::model GE[Gen. education]:::career --> CS[Core skills]:::career --> EX[Experience]:::career --> AT[Adv. training]:::career --> SP[Specialization]:::career --> AP[Application]:::career --> MA[Mastery]:::career ``
Scaling laws 表明,更大的模型持续改进,而小语言模型很快达到瓶颈,因此让能力匹配问题比盲目追大小更重要。同样的回报 U 型曲线也适用于人类努力。
她认为**本体论(ontology)**是让模型和职业都能复利增长而非盲目扩张的杠杆。本体论比语义学更进一步:语义学问的是一个词在语境中意味着什么("sidecar" 可能是一种饮料、摩托车边车或 Azure 组件),而本体论则正式定义了存在哪些实体、它们如何关联、以及受什么规则支配。知识图谱领域的工具(OWL (https://www.w3.org/OWL/)、RDF (https://www.w3.org/RDF/)、SPARQL (https://www.w3.org/TR/sparql11-overview/)、triple stores)支撑了这一点,而在多 agent 系统中,本体论对于 agent 之间的语义一致性变得至关重要。
她梳理了模型侧的专业化技术:**LoRA** (https://arxiv.org/abs/2106.09685)(Transformer 层内的小型适配器)、full fine-tuning、参数高效方法、本体论驱动的数据清洗、world models(预测下一个*状态*而非下一个词)、**RAG**(retrieval-augmented generation)以及 SLM 优化(知识蒸馏、剪枝、量化、定向微调)。
然后她将每一项映射到职业发展的三大支柱下:
1. **Efficiency through expertise。**帕累托 80/20 法则:专注于能带来 80% 结果的 20% 技能。个人知识库就是你职业生涯的 RAG。教学即蒸馏(重复解释,深化掌握)。剪枝低价值任务,要求管理者明确说出什么才算有价值。通过相邻领域的小型模块化学习获得领域灵活性。
2. **Small iterations, big wins。**频繁的 check-in 会产生复利。设计能给你定期反馈的工作流,而不是攒到一次大交付。
3. **Ownership over your stack。**在软件中:你的工作流、数据、模型和基础设施。在职业中:你的收入、声誉、人脉和技能。她倡导 local-first AI,并驳斥了"你需要一台 Mac Mini"的条件反射:关键在于一个有明确边界的可控环境,而非硬件。
她最后将专业化重新定义为**"战略性无知的艺术"**:刻意选择*不*去了解什么,这样你才能设定边界、深化专长、保护精力。Scaling laws 同样适用于人类:平衡技能(规模)、经验(数据)和精力/时间(算力)。"放轻松"这类 burnout 建议出于善意,但在现实压力下显得天真。建立支持性社区(她称之为"战友式朋友")。
幻灯片:dawnwages.info/pytexas-keynote-26 (https://dawnwages.info/pytexas-keynote-26/)(也可通过 bit.ly/pytexas-keynote-26 (https://bit.ly/pytexas-keynote-26) 访问)。
### Moshe Zadka: Python as Your DSLLink to heading (https://bernat.tech/posts/pytexas-2026-recap/#moshe-zadka-python-as-your-dsl)
Moshe 的论点:只要设计得当,*任何* Python 代码都可以充当领域特定语言。失败模式是构建"伪 Python":通过运行时魔法破坏 Python 规则的系统。
早期 Django 就是这样做的:当你声明 `ForeignKey` 时,它会注入 `book_set` 之类的名字,隐藏全局 `db` 对象,并创建在源代码中不可见的反向关系。编辑器和 linter 无法解析它们,测试在框架外运行时会失败,pickle 失败因为类没有附加到模块上,用户也无法信任自省。
Django 最终为此进行了一轮*magic removal*。
**为什么魔法有害:**
- **破坏工具和可发现性。**IDE 无法解析注入的名字。Ctrl+点击失效。Linter 跟你作对。
- **损害可复用性。**在 DSL 内部编写的代码通常无法在框架外复用(包括测试)。
- **阻碍调试。**`print` 和 `logging` 变得不可靠。Pickle 损坏。
- **让经验丰富的 Pythonista 感到意外。**"人们会假设他们可以做所有在 Python 里能做的事,但他们做不到。"
更好的路径是成为有效、地道 Python 的 DSL。Moshe 的例子:
- **NumPy** (https://numpy.org/):很少有人称它为 DSL,但切片语法(`x[0, ..., -1]`)、广播和运算符重载(`+`、`*`、`@`)使其成为 DSL。它的影响力大到让 `...` 变成了语言字面量。所有标准 Python 工具(调试器、性能分析器、IDE、测试运行器)都对它有效。
- **Stan**:基于上下文管理器和可调用对象构建的 HTML/XML 构造 DSL。`with tag('html'): with tag('body'): ...` 使用普通的 `with` 块构建树,没有魔法导入,且调试器可用。
- **现代 Django** (https://www.djangoproject.com/) 模型:类属性代表数据库列。库仍在底层使用元类,但接口是透明的:拼错关系名会在导入时报错。
- **Pyramid** (https://trypyramid.com/) 路由:`@view_config(route_name='home', renderer='string')` 作为函数装饰器。配置器扫描带装饰器的函数来组装应用,这保持了路由的可发现性和可测试性。
**无需魔法就能完成工作的技术:**dunder 方法(`__call__`、`__getitem__`)提供运算符风格的人机工程学,装饰器用于声明式配置,上下文管理器用于嵌套作用域,生成器用于惰性流,元类用于在类创建时介入(谨慎使用)。
对于插件发现,优先使用 `importlib.metadata.entry_points` (https://docs.python.org/3/library/importlib.metadata.html) 或 `pluggy` (https://pluggy.readthedocs.io/),而非全局注册副作用。
**Moshe 的 Pythonic DSL 原则:**要求显式导入,保持可发现性(jump-to-definition 必须可用),支持标准测试和调试,利用熟悉语法而非自定义解析器,从小处开始并允许用户在 DSL 不够用时回退到纯 Python,不要让懂 Python 的人感到意外。
当用户通过相同的三四种模式反复与你的系统交互时,构建 DSL。对于一次性或高度多变的任务,跳过它。
### Adam Gordon Bell: I Built an AI Running Coach (That Actually Remembers My Training)Link to heading (https://bernat.tech/posts/pytexas-2026-recap/#adam-gordon-bell-i-built-an-ai-running-coach-that-actually-remembers-my-training)
Adam Gordon Bell 的 2025 Monster of Mazinaw 10K 成绩幻灯片
Adam(Pulumi (https://www.pulumi.com/) 社区工程师)打造了"Momentum Bot",为了在 2026 Monster's Mazinaw 30K 中击败他的朋友 Malcolm。这是一场穿越加拿大地盾(Canadian Shield)的超马。他的幻灯片展示了 2025 年 10K 成绩:Malcolm Clarke 第 12 名,Adam Bell 第 25 名。
之前的尝试都失败了,因为他每年赛前只训练几个月;这次他承诺打造一个能全年训练他的教练。
**架构。**Strava (https://www.strava.com/) → AWS Lambda (https://aws.amazon.com/lambda/)(定时任务 + webhook)→ DynamoDB (https://aws.amazon.com/dynamodb/)(结构化跑步数据)→ S3 (https://aws.amazon.com/s3/)(原始归档)→ Slack (https://slack.com/)。Peloton (https://www.onepeloton.com/) 没有公开 API,所以他的 Lambda 用刷新的 JWT 抓取 Peloton 账户。
`` flowchart LR classDef input fill:#DBEAFE,stroke:#1E40AF,color:#1E3A8A; classDef compute fill:#FEF3C7,stroke:#B45309,color:#78350F; classDef store fill:#E5E7EB,stroke:#4B5563,color:#1F2937; classDef output fill:#DCFCE7,stroke:#15803D,color:#14532D; Watch[Fitness watch]:::input --> Strava:::input Peloton[Peloton web UI]:::input -- JWT scrape --> Lambda[AWS Lambda]:::compute Strava -- webhook --> Lambda Cron[Daily cron 6am]:::input --> Lambda Lambda --> Dyn[DynamoDB]:::store Lambda --> S3[S3 raw archive]:::store Lambda --> LLM[LLM interpretation and motivation]:::compute LLM --> Slack:::output ``
数据以每秒粒度从多个来源(运动手表、Peloton、踏频传感器)到达,经时间戳对齐并归一化为逐秒列式格式,再汇总为每次活动的统计:心率区间时间、平均坡度、踏频、功率和心率趋势。
**他反复强调的分界。**确定性工作(距离、配速、平均值)保留在纯 Python 中。LLM 只处理他原本需要用眼睛看数据才能做的事:解读、激励和自适应反馈。这降低了成本,并让系统可预测。
**训练理念。**Polarized training:80% 低强度(Zone 2)用于耐力和防伤,20% 高强度(Zone 4+)用于速度。周三跑三次,周末一次长跑,一次力量训练。计划随季节调整(秋季堆量、冬季跑步机、春季越野)。
**自适应反馈。**如果 Adam 错过一两天,
相似文章
PyCon US 2026 类型峰会回顾
本文回顾了 PyCon US 2026 类型峰会,详细介绍了关于 Python 类型化进展的关键演讲,包括 PEP 提案、AI 辅助类型检查实验以及类型委员会问答环节。
欢迎参加2026年长滩PyCon US大会——今年新增AI与安全专题
PyCon US 2026将于5月13日至19日在加州长滩举行,设有全新的AI与安全专题。AI专题涵盖AI辅助开发、笔记本电脑上的LLMs、语音代理以及适用于AI应用的Python异步模式等讲座。
PyCon US 2026 打包峰会总结
PyCon US 2026 上 Python 打包峰会的总结,涵盖主题包括 Wheel 2.0、Zstandard、PyPI 滥用向量以及 conda 与 pip 的比较。
AI Agent 安全 - MIT 6.566 客座讲座
MIT 6.566 客座讲座:AI Agent 安全,涵盖系统级威胁、提示注入、工具使用漏洞,以及使用 GPT-5.4 和 Qwen 3.5 等大语言模型的演示。
@arizeai:.@Chi_Wang_ 在过去几年中不断拓展 Agent 的边界,从 AutoGen 的多智能体愿景到……
Arize AI 将在旧金山举办 Observe 2026 大会,聚焦 AI Agent 及其评估领域,OpenAI、Cursor 和 Uber 的演讲嘉宾将出席。本次大会包含关于多智能体系统及前沿 Agentic AI 的主题演讲。