diff --git a/litellm-rust/crates/core/src/ocr/transformation.rs b/litellm-rust/crates/core/src/ocr/transformation.rs index c24f3519354..049959c7bc1 100644 --- a/litellm-rust/crates/core/src/ocr/transformation.rs +++ b/litellm-rust/crates/core/src/ocr/transformation.rs @@ -4,7 +4,12 @@ use crate::CoreResult; use super::types::{OcrRequestData, OcrResponseData}; -pub trait OcrProviderConfig: Sync { +/// Provider-specific OCR transforms. +/// +/// Implementations should stay pure and non-blocking: map supported params, +/// build the provider request body, and normalize the provider response. The +/// route layer owns async HTTP I/O. +pub trait OcrProviderConfig: Send + Sync { fn supported_ocr_params(&self) -> &'static [&'static str]; fn map_ocr_params(&self, non_default_params: &Map) -> Map {