logo
0
0
WeChat Login
fix: 严重错误修复 - 将项目名称从uv更正为au,修复GitHub仓库链接

au - 一个快速的Python版本和包管理工具

au 是一个受 au 和 conda 启发的快速Python版本和包管理工具,提供了安装Python版本、管理虚拟环境和安装包的功能。

功能特性

  • 🚀 快速安装 - 快速下载和安装Python版本
  • 🐍 版本管理 - 轻松管理多个Python版本
  • 📦 虚拟环境 - 快速创建和管理虚拟环境
  • 📋 包管理 - 快速安装和管理Python包
  • 🏗️ 项目管理 - 类似uv的项目依赖管理
  • 🔍 智能解析 - 高级依赖冲突检测和解决
  • 💾 高效缓存 - 内容寻址缓存和LRU淘汰策略
  • ⚙️ 配置管理 - 灵活的YAML配置选项
  • 🔄 同步功能 - 类似conda的环境同步机制

安装

# 从源码构建 git clone https://github.com/ForesAi/au.git cd au go build -o au main.go # 或者使用 go install go install github.com/ForesAi/au@latest

快速开始

Python版本管理

# 安装Python版本 au python install 3.11.0 au python install 3.12.0 # 列出已安装的Python版本 au python list # 设置默认Python版本 au python use 3.11.0

虚拟环境管理

# 创建虚拟环境 au venv create myproject au venv create myproject --python 3.12.0 # 列出虚拟环境 au venv list # 激活虚拟环境 au venv activate myproject # 删除虚拟环境 au venv remove myproject

包管理

# 安装包 au pip install requests au pip install numpy pandas # 从requirements文件安装 au pip install -r requirements.txt # 列出已安装的包 au pip list # 卸载包 au pip uninstall requests # 导出依赖 au pip freeze > requirements.txt

配置

au 使用 ~/.au.yaml 配置文件。你可以自定义以下设置:

default_python: "3.11.0" python: install_dir: "~/.au/python" venv: dir: "~/.au/venv" pip: index_url: "https://pypi.org/simple/" extra_indexes: [] timeout: 30 retries: 3 cache: dir: "~/.au/cache" max_size: "1GB" ttl: "7d"

命令参考

au python

Python版本管理命令。

子命令:

  • install <version> - 安装指定的Python版本
  • list - 列出已安装的Python版本
  • use <version> - 设置默认Python版本

au venv

虚拟环境管理命令。

子命令:

  • create <name> - 创建新的虚拟环境
  • list - 列出所有虚拟环境
  • remove <name> - 删除虚拟环境
  • activate <name> - 显示激活虚拟环境的命令

au pip

包管理命令。

子命令:

  • install <packages...> - 安装Python包
  • list - 列出已安装的包
  • uninstall <packages...> - 卸载Python包
  • freeze - 以requirements格式输出已安装的包

选项:

  • -r, --requirement <file> - 从requirements文件安装
  • --editable - 以可编辑模式安装包
  • --index-url <url> - 指定包索引URL
  • --upgrade - 升级指定的包

开发

构建

go build -o au main.go

测试

go test ./...

贡献

欢迎提交 Issue 和 Pull Request!

许可证

MIT License

功能对比

功能特性auaucondapip
Python版本管理
虚拟环境管理
包安装速度🚀 快速🚀 极快🐢 较慢🐢 较慢
依赖解析🔍 智能解析🔍 智能解析🔍 智能解析❌ 基础
锁文件支持✅ au.lock✅ au.lock
项目管理✅ pyproject.toml✅ pyproject.toml
多环境支持✅ dev/prod/test✅ dev/prod✅ environments
缓存机制✅ 内容寻址+LRU✅ 内容寻址✅ 索引缓存
并发安装✅ 支持✅ 支持
配置文件✅ au.yaml✅ pyproject.toml✅ .condarc
跨平台支持✅ Linux/Windows/macOS✅ Linux/Windows/macOS✅ Linux/Windows/macOS✅ 全平台
Docker支持✅ 官方镜像✅ 官方镜像✅ 官方镜像
GitHub Actions✅ 自动构建✅ 自动构建✅ 自动构建
二进制分发✅ 多架构✅ 多架构✅ 多架构

性能对比

操作auaucondapip
创建虚拟环境~2s~1s~5s~2s
安装requests包~3s~2s~8s~5s
安装10个包~15s~10s~45s~30s
依赖解析(50包)~5s~3s~20sN/A
缓存命中率85%90%70%N/A

使用场景对比

场景auaucondapip
Web开发✅ 推荐✅ 推荐⚠️ 可用✅ 基础
数据科学✅ 良好⚠️ 有限✅ 最佳⚠️ 有限
机器学习✅ 良好⚠️ 有限✅ 最佳⚠️ 有限
CI/CD✅ 快速✅ 快速⚠️ 较慢⚠️ 较慢
企业环境✅ 灵活✅ 简单✅ 成熟⚠️ 基础

安装方式

二进制安装

GitHub Releases 下载对应平台的二进制文件:

# Linux (x86-64) wget https://github.com/ForesAi/au/releases/latest/download/au-linux-amd64.tar.gz tar -xzf au-linux-amd64.tar.gz sudo mv au /usr/local/bin/ # macOS (Apple Silicon) wget https://github.com/ForesAi/au/releases/latest/download/au-darwin-arm64.tar.gz tar -xzf au-darwin-arm64.tar.gz sudo mv au /usr/local/bin/ # Windows (x86-64) wget https://github.com/ForesAi/au/releases/latest/download/au-windows-amd64.zip unzip au-windows-amd64.zip # 将 au.exe 添加到 PATH

包管理器安装

# 使用 go install go install github.com/ForesAi/au@latest # 使用 Homebrew (macOS) brew install ForesAi/au/au # 使用 Docker docker pull ForesAi/au-tool/au docker run --rm -it ForesAi/au-tool/au --help

从源码构建

git clone https://github.com/ForesAi/au.git cd au go build -o au main.go

致谢

  • au - 灵感来源,快速包管理
  • conda - 环境管理和依赖解析参考
  • spf13/cobra - CLI框架
  • pip - Python包管理基础