网易首页 > 网易号 > 正文 申请入驻

大模型推理引擎之:SGLang

0
分享至

大家好,我是Ai学习的老章

简单介绍一个推理引擎SGLang

它也是DeepSeek官方推荐的推理引擎之一

Why SGLang

SGLang 是适用于大型语言模型和视觉语言模型的快速服务框架。它通过共同设计后端运行时和前端语言,与模型的交互更快、更可控。

核心功能包括:

  • 快速后端运行时:使用 RadixAttention 为前缀缓存、零开销 CPU 调度程序、连续批处理、标记注意力(分页注意力)、推测解码、张量并行、分块预填充、结构化输出和量化 (FP8/INT4/AWQ/GPTQ) 提供高效服务。

  • 灵活的前端语言:为编程LLM应用程序提供直观的界面,包括链式生成调用、高级提示、控制流、多模态输入、并行性和外部交互。

  • 广泛的模型支持:支持广泛的生成模型(Llama、Gemma、Mistral、QWen、DeepSeek、LLaVA 等)、嵌入模型(e5-mistral、gte、mcdse)和奖励模型 (Skywork),并易于扩展以集成新模型。

  • 活跃的社区:SGLang 是开源的,并得到行业采用的活跃社区的支持。

SGLang目前还支持支持MLA优化、FP8 (W8A8)、FP8 KV缓存以及Torch编译,在开源框架中提供了最先进的延迟和吞吐量性能。

SGLang团队的启动说明:https://github.com/sgl-project/sglang/tree/main/benchmark/deepseek_v3

https://lmsys.org/blog/2024-12-04-sglang-v0-4/#data-parallelism-attention-for-deepseek-models


安装SGLamg

文档:https://docs.sglang.ai/start/install.html#method-2-from-source

提供了pip/uv、source、docker/docker compose、k8s等方式的安装方法

官方建议的uv我不喜欢, 用conda先安装环境,再安装sglang。

conda create -n sglang python=3.12 conda activate sglang pip install --upgrade pip pip install "sglang[all]>=0.4.4.post1"

一行命令启动模型

python3 -m sglang.launch_server --model deepseek-ai/DeepSeek-V3 --tp 8 --trust-remote-code

如果要在内网离线部署的话,建议还是docker吧,docker save 成tar后哪网docker load即可。

docker run --gpus all \     --shm-size 32g \     -p 30000:30000 \     -v ~/.cache/huggingface:/root/.cache/huggingface \     --env "HF_TOKEN= "  \     --ipc=host \     lmsysorg/sglang:latest \     python3 -m sglang.launch_server --model-path meta-llama/Llama-3.1-8B-Instruct --host 0.0.0.0 --port 30000

附录

