pub mod axum_server;
pub mod chat_template;
pub mod middleware;
pub mod model_registry;
pub mod openai;
pub mod traits;
pub mod types;
pub use traits::{
AuthProvider, HttpServer, MiddlewareStack, RateLimiter as ServerRateLimiter, RequestHandler,
ResponseBuilder, StreamingHandler,
};
pub use types::{
ApiVersion, Headers, HealthStatus, HttpMethod, HttpRequest, HttpResponse, RequestContext,
ServerConfig, ServerMetrics, StatusCode,
};
pub use openai::{
ChatCompletionsRequest, ChatCompletionsResponse, ChatFunction, ChatFunctionCall, ChatMessage,
ChatTool, ChatToolCall, CompletionPrompt, CompletionsRequest, CompletionsResponse,
FunctionCallChoice, ModelListResponse, OpenAiError, OpenAiErrorType, OpenAiResponseFormat,
StreamOptions, ToolChoice,
};
pub use middleware::{
AuthConfig, CompressionConfig, CorsConfig, LoggingConfig, MiddlewareConfig,
RateLimitConfig as MiddlewareRateLimitConfig,
};
pub use axum_server::{default_chat_sampling_params, init_prometheus_recorder, AxumServer};
pub use model_registry::{
LoraAdapterModel, ServedModelEntry, ServedModelKind, ServedModelName, ServedModelRegistry,
ServedModelRegistryError,
};