autodl vlll代码debug
mkdir mfocd vllm一、源码可编辑模式(-e / --editable)是什么?uv pip install -e . 里的 -e = editable(可编辑 / 开发模式)。普通安装 uv pip install .:把代码复制到 .venv/site-packages/vllm/你改本地源码,不会生效,必须重新 install。
cd /root/autodl-tmp
mkdir mfo
git clone https://gitcode.com/gh_mirrors/vl/vllm.git
cd vllm

一、源码可编辑模式(-e / --editable)是什么?
uv pip install -e . 里的 -e = editable(可编辑 / 开发模式)。
普通安装 uv pip install .:
把代码复制到 .venv/site-packages/vllm/
你改本地源码,不会生效,必须重新 install。
可编辑安装 uv pip install -e .:
不复制代码,只在 site-packages 里建一个符号链接(快捷方式),指向你本地的 vLLM 源码目录。
你在本地改 Python 代码 → 保存就生效,不用重新安装。
非常适合:二次开发、改代码调试、研究源码。
一句话:可编辑 = 本地源码直接挂载到环境,改代码实时生效。
二、你是否还需要 clone vllm 代码?
必须 clone!必须 clone!必须 clone!
原因:
-e . 里的 . 是 “当前目录”,它要求当前目录必须是 vLLM 源码根目录(有 pyproject.toml / setup.py)。
如果你只是 pip install vllm(从 PyPI 装),没有源码,自然没法 -e .。
1 clone 代码
```bash
# 1. 必须先 clone 源码
git clone https://github.com/vllm-project/vllm.git
cd vllm
2 创建UV环境
# 2. 创建并激活 uv 虚拟环境(你之前的命令)
uv venv --python 3.12 --seed --managed-python
source .venv/bin/activate # Linux/macOS
# .venv\Scripts\activate # Windows
3 下载依赖
git checkout 4765f0f189fd0cd032a79da37ba427c3ba60ec33
source .venv/bin/activate
export UV_CACHE_DIR=/root/autodl-tmp/uv-cache
export TMPDIR=/root/autodl-tmp/tmp
export UV_INDEX_URL=https://pypi.tuna.tsinghua.edu.cn/simple
export VLLM_PRECOMPILED_WHEEL_VARIANT=cu129
export VLLM_MAIN_CUDA_VERSION=12.9
VLLM_USE_PRECOMPILED=1 uv pip install -e . --torch-backend=auto -v
4 确认环境安装成功
python -c "import sys, vllm; print(sys.executable); print(vllm.__file__)"
输出指到这里就对了:
/root/autodl-tmp/mfo/vllm/.venv/bin/python
/root/autodl-tmp/mfo/vllm/vllm/__init__.py
5 下载国内模型
然后装 debug 和模型下载工具:
uv pip install debugpy modelscope
用国内 ModelScope:
modelscope download --model Qwen/Qwen2.5-0.5B-Instruct --local_dir /root/autodl-tmp/models/Qwen2.5-0.5B-Instruct
6 跑test 文件
# SPDX-License-Identifier: Apache-2.0
# SPDX-FileCopyrightText: Copyright contributors to the vLLM project
from vllm import LLM, SamplingParams
# Sample prompts.
prompts = [
"Hello, my name is",
"The president of the United States is",
"The capital of France is",
"The future of AI is",
]
# Create a sampling params object.
sampling_params = SamplingParams(temperature=0.8, top_p=0.95)
def main():
# Create an LLM.
llm = LLM(
model="/root/autodl-tmp/models/Qwen2.5-0.5B-Instruct",
trust_remote_code=True,
)
print("\nxcy:\n" + "-" * 60)
# Gener
# ate texts from the prompts.
# The output is a list of RequestOutput objects
# that contain the prompt, generated text, and other information.
outputs = llm.generate(prompts, sampling_params)
# Print the outputs.
print("\nGenerated Outputs:\n" + "-" * 60)
for output in outputs:
prompt = output.prompt
generated_text = output.outputs[0].text
print(f"Prompt: {prompt!r}")
print(f"Output: {generated_text!r}")
print("-" * 60)
if __name__ == "__main__":
main()
7 执行结果
(vllm) (base) root@autodl-container-11hz88zfkm-31078a3e:~/autodl-tmp/mfo/vllm# python hello.py

8 pycharm 连接调试
更多推荐


所有评论(0)