你好,我是猫哥。这里每周分享优质的 Python、AI 及通用技术内容,大部分为英文。周刊开源在 Github 上,喜欢请给颗小星星支持下~

本期分享了 11 篇文章,12 个开源项目,全文 1334 字。

**重要提示:**本周刊即将迎来第 100 期,即日起续订或新订阅,可享受八折优惠,欢迎领取优惠券 —> https://www.xiaobot.net/coupon/d2c69b05-91b8-4e2b-b346-e7bc4dbc141a

🦄文章&教程

1、Python 中如何使用与异步无关的装饰器?

希望将装饰器同时用在同步和异步函数上,会遇到哪些挑战?文章介绍了如何用生成器创建出对同步和异步函数都适用的装饰器。文章出自 Patreon 技术博客。

2、无服务器的 Python 网站

作者分享了将一个小型 Python 项目完全重构为无服务器架构的过程,从 VPS 到 AWS Lambda,成本从每年 350 美元降到每月 2 美元。

3、简单聊聊常见的负载均衡算法

文章介绍了一些常见的负载均衡算法实现,分享了 Python 代码示例,包括随机选择算法、轮询算法、最小链接算法、一致性 Hash 算法。

4、CPython 中隐藏的 XKCD 彩蛋

Python 中有一则比较出名的 xkcd 漫画彩蛋:import antigravity ,除此之外,作者偶然发现了另一个 xkcd 彩蛋,关于“unreachable state”:当出现了不可能出现的情况,那么一切皆有可能……

5、朋友不会让朋友用 Python 开发生产软件

八年 Python 经验的作者吐槽了两个主要痛点:类型和异常。

6、为什么我们选择 LangGraph 开发编码助手?

文章分享了 Qodo 公司选择 LangGraph 框架来开发 AI 编程助手的原因和过程,介绍了 LangGraph 的状态机模型、简洁 API 设计、节点式架构、内置状态管理等特性。

7、能生成正确代码的 Python 测试执行器

介绍了一个名为 Unvibe 的 Python 工具,可通过单元测试来生成正确的代码实现,其原理是用单元测试作为奖励函数,通过蒙特卡洛树搜索算法调用大模型生成代码,直至通过所有测试。

8、Prospero 挑战:更多垃圾回收

分享了如何通过垃圾回收优化一个 Python 程序,将运行时间从 40 秒缩短到 10 秒,内存使用从近 60 GB降至 1 GB。另外使用 CuPy 替代 NumPy,运行时间缩短至 1.5 秒。

9、PyTorch 的内部机制

一篇非常长的文章,深入介绍了 PyTorch 的内部机制,包括张量数据结构、自动微分机制、内存管理和操作实现等。

10、程序员阅读清单:我喜欢的 100 篇技术文章(41-50)

《Python工匠》作者的技术文章分享系列的第三部分,该系列偏重于程序员通识、软件工程、后端开发、技术写作、Python 语言、Go 语言。

11、编程十年的感悟

作者分享了多年对编程技术的思考,以及对职场人生的体味。“程序员的竞争力并不是写代码,也并不是哪门语言或者框架, 其核心竞争力是通过技术解决问题的能力”。

🐿️项目&资源

1、Agent-S:像人类一样使用计算机的 agent 框架

一个模块化可扩展的计算机使用框架,旨在实现与计算机的自主交互,自动执行复杂任务。(star 1.4K)

2、basedpyright:给 pyright 加上类型检查和 pylance 功能

pyright 的 fork 分支,具有类型检查改进、改进的 vscode 支持和内置在语言服务器中的 pylance 功能。(star 1.7K)

3、gurubase:RAG 系统,创建 AI 问答助手

开源的 RAG 系统,支持网页、PDF、视频和 GitHub 仓库等多种数据源,快速开发网站小部件、Slack 机器人和 Discord 机器人。

4、compress_json:读写压缩的 JSON

操作压缩的 JSON 文件,支持的格式有 gzip、bz2 和 lzma(或 xz)。

5、lihil:速度飞快的异步 Web 框架—lihil: Unbelievably fast async webframework

纯 Python 实现的 Web 框架,特性有依赖注入、OpenAPI 文档 & 错误响应生成器、问题页面、数据验证&参数解析、内置消息系统、对 AI 的强大支持。

6、fastapi_mcp:将 FastAPI 接口配置成 MCP

自动发现所有 FastAPI 接口并将其转换为 MCP 工具,直接将 MCP 服务器挂载到 FastAPI 应用上。

7、arrg:开发模块化的命令行应用

使用声明式、基于类的策略开发模块化的命令行应用。

8、mcp-obsidian:与 Obsidian 交互的 MCP server

通过 Obsidian 的 REST API 社区插件,让 MCP 可与 Obsidian 交互,如列出目录和文件、读取文件内容、搜索文件、编辑笔记等。

9、local-deep-researcher:网页研究和报告撰写助手

利用 Ollama 或 LMStudio 的 LLM,联网搜索、总结并反思,最终生成 Markdown 总结。(star 6.7K)

10、douyin-downloader:抖音批量下载工具

批量下载抖音内容,去水印,支持视频、图集、合集、音乐(原声)。支持命令行参数或 YAML 配置文件方式运行。(star 2.3K)

11、fastopenapi:生成和集成 OpenAPI 文档

使用 Pydantic v2 和各种框架(Falcon、Flask、Quart、Sanic、Starlette、Tornado)来生成和集成 OpenAPI 文档。

12、star-vector:用于 SVG 生成的基础模型

用于可缩放矢量图形(SVG)生成的多模态视觉语言模型,它可用于执行图像到 SVG 和文本到 SVG 的生成。(star 2.7K)

🐧 往年回顾

Python 潮流周刊#45:越来越多的 AI 自动开发框架(2024.04.06)

🐱欢迎订阅

技术周刊是聪明人在信息过载时代中筛选优质知识的聪明手段。这是一个专为国内 Python 开发者量身打造的资讯平台,为你挑选最值得分享的文章、教程、开源项目、软件工具、播客和视频、热门话题等丰富内容。立即订阅,每周将收到一篇文章推送,每周进步一点点。

欢迎留言,说说你最喜欢本期的哪一则分享?大家反馈得越多,我今后分享的也会越多!

欢迎将本专栏分享给同样爱学习的同学,当有人通过你分享的海报或者链接,购买了专栏,那么你将获得 50% 的返利。

Python 潮流周刊第 2 季完结了,分享几项总结

Python 潮流周刊第一季精华合集(1~30)

万字浓缩版,Python 潮流周刊第 1 季的 800 个链接!