当前位置: 首页 > wzjs >正文

深圳室内设计公司排行榜福建seo排名培训

深圳室内设计公司排行榜,福建seo排名培训,wordpress推介链接插件,如何选网站服务器| 文档 | 博客 | 论文 | Twitter/X | 用户论坛 | 开发者Slack | 官网:GitCode - 全球开发者的开源社区,开源代码托管平台 目录 ■ vLLM是之所以快速的原因 ■ 性能基准测试 ■ vLLM灵活且易于使用 ■ vLLM无缝支持HuggingFace上大多数流行的开源模型 ■ 快速开…

 

| 文档 | 博客 | 论文 | Twitter/X | 用户论坛 | 开发者Slack |

官网GitCode - 全球开发者的开源社区,开源代码托管平台

目录

■ vLLM是之所以快速的原因

■ 性能基准测试

■ vLLM灵活且易于使用

■ vLLM无缝支持HuggingFace上大多数流行的开源模型

■ 快速开始

◎安装

◎使用

OpenAI-Compatible Server

OpenAI Completions API with vLLM

OpenAI Chat Completions API with vLLM

On Attention Backends



vLLM用于LLM推理和服务的快速且易于使用的库。

vLLM最初是在加州大学伯克利分校的Sky Computing Lab开发的,现在已经发展成为一个由学术界和工业界共同贡献的社区驱动的项目。

 vLLM是之所以快速的原因

最先进的吞吐量

通过PagedAttention高效管理注意力键和值内存。

对连续的请求进行批处理

使用CUDA/HIP图进行快速模型执行。

量化:GPTQ,AWQ、INT4、INT8和FP8。

优化CUDA内核,包括集成FlashAttention和FlashInfer。

投机解码

分块预先填充

 性能基准测试

在博客文章的末尾包含了一个性能基准。它比较了vLLM与其他LLM服务引擎(TensorRT-LLM、SGLang和LMDeploy)的性能。该实现位于nightly-benchmarks文件夹下,可以使用一键可运行脚本重现该基准测试。

 vLLM灵活且易于使用

与流行的Hugging Face模型无缝集成。

支持多种解码算法的高吞吐量服务,包括并行抽样、束搜索等。

支持分布式推理的张量并行性和管道并行性。

支持流式输出。

支持OpenAI兼容的API服务器。

支持NVIDIA GPU,AMD CPU和GPU,Intel CPU和GPU,PowerPC CPU,TPU和AWS Neuron。

支持前缀缓存。

支持多lora。

 vLLM无缝支持HuggingFace上大多数流行的开源模型

类Transformer的大语言模型(例如,Llama)。

混合专家大语言模型(例如,Mixtral,Deepseek-V2和V3)。

嵌入模型(例如E5-Mistral)。

多模态大语言模型(例如,LLaVA)。

支持模型的完整列表请查看这里。

 快速开始

先决条件:OS: Linux、Python: 3.9–3.12

安装

使用pip安装vLLM或从源代码安装:

pip install vllm

也可以创建conda环境管理python环境:

conda create -n myenv python=3.12 -yconda activate myenvpip install vllm

验证安装

import vllmprint(vllm.__version__)

使用

示例代码如下:

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)# Create an LLM.llm = LLM(model="facebook/opt-125m")# Generate 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.promptgenerated_text = output.outputs[0].textprint(f"Prompt:    {prompt!r}")print(f"Output:    {generated_text!r}")print("-" * 60)

OpenAI-Compatible Server

启动vLLM服务器(使用Qwen2.5-1.5B-Instruct模型):

vllm serve Qwen/Qwen2.5-1.5B-Instruct

默认情况下,服务器应用generation_config。如果存在的话,从huggingface模型存储库中获取。这意味着某些采样参数的默认值可以被模型创建者推荐的值覆盖。

要禁用此行为,请在启动服务器时传递--generation-config vllm

该服务器的查询格式与OpenAI API相同。例如,要列出模型:

curl http://localhost:8000/v1/models

可以传入参数--api-key或环境变量VLLM_API_KEY,以使服务器能够检查头中的API key。

OpenAI Completions API with vLLM

一旦服务器启动了,可以用输入提示查询模型:

curl http://localhost:8000/v1/completions \-H "Content-Type: application/json" \-d '{"model": "Qwen/Qwen2.5-1.5B-Instruct","prompt": "San Francisco is a","max_tokens": 7,"temperature": 0}'

由于此服务器与OpenAI API兼容,因此可以将其用作使用OpenAI API的任何应用程序的直接替代品。例如,另一种查询服务器的方法是通过openai Python包:

from openai import OpenAI# Modify OpenAI's API key and API base to use vLLM's API server.openai_api_key = "EMPTY"openai_api_base = "http://localhost:8000/v1"client = OpenAI(api_key=openai_api_key,base_url=openai_api_base,)completion = client.completions.create(model="Qwen/Qwen2.5-1.5B-Instruct", prompt="San Francisco is a")print("Completion result:", completion)

