http_server_engine.py — SGLang HTTP 服务引擎¶
文件概述¶
SGLang 推理服务器的 HTTP 适配器实现(约 955 行),提供同步和异步两种 HTTP 客户端。
核心类¶
HttpServerAdapter¶
同步 HTTP 客户端:
class HttpServerAdapter:
"""同步方式调用 SGLang HTTP 推理服务"""
def generate(self, prompt_ids, sampling_params):
response = requests.post(f"http://{host}:{port}/generate", json=payload)
return response.json()
AsyncHttpServerAdapter¶
异步 HTTP 客户端:
class AsyncHttpServerAdapter:
"""异步方式调用 SGLang HTTP 推理服务
支持:
- 异步请求和重试
- 连接池管理
- 超时控制
"""
async def generate(self, prompt_ids, sampling_params):
async with aiohttp.ClientSession() as session:
async with session.post(url, json=payload) as resp:
return await resp.json()
async def resume_memory_occupation(self, tags):
"""恢复显存占用"""
pass
async def release_memory_occupation(self, tags):
"""释放显存占用"""
pass
async def update_weights(self, weights):
"""更新模型权重"""
pass
与其他模块的关系¶
- 被
sglang_rollout.py的 ServerAdapter 使用 - 提供与 SGLang HTTP 服务器的通信能力
小结¶
封装了与 SGLang HTTP 推理服务的完整通信协议,支持生成、权重更新、显存管理等操作。