1pub mod axum_server;
19pub mod chat_template;
20pub mod middleware;
21pub mod model_registry;
22pub mod openai;
23pub mod traits;
24pub mod types;
25
26pub use traits::{
28 AuthProvider, HttpServer, MiddlewareStack, RateLimiter as ServerRateLimiter, RequestHandler,
29 ResponseBuilder, StreamingHandler,
30};
31
32pub use types::{
33 ApiVersion, Headers, HealthStatus, HttpMethod, HttpRequest, HttpResponse, RequestContext,
34 ServerConfig, ServerMetrics, StatusCode,
35};
36
37pub use openai::{
38 ChatCompletionsRequest, ChatCompletionsResponse, ChatFunction, ChatFunctionCall, ChatMessage,
39 ChatTool, ChatToolCall, CompletionPrompt, CompletionsRequest, CompletionsResponse,
40 FunctionCallChoice, ModelListResponse, OpenAiError, OpenAiErrorType, OpenAiResponseFormat,
41 StreamOptions, ToolChoice,
42};
43
44pub use middleware::{
45 AuthConfig, CompressionConfig, CorsConfig, LoggingConfig, MiddlewareConfig,
46 RateLimitConfig as MiddlewareRateLimitConfig,
47};
48
49pub use axum_server::{default_chat_sampling_params, init_prometheus_recorder, AxumServer};
50pub use model_registry::{
51 LoraAdapterModel, ServedModelEntry, ServedModelKind, ServedModelName, ServedModelRegistry,
52 ServedModelRegistryError,
53};