pub struct Request {
pub id: String,
pub messages: Vec<Message>,
pub temperature: Option<f64>,
pub top_p: Option<f64>,
pub top_k: Option<u32>,
pub max_tokens: Option<u32>,
pub stream: Option<bool>,
pub image_token_budget: Option<u32>,
pub grammar: String,
}Expand description
Re-exports from inferd-proto so consumers don’t need a separate
inferd-proto dep for the wire types. The proto crate IS the
version-pin contract for protocol compatibility — inferd-client 0.1 always uses inferd-proto 0.1.
The inference request envelope sent by clients.
Default produces an empty request: empty messages, all
sampling fields None (server applies Gemma 4 defaults), no
grammar. Useful for the ..Default::default() shorthand in
callers; remember to fill in messages before sending.
Fields§
§id: StringCaller-assigned correlation id; echoed on every response frame.
messages: Vec<Message>Conversation history in chronological order. Must be non-empty.
temperature: Option<f64>Sampling temperature; default defaults::TEMPERATURE.
top_p: Option<f64>Nucleus sampling probability; default defaults::TOP_P.
top_k: Option<u32>Top-k sampling cutoff; default defaults::TOP_K.
max_tokens: Option<u32>Maximum tokens to generate; default defaults::MAX_TOKENS.
stream: Option<bool>Stream tokens vs return one final done frame; default defaults::STREAM.
image_token_budget: Option<u32>Image token budget; if present, must be in VALID_IMAGE_TOKEN_BUDGETS.
grammar: StringGBNF grammar to constrain generation; empty means unconstrained.