Files
ray-project--ray/python/ray/llm/examples/sglang/batch_sglang_example.py
T
2026-07-13 13:17:40 +08:00

50 lines
1.2 KiB
Python

"""Batch inference with SGLang using Ray Data.
Usage:
RAY_EXPERIMENTAL_NOSET_CUDA_VISIBLE_DEVICES=0 python batch_sglang_example.py
"""
import ray
from ray.data.llm import SGLangEngineProcessorConfig, build_processor
config = SGLangEngineProcessorConfig(
model_source="unsloth/Llama-3.1-8B-Instruct",
engine_kwargs=dict(
dtype="half",
mem_fraction_static=0.8,
),
batch_size=32,
concurrency=1,
)
processor = build_processor(
config,
preprocess=lambda row: dict(
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": row["prompt"]},
],
sampling_params=dict(
temperature=0.7,
max_new_tokens=256,
),
),
postprocess=lambda row: dict(
prompt=row["prompt"],
response=row["generated_text"],
),
)
ds = ray.data.from_items(
[
{"prompt": "What is the capital of France?"},
{"prompt": "Explain photosynthesis in one sentence."},
{"prompt": "Write a haiku about programming."},
]
)
ds = processor(ds)
for row in ds.take_all():
print(f"Prompt: {row['prompt']}")
print(f"Response: {row['response']}\n")