可以在这里找到更详细的客户示例https://github.com/vllm-project/vllm/blob/main/examples/online_serving/openai_completion_client.py

OpenAI Chat Completions API with vLLM

vLLM还支持OpenAI聊天Completions API。聊天界面是一种与模型通信的更动态、更交互式的方式,允许存储在聊天历史记录中的来回交换。这对于需要上下文或更详细解释的任务很有用。

可以使用create chat completion 完成端点与模型交互:

curl http://localhost:8000/v1/chat/completions \-H "Content-Type: application/json" \-d '{"model": "Qwen/Qwen2.5-1.5B-Instruct","messages": [{"role": "system", "content": "You are a helpful assistant."},{"role": "user", "content": "Who won the world series in 2020?"}]}'

这段curl命令是用来向本地运行的服务发送HTTP POST请求,目的是获取一个AI模型的文本回复。以下是命令的详细解析:

curl:命令行工具,用于从服务器获取或发送数据。

http://localhost:8000/v1/chat/completions:这是请求的目标URL。localhost意味着请求发送给运行在同一台计算机上的服务,8000是服务监听的端口号,/v1/chat/completions是API的路径,用于触发聊天完成请求,即让AI模型生成文本回复。

-H "Content-Type: application/json":这是请求头的一部分,指定请求体的内容类型为JSON。Content-Type是一个HTTP头部字段,用来告诉接收方消息主体的媒体类型。

-d:是curl命令中用来发送数据的标准选项。后面的单引号括起来的内容是POST请求的主体,也就是要发送的JSON数据。

综上所述,这条curl命令的作用是向运行在本地的AI服务发送一个请求,要求使用Qwen2.5-1.5B-Instruct模型来回答一个关于2020年世界大赛冠军的问题,模型将以文本形式返回答案。

可以使用openai python包:

from openai import OpenAI# Set OpenAI's API key and API base to use vLLM's API server.openai_api_key = "EMPTY"openai_api_base = "http://localhost:8000/v1"client = OpenAI(api_key=openai_api_key,base_url=openai_api_base,)chat_response = client.chat.completions.create(model="Qwen/Qwen2.5-1.5B-Instruct",messages=[{"role": "system", "content": "You are a helpful assistant."},{"role": "user", "content": "Tell me a joke."},])print("Chat response:", chat_response)

On Attention Backends

目前,vLLM支持跨不同平台和加速器架构的高效注意力计算的多个后端。它会自动选择与系统和模型规范兼容的性能最好的后端。

如果需要,还可以通过将环境变量VLLM_ATTENTION_BACKEND配置为以下选项之一来手动设置选择的后端:FLASH_ATTN, FLASHINFER或XFORMERS。

没有预先构建的包含Flash Infer的vllm轮子,因此必须首先在环境中安装它。请参阅 Flash Infer official docs 官方文档或查看docker/Dockerfile以获取如何安装它的说明。

至此,本文的内容就结束啦。

http://www.dtcms.com/wzjs/60399.html

相关文章:

  • 佛山网站建设乐云seo在线制作备案域名
  • 涿州市建委网站windows优化大师在哪里
  • 深圳网站设计平台宁波品牌网站推广优化
  • 英文网站google推广域名查询ip地址
  • 青岛建网站公司网页制作代码
  • cpa网站建设北京网站建设公司案例
  • 团队云智能网站建设唐山百度提升优化
  • 江苏城乡建设部网站珠海seo快速排名
  • 网站与客户端的区别吗seo的作用有哪些
  • 域名购买哪个网站优化大师哪个好
  • win2008搭建php网站郑州网站建设十大公司
  • 有什么做ppt的网站谷歌外链工具
  • 西安H5网站开发昆山seo网站优化软件
  • 网页制作与网站建设试卷及答案seo网站课程
  • 华立学院网站建设规划书的制作佛山网站seo
  • 做网站免费吗电商广告网络推广
  • 有实力的网站建设推广营销技巧和营销方法培训
  • 做网站的论坛西安seo托管
  • 门户网站建设的建议seo百家论坛
  • 网站标签怎么改百度seo点击
  • 网站源码带数据互联网销售平台
  • 唐河做网站免费域名注册服务网站
  • 精诚时代 网站谁做的友链交易平台源码
  • 有没有人一起做网站湖南企业seo优化报价
  • 网站建设是广告吗广州新闻报道
  • 浏览器测试手机网站百度新闻头条新闻
  • 龙华新区网站建设口碑营销的优缺点
  • 专业网站建设课程河南纯手工seo
  • 快速做网站公司报价百度163黄页关键词挖掘
  • 备案期间 需要关闭网站自己的网站怎么样推广优化