1pub mod cluster;
4pub mod common;
5pub mod encode;
6pub mod estimate;
7pub mod generate;
8pub mod item;
9pub mod jobs;
10pub mod resources;
11
12pub use cluster::{
13 AdaptiveBatchingStatus, CapacityInfo, ClusterStatusMessage, ClusterSummary, GpuMetrics,
14 HealthResponse, ModelCapabilities, ModelConfig, ModelDims, ModelInfo, ModelStatus,
15 ModelSummary, ServerInfo, StatusMessage, WorkerInfo, WorkerStatusMessage,
16};
17pub use common::{
18 DType, ModelState, OutputDType, OutputType, RequestMetadata, RequestUsage, TimingInfo,
19};
20pub use encode::{
21 Classification, DetectedObject, EncodeResult, Entity, ExtractItemError, ExtractResult,
22 Multivector, Relation, ScoreEntry, ScoreResult, ScoreUsage, SparseVector,
23};
24pub use estimate::{AppliedRate, CostEstimate, RateIdentity};
25pub use generate::{
26 ChatChoice, ChatChunkChoice, ChatCompletion, ChatCompletionChunk, ChatContent, ChatContentPart,
27 ChatDelta, ChatFinishReason, ChatImageUrl, ChatMessage, ChatRole, ChatUsage, FinishReason,
28 GenerateChunk, GenerateResult, GenerationUsage, Grammar, ResponseInputMessage,
29 ResponseOutputMessage, ResponseOutputText, ResponseResult, ResponseUsage,
30};
31pub use item::{AudioInput, BinaryInput, ImageInput, Item};
32pub use jobs::{
33 ConnectorJobAttempt, ConnectorJobCapabilities, ConnectorJobCheckpoint,
34 ConnectorJobItemOutcomes, ConnectorJobOverlapOwner, ConnectorJobPlan, ConnectorJobPublication,
35 ConnectorJobRecovery, ConnectorJobRepairWindow, ConnectorJobValidation,
36 ConnectorPlanOutputShape, JobChunk, JobExecution, JobFieldMap, JobPreflight, JobResultItem,
37 JobResults, JobState, JobStatus,
38};
39pub use resources::{
40 AssignedWorkerInfo, Batch, BatchList, BatchRequestCounts, Connection, ConnectionCreated,
41 ConnectionRevoked, File, FileDeleted, FileList, PoolInfo, PoolListItem, PoolSpecResponse,
42 PoolStatusInfo,
43};
44
45pub(crate) fn null_as_default<'de, D, T>(deserializer: D) -> Result<T, D::Error>
50where
51 D: serde::Deserializer<'de>,
52 T: serde::Deserialize<'de> + Default,
53{
54 use serde::Deserialize as _;
55
56 Ok(Option::<T>::deserialize(deserializer)?.unwrap_or_default())
57}