Skip to main content

ferrin_core/batch/
mod.rs

1//! Batch processing: [`start_batch`], [`get_batch_status`],
2//! [`get_batch_results`], [`cancel_batch`] and [`list_batches`].
3//!
4//! Design: `docs/01-architecture/11-other-modalities.md` ยง8.
5
6mod operations;
7mod request;
8mod result;
9mod start;
10
11use ferrin_spec::BatchRef;
12
13pub use ferrin_spec::BatchId;
14pub use ferrin_spec::batch::BatchCancelResult;
15pub use ferrin_spec::batch::BatchError;
16pub use ferrin_spec::batch::BatchItem;
17pub use ferrin_spec::batch::BatchListItem;
18pub use ferrin_spec::batch::BatchListResult;
19pub use ferrin_spec::batch::BatchRequest as ModelBatchRequest;
20pub use ferrin_spec::batch::BatchRequestCounts;
21pub use ferrin_spec::batch::BatchStartOptions;
22pub use ferrin_spec::batch::BatchStartResult;
23pub use ferrin_spec::batch::BatchState;
24pub use ferrin_spec::batch::BatchStatus;
25pub use ferrin_spec::batch::BatchWarning;
26pub use operations::CancelBatch;
27pub use operations::GetBatchResults;
28pub use operations::GetBatchStatus;
29pub use operations::ListBatches;
30pub use operations::cancel_batch;
31pub use operations::get_batch_results;
32pub use operations::get_batch_status;
33pub use operations::list_batches;
34pub use request::BatchRequest;
35pub use request::ImageBatchRequest;
36pub use request::TextBatchRequest;
37pub use result::BatchResultItem;
38pub use result::BatchResults;
39pub use result::ImageBatchResult;
40pub use result::TextBatchResult;
41pub use start::StartBatch;
42pub use start::start_batch;
43
44use crate::telemetry::ModelIdentity;
45
46pub(super) fn service_identity(batch: &BatchRef) -> ModelIdentity {
47    ModelIdentity::new(batch.provider().clone(), "batch")
48}