帮助 Python 用户构建 CLI 界面:直观易写、简单高效 | 开源日报 No.240

server/2024/9/24 7:42:10/

picture

tiangolo/typer

Stars: 13.7k License: MIT

picture

typer 是一个构建出色命令行界面(CLI)的库,基于 Python 类型提示。它旨在让开发者轻松创建用户喜欢使用的 CLI 应用程序。其主要功能和核心优势包括:

  • 直观易写:强大编辑器支持、自动补全、减少调试时间。
  • 易用性:对最终用户友好,提供自动帮助和各种 shell 的自动补全。
  • 简短高效:减少代码重复、每个参数声明多个特性、减少错误。
  • 简单上手:简单示例只需添加 2 行代码到应用中即可开始使用。
  • 可扩展性强:可以随意增加复杂度,创建任意复杂的命令树和子命令组合,并具备选项和参数功能。

Typer 还是 CLI 的 FastAPI 版本,在安装后通过 pip install typer 即可快速开始使用。

intel-analytics/ipex-llm

Stars: 5.6k License: Apache-2.0

ipex-llm 是一个 PyTorch 库,用于在 Intel CPU 和 GPU 上加速本地 LLM 推断和微调。
项目主要功能和核心优势包括:

  • 在 Intel CPU 和 GPU 上加速本地 LLM 推断和微调
  • 与多个外部库(如 llama.cpp、HuggingFace transformers)无缝集成
  • 支持 50 多种模型的优化/验证
  • 提供低延迟的运行效果

OneUptime/oneuptime

Stars: 3.3k License: Apache-2.0

picture

oneuptime 是完整的开源可观测性平台。

  • 实时监控在线服务的可用性和响应时间。
  • 提供状态页面,让客户了解服务状态。
  • 管理事故,设置值班轮换,运行测试,分析日志等功能。
  • 整合多种工具于一个平台中。

uptrace/bun

Stars: 3.1k License: BSD-2-Clause

bun 是 SQL-first 的 Golang ORM。
该项目解决了通过 SQL 优雅地编写复杂查询的问题。

  • 支持 PostgreSQL、MySQL(包括 MariaDB)、MSSQL、SQLite。
  • 使用传统的 SQL 提供类似 ORM 的体验,支持结构体、映射、标量以及映射/结构体/标量切片。
  • 批量插入、批量更新使用通用表达式和批量删除。
  • 数据装载和迁移功能。
  • 软删除功能。

amlweems/xzbot

Stars: 3.0k License: NOASSERTION

picture

xzbot 是用于探索 xz 后门(CVE-2024-3094)的笔记、蜜罐和漏洞演示工具。

  • honeypot:用于检测利用尝试的虚假易受攻击服务器
  • ed448 patch:修补 liblzma.so 以使用自己的 ED448 公钥
  • backdoor format:后门载荷格式
  • backdoor demo:触发 RCE 的 CLI,假设已知 ED448 私钥

http://www.ppmy.cn/server/27949.html

相关文章

Spring Data JPA数据批量插入、批量更新真的用对了吗

Spring Data JPA系列 1、SpringBoot集成JPA及基本使用 2、Spring Data JPA Criteria查询、部分字段查询 3、Spring Data JPA数据批量插入、批量更新真的用对了吗 前言 在前两篇文章已经介绍过,在使用Spring Data JPA时,DAO层的Respository通过继承J…

unix 命令总结

一、unix 命令总结 1.文件传输 rz/sz to transfer files sz filename // remote host 下载到本地 rz // 本地上传得到host 2.shell 后台运行,进程独立存在,不属于当前终端的子进程 https://www.cnblogs.com/chinas/p/7130378.html 3. 执行.…

2024五一杯数学建模竞赛A题完整成品论文和代码分析:建立钢板切割的工艺路径动态规划、贪心与分层优化模型

2024五一杯数学建模竞赛A题:建立钢板切割的工艺路径动态规划、贪心与分层优化模型 2024五一数学建模A题完整代码和成品论文获取↓↓↓↓↓ https://www.yuque.com/u42168770/qv6z0d/gyoz9ou5upvkv6nx?singleDoc# 本文文章较长,建议先目录。经过不懈的…

mysql如何优化

explain id:序列号,越大优先级越高,相同从上往下执行 null最后执行 select_type简单simple 复杂的查询:primary subquery derived union table:表 type:null > system > const > eq_ref > ref > range > index &…

python按时间分割日志

背景介绍 现在的项目都是RotatingFileHandler,指定每个文件大小,指定日志文件的份数。有一个缺点就是要看某一天的日志,需要把这一天之前的最后一份日志和这一天之后的第一份日志都拷贝下来,很多不是自己想要的内容。 需求 想要一个按时间,最好能按天分割日志。查看Pyth…

Daz Install Manager 安装daz表情包 表情动画

当然可以!以下是关于使用 Daz Install Manager (DIM) 安装插件的入门教程: 第一步:安装 Daz Install Manager (DIM) 从官方网站下载 Daz Install Manager (DIM) 安装程序。运行安装程序,按照提示完成安装。通常建议保持默认安装…

树莓派点亮LED灯

简介 使用GPIO Zero library 的 Python库实现点亮LED灯。接线 树莓派引脚参考图如下: LED正极 接GPIO17 LED负极 接GND 权限 将你的用户加到gpio组中, 否则无法控制GPIO sudo usermod -a -G gpio 代码 from gpiozero import LED from time impor…

Qt 配置 FFmpeg

进入 GitHub,下载带 shared 后缀的那个包即可 我将下载好的文件夹改名为 FFmpeg并将 FFmpeg 文件夹放在 Program Files 目录下 下载好后将 bin 添加到系统环境中 C:\Program Files\FFmpeg\bin若用 QMake 构建项目 在配置文件 pro 中 添加到文件末尾就行 FFMPEG_HO…