-h, --help   显示帮助信息并退出   --model-path MODEL_PATH模型权重的路径。可以是本地文件夹或Hugging Face仓库ID。   --tokenizer-path TOKENIZER_PATH分词器的路径。   --host HOST   服务器的主机地址。   --port PORT   服务器的端口。   --tokenizer-mode {auto,slow}分词器模式。'auto'会使用可用的快速分词器,而'slow'总是使用慢速分词器。   --skip-tokenizer-init如果设置,跳过初始化分词器,并在生成请求时传递input_ids。   --load-format {auto,pt,safetensors,npcache,dummy,gguf,bitsandbytes,layered}要加载的模型权重格式。“auto”将尝试以safetensors格式加载权重,如果不可用则回退到pytorch bin格式。“pt”将以pytorch bin格式加载权重。“safetensors”将以safetensors格式加载权重。“npcache”将以pytorch格式加载权重并在numpy缓存中存储以加快加载速度。“dummy”将使用随机值初始化权重,主要用于性能分析。“gguf”将以gguf格式加载权重。“bitsandbytes”将使用bitsandbytes量化加载权重。“layered”逐层加载权重,以便在一个层被量化之前加载另一个层,从而减小峰值内存占用。   --trust-remote-code   是否允许Hub上自定义模型在其自己的建模文件中定义。   --dtype {auto,half,float16,bfloat16,float,float32}模型权重和激活的数据类型。* "auto"对FP32和FP16模型使用FP16精度,对BF16模型使用BF16精度。 * "half"为FP16。推荐用于AWQ量化。 * "float16"与"half"相同。 * "bfloat16"在精度和范围之间取得平衡。 * "float"是FP32精度的简写。 * "float32"为FP32精度。   --kv-cache-dtype {auto,fp8_e5m2,fp8_e4m3}KV缓存存储的数据类型。“auto”将使用模型数据类型。“fp8_e5m2”和“fp8_e4m3”支持CUDA 11.8+。   --quantization-param-path QUANTIZATION_PARAM_PATH包含KV缓存缩放因子的JSON文件的路径。当KV缓存数据类型为FP8时通常需要提供。否则,默认缩放因子为1.0,可能导致准确性问题。   --quantization {awq,fp8,gptq,marlin,gptq_marlin,awq_marlin,bitsandbytes,gguf,modelopt,w8a8_int8}量化方法。   --context-length CONTEXT_LENGTH模型的最大上下文长度。默认为None(将使用模型config.json中的值)。   --device {cuda,xpu,hpu,cpu}设备类型。   --served-model-name SERVED_MODEL_NAME覆盖OpenAI API服务器v1/models端点返回的模型名称。   --chat-template CHAT_TEMPLATE内置聊天模板名称或聊天模板文件的路径。仅用于兼容OpenAI API的服务器。   --is-embedding        是否将CausalLM用作嵌入模型。   --revision REVISION   使用的具体模型版本。可以是分支名、标签名或提交ID。未指定时,使用默认版本。   --mem-fraction-static MEM_FRACTION_STATIC用于静态分配(模型权重和KV缓存内存池)的内存比例。如果遇到内存不足错误,请使用较小的值。   --max-running-requests MAX_RUNNING_REQUESTS正在运行的最大请求数量。   --max-total-tokens MAX_TOTAL_TOKENS内存池中的最大token数量。如果未指定,将根据内存使用比例自动计算。此选项通常用于开发和调试目的。   --chunked-prefill-size CHUNKED_PREFILL_SIZE分块预填充中每个块的最大token数量。设置为-1表示禁用分块预填充。   --max-prefill-tokens MAX_PREFILL_TOKENS预填充批次中的最大token数量。实际限制将是此值和模型最大上下文长度之间的较大值。   --schedule-policy {lpm,random,fcfs,dfs-weight}请求的调度策略。   --schedule-conservativeness SCHEDULE_CONSERVATIVENESS调度策略的保守程度。较大的值意味着更保守的调度。如果经常看到请求被撤回,请使用较大的值。   --cpu-offload-gb CPU_OFFLOAD_GB为CPU卸载保留的RAM GB数。   --prefill-only-one-req PREFILL_ONLY_ONE_REQ如果为true,则每次预填充仅处理一个请求。   --tensor-parallel-size TENSOR_PARALLEL_SIZE, --tp-size TENSOR_PARALLEL_SIZE张量并行大小。   --stream-interval STREAM_INTERVAL流式传输的间隔(或缓冲区大小),按token长度计算。较小的值使流式传输更平滑,而较大的值提高吞吐量。   --stream-output       是否作为一系列不连续的段输出。   --random-seed RANDOM_SEED随机种子。   --constrained-json-whitespace-pattern CONSTRAINED_JSON_WHITESPACE_PATTERNJSON约束输出中允许的语法空白的正则表达式模式。例如,要允许模型生成连续的空格,请将模式设置为[\n\t ]*   --watchdog-timeout WATCHDOG_TIMEOUT设置看门狗超时时间(秒)。如果前向批处理花费的时间超过此值,服务器将崩溃以防止挂起。   --download-dir DOWNLOAD_DIR模型下载目录。   --base-gpu-id BASE_GPU_ID开始分配GPU的基础GPU ID。在单台机器上运行多个实例时很有用。   --log-level LOG_LEVEL所有记录器的日志级别。   --log-level-http LOG_LEVEL_HTTPHTTP服务器的日志级别。如果没有设置,默认重用--log-level。   --log-requests        记录所有请求的输入和输出。   --show-time-cost      显示自定义标记的时间成本。   --enable-metrics      启用日志Prometheus指标。   --decode-log-interval DECODE_LOG_INTERVAL解码批次的日志间隔。   --api-key API_KEY     设置服务器的API密钥。也用于兼容OpenAI API的服务器。   --file-storage-pth FILE_STORAGE_PTH后端文件存储的路径。   --enable-cache-report返回openai请求中usage.prompt_tokens_details中的缓存token数量。   --data-parallel-size DATA_PARALLEL_SIZE, --dp-size DATA_PARALLEL_SIZE数据并行大小。   --load-balance-method {round_robin,shortest_queue}数据并行性的负载均衡策略。   --expert-parallel-size EXPERT_PARALLEL_SIZE, --ep-size EXPERT_PARALLEL_SIZE专家并行大小。   --dist-init-addr DIST_INIT_ADDR, --nccl-init-addr DIST_INIT_ADDR初始化分布式后端的主机地址(例如`192.168.0.2:25000`)。   --nnodes NNODES       节点数量。   --node-rank NODE_RANK节点排名。   --json-model-override-args JSON_MODEL_OVERRIDE_ARGS用于覆盖默认模型配置的JSON字符串格式的字典。   --lora-paths [LORA_PATHS ...]LoRA适配器列表。可以提供str格式的路径列表,或{名称}={路径}的重命名路径格式。   --max-loras-per-batch MAX_LORAS_PER_BATCH运行批次中的最大适配器数量,包括仅基础模型的请求。   --lora-backend LORA_BACKEND选择多LoRA服务的内核后端。   --attention-backend {flashinfer,triton,torch_native}选择注意力层的内核。   --sampling-backend {flashinfer,pytorch}选择采样层的内核。   --grammar-backend {xgrammar,outlines}选择语法引导解码的后端。   --enable-flashinfer-mla启用FlashInfer MLA优化   --speculative-algorithm {EAGLE}推测算法。   --speculative-draft-model-path SPECULATIVE_DRAFT_MODEL_PATH草稿模型权重的路径。可以是本地文件夹或Hugging Face仓库ID。   --speculative-num-steps SPECULATIVE_NUM_STEPS在推测解码中从草稿模型采样的步骤数。   --speculative-num-draft-tokens SPECULATIVE_NUM_DRAFT_TOKENS在推测解码中从草稿模型采样的token数。   --speculative-eagle-topk {1,2,4,8}在eagle2每步中从草稿模型采样的token数。   --enable-double-sparsity启用双重稀疏性注意力   --ds-channel-config-path DS_CHANNEL_CONFIG_PATH双重稀疏性通道配置的路径   --ds-heavy-channel-num DS_HEAVY_CHANNEL_NUM双重稀疏性注意力中的重型通道数量   --ds-heavy-token-num DS_HEAVY_TOKEN_NUM双重稀疏性注意力中的重型token数量   --ds-heavy-channel-type DS_HEAVY_CHANNEL_TYPE

