ray.data.llm.HttpRequestProcessorConfig#
- class ray.data.llm.HttpRequestProcessorConfig(*, batch_size: int = 64, accelerator_type: str | None = None, concurrency: int = 1, url: str, headers: Dict[str, Any] | None = None, qps: int | None = None)[source]#
The configuration for the HTTP request processor.
- Parameters:
batch_size – The batch size to send to the HTTP request.
url – The URL to send the HTTP request to.
headers – The headers to send with the HTTP request.
concurrency – The number of concurrent requests to send.
Examples
import ray from ray.data.llm import HttpRequestProcessorConfig, build_llm_processor config = HttpRequestProcessorConfig( url="https://api.openai.com/v1/chat/completions", headers={"Authorization": "Bearer sk-..."}, concurrency=1, ) processor = build_llm_processor( config, preprocess=lambda row: dict( payload=dict( model="gpt-4o-mini", messages=[ {"role": "system", "content": "You are a calculator"}, {"role": "user", "content": f"{row['id']} ** 3 = ?"}, ], temperature=0.3, max_tokens=20, ), ), postprocess=lambda row: dict( resp=row["http_response"]["choices"][0]["message"]["content"], ), ) ds = ray.data.range(10) ds = processor(ds) for row in ds.take_all(): print(row)
PublicAPI (alpha): This API is in alpha and may change before becoming stable.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'validate_assignment': True}#
Configuration for the model, should be a dictionary conforming to [
ConfigDict
][pydantic.config.ConfigDict].