mirror of
https://github.com/BerriAI/litellm.git
synced 2026-09-28 01:32:17 +00:00
Add an aws_textract OCR provider on the Rust route, with no Python path. The detect-document-text model returns plain lines and analyze-document renders layout and tables as markdown. Both use Textract's synchronous API, so a multi-page PDF or TIFF is rejected with an error that names the single-page limit. A call with no region fails instead of falling back to Bedrock's default SigV4 covers the request body, and host hooks can rewrite that body before it is sent. litellm-http now has OutboundRequest, which serializes the body once, shows those bytes to a RequestSigner and is the only thing a route can send. Chat, audio transcription and OCR build it after their hooks ran, so a callback that redacts the body still produces a valid Bedrock or Textract signature ChatCompletionsAuth and AudioTranscriptionAuth are replaced by litellm_auth::RequestAuth, and one helper in core turns it into a signed or unsigned request. Audio transcription now signs only the AWS header set and rejects a forwarded header that SigV4 computes, the same as chat The OCR catalog routes aws_textract as Rust required, and the dispatch context reads the provider from the model prefix so a provider scoped rule can match
10 lines
176 B
Rust
10 lines
176 B
Rust
pub mod audio_transcription;
|
|
pub mod chat_completions;
|
|
pub mod constants;
|
|
pub mod error;
|
|
pub mod messages;
|
|
pub mod ocr;
|
|
mod outbound;
|
|
pub mod responses;
|
|
|
|
pub use error::Error;
|