vLLM 是一款專為大語言模型推理加速而設計的框架,實現了 KV 緩存內存幾乎零浪費,解決了內存管理瓶頸問題。
更多 vLLM 中文文檔及教程可訪問 →vllm.hyper.ai/
*在線運行 vLLM 入門教程:零基礎分步指南
源碼 examples/offline_inference/reproduciblity.py
# SPDX-License-Identifier: Apache-2.0
import os
from vllm import LLM, SamplingParams
# 為了性能考慮,vllm 不能保證結果的默認情況下可重複性,
# 您需要做以下事情才能實現
# 可復現結果:
# 1.關閉多處理以使計劃確定性。
# Note (Woosuk) :這是不需要的,對於 V0而言,這將被忽略。
os.environ["VLLM_ENABLE_V1_MULTIPROCESSING"] = "0"
# 2.修復五十年據種子以獲得可重複性。默認種子為 None,不可復現。
SEED = 42
# Note (Woosuk) :即使使用上述兩個設置,vLLM 也僅提供
# 當它在相同的硬件和相同的 vLLM 版本上運行時,它的可重複性。
# 此外,在線服務 API ( "vLLM 服務") 不支持可重複性
# 因為幾乎不可能在在線服務設置。
llm = LLM(model="facebook/opt-125m", seed=SEED)
prompts = [
"Hello, my name is",
"The president of the United States is",
"The capital of France is",
"The future of AI is",
]
sampling_params = SamplingParams(temperature=0.8, top_p=0.95)
outputs = llm.generate(prompts, sampling_params)
for output in outputs:
prompt = output.prompt
generated_text = output.outputs[0].text
print(f"Prompt: {prompt!r}, Generated text: {generated_text!r}")