综合介绍
Aphrodite Engine是PygmalionAI的官方后端引擎,旨在为PygmalionAI网站提供推理端点,并支持Hugging Face兼容模型的快速部署。该引擎利用vLLM的Paged Attention技术,实现了高效的K/V管理和连续批处理,显著提升了推理速度和内存利用率。Aphrodite Engine支持多种量化格式和分布式推理,适用于各种现代GPU和TPU设备。
功能列表
- 连续批处理:高效处理多个请求,提升推理速度。
- Paged Attention:优化K/V管理,提升内存利用率。
- CUDA优化内核:提高推理性能。
- 量化支持:支持AQLM、AWQ、Bitsandbytes等多种量化格式。
- 分布式推理:支持8-bit KV缓存,适用于高上下文长度和高吞吐量需求。
- 多设备支持:兼容NVIDIA、AMD、Intel GPU及Google TPU。
- Docker部署:提供Docker镜像,简化部署流程。
- API兼容:支持OpenAI兼容API,便于集成到现有系统。
使用帮助
安装流程
- 安装依赖:
- 确保系统安装了Python 3.8至3.12版本。
- 对于Linux用户,建议使用以下命令安装依赖:
sudo apt update && sudo apt install python3 python3-pip git wget curl bzip2 tar
- 对于Windows用户,建议使用WSL2安装:
wsl --install sudo apt update && sudo apt install python3 python3-pip git wget curl bzip2 tar
- 安装Aphrodite Engine:
- 使用pip安装:
pip install -U aphrodite-engine
- 启动模型:
- 运行以下命令启动模型:
bash
aphrodite run meta-llama/Meta-Llama-3.1-8B-Instruct
- 这将创建一个OpenAI兼容的API服务器,默认端口为2242。
- 运行以下命令启动模型:
使用Docker部署
- 拉取Docker镜像:
docker pull alpindale/aphrodite-openai:latest
- 运行Docker容器:
docker run --runtime nvidia --gpus all \
-v ~/.cache/huggingface:/root/.cache/huggingface \
-p 2242:2242 \
--ipc=host \
alpindale/aphrodite-openai:latest \
--model NousResearch/Meta-Llama-3.1-8B-Instruct \
--tensor-parallel-size 8 \
--api-keys "sk-empty"
主要功能操作流程
- 连续批处理:
- Aphrodite Engine通过连续批处理技术,可以同时处理多个请求,显著提升推理速度。用户只需在启动时指定批处理参数即可。
- Paged Attention:
- 该技术优化了K/V管理,提升了内存利用率。用户无需额外配置,系统会自动应用该优化。
- 量化支持:
- 支持多种量化格式,如AQLM、AWQ、Bitsandbytes等。用户可以在启动模型时指定所需的量化格式:
aphrodite run --quant-format AQLM meta-llama/Meta-Llama-3.1-8B-Instruct
- 分布式推理:
- 支持8-bit KV缓存,适用于高上下文长度和高吞吐量需求。用户可以通过以下命令启动分布式推理:
aphrodite run --tensor-parallel-size 8 meta-llama/Meta-Llama-3.1-8B-Instruct
- API集成:
- Aphrodite Engine提供OpenAI兼容API,便于集成到现有系统。用户可以通过以下命令启动API服务器:
bash
aphrodite run --api-keys "your-api-key" meta-llama/Meta-Llama-3.1-8B-Instruct
- Aphrodite Engine提供OpenAI兼容API,便于集成到现有系统。用户可以通过以下命令启动API服务器: