这里是按照「分类」阅读往期的 HelloGitHub 月刊内容, 您目前在查看 HelloGitHub Python 项目 集合。
轻量级的文本分块 Python 库。这是一个专为 RAG 应用设计的轻量级文本分块库,它简单易用、速度快,能够按固定大小分割文本,支持多种分词器、向量模型和灵活的分块策略,适用于长文本处理、构建 RAG 应用等场景。
from chonkie import TokenChunker from tokenizers import Tokenizer tokenizer = Tokenizer.from_pretrained("gpt2") chunker = TokenChunker(tokenizer) chunks = chunker("HelloGitHub! Chonkie, the chunking library is so cool! I love the tiny hippo hehe.") for chunk in chunks: print(f"Chunk: {chunk.text}") print(f"Tokens: {chunk.token_count}")
操作字体文件的 Python 库。这是一个用于编辑和转换字体文件的 Python 库,支持 TrueType 和 OpenType 字体与 XML 格式(TTX)之间的相互转换,兼容多种字体格式,适用于编辑、调试和优化字体等场景。
from fontTools.afmLib import AFM f = AFM("Tests/afmLib/data/TestAFM.afm") print(f["A"]) # (65, 668, (8, -25, 660, 666)) f.FontName = "TestFont HelloGitHub" f.write("testfont-hellogithub.afm")
轻松捕获 Python 程序中 HTTP(S) 请求的工具。该项目是用于帮助开发者调试 Python 程序中的 HTTP(S) 请求的工具。通过 pyhttpdbg 命令运行程序,即可在浏览器中查看发出的 HTTP 请求,支持脚本运行、交互式控制台、单元测试多种运行模式。

专为逆向工程设计的 GDB/LLDB 插件。这是一个专为 GDB 和 LLDB 调试器设计的插件,支持寄存器状态显示、内存搜索、内存泄漏查找等功能,适用于底层软件开发、硬件调试和逆向工程等场景。

电力系统分析 Python 库。这是一个用于电力系统分析的 Python 库,专注于电力和多能源系统的建模与优化。它基于 Pandas、NumPy、GLPK、Cbc 等库,能够高效计算最优潮流优化(OPF)、线性和非线性电力流,并支持模拟各种电力和能源系统组件的功能。
import pypsa # create a new network n = pypsa.Network() n.add("Bus", "mybus") n.add("Load", "myload", bus="mybus", p_set=100) n.add("Generator", "mygen", bus="mybus", p_nom=100, marginal_cost=20) # load an example network n = pypsa.examples.ac_dc_meshed() # run the optimisation n.optimize() # plot results n.generators_t.p.plot() n.plot() # get statistics n.statistics() n.statistics.energy_balance()

GitHub README 文件本地预览工具。这是一款用于本地预览 GFM(GitHub Flavored Markdown)文件的工具。它通过 Flask 和 GitHub Markdown API,能在本地环境中渲染并显示与 GitHub 完全一致的 Markdown 文件效果。
$ cd myrepo $ grip * Running on http://localhost:6419/
小米开源的 HA 插件。该项目是由小米开源的 Home Assistant 集成插件,可实现小米 IoT 智能设备与 Home Assistant 的无缝集成,支持设备发现、状态同步、远程控制等功能。

相见恨晚的 Python 项目打包工具。这是一个开源的 Python 项目打包工具,专为跨环境部署和无法访问公网的部署场景设计。它能够将 Python 项目及其所有依赖,甚至是 Python 解释器(可选),打包成单个可执行文件(.pex),让开发者无需安装运行环境,即可直接运行 Python 程序,支持 Linux 和 macOS 系统。
$ pex "uvicorn[standard]" -c uvicorn --inject-args 'example:app --port 8888' -ohellogithub-app.pex $ ./hellogithub-app.pex INFO: Started server process [2014] INFO: Waiting for application startup. INFO: ASGI 'lifespan' protocol appears unsupported. INFO: Application startup complete. INFO: Uvicorn running on http://127.0.0.1:8888 (Press CTRL+C to quit) ^CINFO: Shutting down INFO: Finished server process [2014]
快速获取 Docker 容器启动命令的工具。这是一个用于解析运行中容器的工具,可自动生成对应的 docker run 启动命令。它能够提取容器的配置信息,包括端口绑定、映射卷、环境变量、网络设置等,适用于复制、调试或迁移容器的场景。
$ runlike -p redis docker run \ --name=redis \ -e "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" \ -e "REDIS_VERSION=2.8.9" \ -e "REDIS_DOWNLOAD_URL=http://download.redis.io/releases/redis-2.8.9.tar.gz" \ -e "REDIS_DOWNLOAD_SHA1=003ccdc175816e0a751919cf508f1318e54aac1e" \ -p 0.0.0.0:6379:6379/tcp \ --detach=true \ myrepo/redis:7860c450dbee9878d5215595b390b9be8fa94c89 \ redis-server --slaveof 172.31.17.84 6379