制作不易,如果这篇文章觉得对你有用,可否点个关注。给我个三连击:点赞、转发和在看。若可以再给我加个,谢谢你看我的文章,我们下篇再见!

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
新婚夜被丈夫家暴,我连夜出走,第二天回去时,发现他已经凉了

新婚夜被丈夫家暴,我连夜出走,第二天回去时,发现他已经凉了

千秋文化
2026-03-20 20:35:00
4万股民懵了!002538突遭ST,明起停牌

4万股民懵了!002538突遭ST,明起停牌

大众证券报
2026-03-29 11:34:12
长期熬夜后突发心梗倒地昏迷,抢救成功后回农村静养,40岁心梗幸存者“二梨”:心脏疼痛必须立刻去医院,倒在医院被救活的概率比外面大

长期熬夜后突发心梗倒地昏迷,抢救成功后回农村静养,40岁心梗幸存者“二梨”:心脏疼痛必须立刻去医院,倒在医院被救活的概率比外面大

极目新闻
2026-03-27 23:24:09
上海知名主持周瑾:从不做饭全靠外卖,真实家庭状态令人意外

上海知名主持周瑾:从不做饭全靠外卖,真实家庭状态令人意外

日落于西
2026-03-28 21:21:53
以军完成对伊朗首都 新一轮大规模空袭

以军完成对伊朗首都 新一轮大规模空袭

每日经济新闻
2026-03-29 07:46:47
以色列最担心的事发生:伊朗送出“大礼”,特朗普的反应出人意料

以色列最担心的事发生:伊朗送出“大礼”,特朗普的反应出人意料

空天力量
2026-03-28 17:14:31
河南一法官被通报索贿涉44条人命遭捕,竟毫发无损稳坐审判席审案

河南一法官被通报索贿涉44条人命遭捕,竟毫发无损稳坐审判席审案

