| title | Python 潮流周刊#79:Python 的元数据困境 |
|---|---|
| pubDate | 2024-12-01 |
你好,我是猫哥。这里每周分享优质的 Python、AI 及通用技术内容,大部分为英文。周刊开源在 Github 上,喜欢请给颗小星星支持下~
本期分享了 12 篇文章,12 个开源项目,2 则热门讨论,全文 2200 字。
作者指出 Python 的元数据系统太复杂了,存在 “缺乏约束” 的问题。通过与 JavaScript 对比,文章列出了 Python 元数据的诸多问题:复杂的元数据访问、必须重新生成的元数据、缓存失效不明确以及动态元数据导致的解析器效率低下。
Talk Python 网站是 2015 年用 Pyramid 框架开发的,但该框架已发展停滞。文章讨论了多种知名 Python Web 框架,介绍了为什么不选择它们,为什么会选择 Quart(异步 Flask),以及迁移的过程。
3、Python 不仅是胶水,它是一个隐性的 JIT 生态系统
在传统的 JIT 编译中,程序会在运行时优化其热路径(常执行的代码段)。作者发现 Python 的社区生态系统做了非常相似的事,在某些路径上持续遇到性能瓶颈时,生态系统会优化这些路径。
作者尝试了用 Python 类型提示,但发现它带来的收益不比麻烦多。偶尔开发小型的单人 Python 项目,这种情况下确实可以不太关心类型提示的使用。(附:该作者还写了一篇 我使用 Python 类型提示和 mypy 的一些经验)
使用热门的 uv 来介绍 Python 项目管理,这是系列第二篇,关于项目构建与发布流程,包括构建系统、源码树、构建前后端接口、可编辑安装和自定义构建过程,以及如何处理依赖和元数据等问题。
作者用 Rust、C#、NodeJS、Python、Go、Java 的协程,进行并发任务占用内存的基准测试,分别测试 1、10K、100K、1M 个任务时,这些编程语言的表现。(附:作者在去年做的对比 不同语言运行100万个并发任务需要多少内存?)
作者分享了使用 Streamlit 开发 Web UI 的体验,介绍了在集成语音接口和处理长时间运行任务时遇到的挑战,并分享了如何通过自定义组件和多线程来克服困难。
8、使用 GitHub Actions 运行 Python 脚本
作者分享了使用 GitHub Action 作自动化的经验,着重介绍 GitHub Action 工作流的配置,如何调用 Python 脚本,实现了自己的一项自动化任务。
作者受到 Python 打包解决数独问题的启发,开发了一个名为 pipip 的求解器,利用 Python 包依赖解析器来解决布尔可满足性(SAT)和 0/1 整数规划(IP)问题。文章详细解释了原理、实现细节和使用示例。
作者运行了 6 年的 Django 项目有近 300 个模块,如何降低迁移的风险成了一项挑战。文章介绍了用 django-model-info 生成迁移图,识别安全压缩的迁移路径并做压缩,整个过程减少了迁移文件数,优化了部署时间。
了解的编程语言越多,你对它们的理解就越深。作者对比了 Python、R、Haskell、APL 和 Julia 等语言实现累积运算(如accumulate和cumsum)的方法,能看出它们在解决相同问题时的多样性。
10 多种编程语言执行 10 亿次嵌套循环,所花费的执行时间做成了动图,看到末位的 Python 一直在龟速挪动,真为它感到着急……
提供标准化的接口,让开发者可方便地使用多个 LLM。使用类似于 OpenAI 的界面,专注于聊天模式。(star 5.6K)
2、opennb:从 GitHub 代码仓或 URL 中打开 Jupyter 笔记本
支持基于 Github 代码仓文件路径打开 ipynb 文件,自动检测默认分支,支持使用指定分支。也支持直接的 URL 打开 ipynb 文件。支持给笔记本传递参数。
基于 Plotly 实现的简单工具,可绘制美观且交互式的山脊线图。
4、Qwen2.5-Coder:阿里云 Qwen 大语言模型的代码版本
功能强大的国产开源大语言模型,支持 92 种编程语言,上下文长度为 128K Token。(star 3.1K)
5、pex: 用于生成 .pex 文件、锁文件和 venv 的工具
.pex 是一种 Python 可执行文件,是对 PEP-441 中思想的拓展,使 Python 程序的部署像cp 一样简单。单个 pex 文件可以包含多个 Python 发行版,这意味着它可在 Linux 和 OS X 间移植。(star 2.9K)
6、pipe-operator: Elixir 管道运算符的 Python 实现
这个库让你在 Python 中用类似于 elixir 管道的语法。
从东方财富获取数据,实现了若干种选股策略,包括海龟交易法则、缠中说禅牛市买点,以及其他若干种技术形态。(star 2.2K)
8、LLMLLM-Engineers-Handbook:LLM 的实用指南手册
这本电子书的目标是教你用最佳实践创建端到端的基于 LLM 的系统,包括数据采集与生成、训练管道、简单的 RAG 系统、生产就绪的 AWS 部署、全面的监控、测试和评估框架。(star 1.8K)
一款受 Spiderfoot 启发的多功能扫描仪,旨在自动化你的侦察、漏洞赏金和 ASM。(star 7.1K)
一个自托管的网络爬虫,通过 XPath 指定元素来抓取数据。支持以 URL 进行抓取、管理之前的任务、用户管理、查看日志、统计分析、集成 AI 等功能。(star 1.2K)
支持为模块定义明确的规则,并在外部模块导入你模块前,校验它是否符合这些规则,减少因导入不当或环境配置错误而导致的错误。
12、zerox:由视觉模型支持的 PDF 转 Markdown
利用视觉模型 AI 作精准的文件内容提取,克服奇怪的布局、表格和图表等难题。(star 6.7K)
公司有很多 Python 项目,生产用什么部署方案?如何作包管理?多服务间通信是用 http 还是 rpc?
pyvideo 上有 19163 场会议演讲,大家有什么最喜欢的演讲或演讲者可以推荐么?
Python 潮流周刊#29:Rust 会比 Python 慢?! (2023.12.02)
技术周刊是聪明人在信息过载时代中筛选优质知识的聪明手段。这是一个专为国内 Python 开发者量身打造的资讯平台,为你挑选最值得分享的文章、教程、开源项目、软件工具、播客和视频、热门话题等丰富内容。立即订阅,每周将收到一篇文章推送,每周进步一点点。
欢迎留言,说说你最喜欢本期的哪一则分享?大家反馈得越多,我今后分享的也会越多!
欢迎将本专栏分享给同样爱学习的同学,当有人通过你分享的海报或者链接,购买了专栏,那么你将获得 50% 的返利。


