Skip to main content

LlmRequestInterceptFn

Type Alias LlmRequestInterceptFn 

Source
pub type LlmRequestInterceptFn = Arc<dyn Fn(String, LlmRequest, Option<AnnotatedLlmRequest>) -> Pin<Box<dyn Future<Output = Result<LlmRequestInterceptOutcome>> + Send>> + Send + Sync>;
Expand description

Rewrite or annotate an LLM request before execution.

Request intercepts can transform the wire request, attach or replace a normalized AnnotatedLlmRequest, or both.

§Parameters

  • First argument: Logical provider or model family name.
  • Second argument: LLM request to transform.
  • Third argument: Optional normalized request annotation to carry forward.

§Returns

A Result containing the canonical request-intercept outcome. Without a request codec, the returned request is authoritative. With a request codec, its headers remain writable while its content must remain unchanged; provider-body edits must be returned through the required annotation.

§Errors

The callback can return any FlowError to abort the request-intercept chain.

Aliased Type§

pub struct LlmRequestInterceptFn { /* private fields */ }