追月数星
2026-03-29 16:49:01
美国怕的不是伊朗,如果不是中国虎视眈眈,美伊战争或许早已结束

美国怕的不是伊朗,如果不是中国虎视眈眈,美伊战争或许早已结束

安安说
2026-03-29 13:42:09
军号被粉底液将军粉丝围攻,编剧汪海林发声:真是无法无天

军号被粉底液将军粉丝围攻,编剧汪海林发声:真是无法无天

往史过眼云烟
2026-03-28 14:32:07
邵佳一规定:不得外出购物,此前国足0-7输日本还大包小包买特产

邵佳一规定:不得外出购物,此前国足0-7输日本还大包小包买特产

茜子足球
2026-03-29 14:58:56
迪丽热巴官宣,这一战她赢了,恭喜!

迪丽热巴官宣,这一战她赢了,恭喜!

黎兜兜
2026-03-28 21:19:15
网约车司机花1200元把车改成“头等舱”,收到6000元打赏

网约车司机花1200元把车改成“头等舱”,收到6000元打赏

用车指南
2026-03-29 10:01:32
张康阳现状证明,不怕富二代躺平就怕有野心,仅5年千亿身价归零

张康阳现状证明,不怕富二代躺平就怕有野心,仅5年千亿身价归零

青杉依旧啊啊
2026-03-19 22:10:26
北京男子靠龙虾OpenClaw实现36小时买房:龙虾迅速筛出周边房源,2小时内独自对比大量中介并选定,精准摸清历史最低成交价

北京男子靠龙虾OpenClaw实现36小时买房:龙虾迅速筛出周边房源,2小时内独自对比大量中介并选定,精准摸清历史最低成交价

扬子晚报
2026-03-29 19:35:46
汽柴油即将下调!3月29日92/95号汽油最新价,4月7日调价窗口开启

汽柴油即将下调!3月29日92/95号汽油最新价,4月7日调价窗口开启

沙雕小琳琳
2026-03-29 10:28:54
张雪峰女儿发声悼念惹泪目,员工回应其二婚爆料,灵堂遗照已曝光

张雪峰女儿发声悼念惹泪目,员工回应其二婚爆料,灵堂遗照已曝光

小徐讲八卦
2026-03-28 06:21:26
定了!公安部正式官宣,6月1日起全国推行10项便民新措施

定了!公安部正式官宣,6月1日起全国推行10项便民新措施

混沌录
2026-03-28 20:14:21
张雪峰追悼会破防一幕:朋友三鞠躬,员工却磕头,看完瞬间泪目

张雪峰追悼会破防一幕:朋友三鞠躬,员工却磕头,看完瞬间泪目

行者聊官
2026-03-28 12:37:18
国足vs喀麦隆!4231阵型首发浮现:韦世豪搭档张玉宁,剑指2连胜

国足vs喀麦隆!4231阵型首发浮现:韦世豪搭档张玉宁,剑指2连胜

球场没跑道
2026-03-29 14:40:20
不装了!徐帆回应离婚7个月后,冯小刚贴脸养女,担心的事发生了

不装了!徐帆回应离婚7个月后,冯小刚贴脸养女,担心的事发生了

共工之锚
2026-03-29 18:18:53
2026-03-29 21:43:00
Ai学习的老章 incentive-icons
Ai学习的老章
Ai学习的老章
3296文章数 11118关注度
往期回顾 全部

科技要闻

马斯克承认xAI"建错了",11位创始人均离职

头条要闻

动车被困隧道内停车断电4个小时 乘客:有人紧张晕倒

头条要闻

动车被困隧道内停车断电4个小时 乘客:有人紧张晕倒

体育要闻

绝杀卫冕冠军后,他单手指天把胜利献给父亲

娱乐要闻

张凌赫事件持续升级!官方点名怒批

财经要闻

Kimi、Minimax 们的算力荒

汽车要闻

岚图泰山X8配置曝光 四激光雷达/华为新一代座舱

态度原创

时尚
本地
亲子
健康
军事航空

伊姐周日热推:电视剧《冬去春来》;电视剧《你是迟来的欢喜》......

本地新闻

在潍坊待了三天,没遇到一个“潍坊人”

亲子要闻

孩子见老师躲着走?这是“权威恐惧症”,希望娃大胆记住这几点

干细胞抗衰4大误区,90%的人都中招

军事要闻

美两栖攻击舰载3500名增援到达

无障碍浏览 进入关怀版