Skip to main content

crabllm_core/
lib.rs

1pub use config::{
2    GatewayConfig, KeyConfig, KeyRateLimit, PricingConfig, ProviderConfig, ProviderKind,
3    StorageConfig,
4};
5pub use error::{ApiError, ApiErrorBody, Error};
6pub use extension::{Extension, ExtensionError, RequestContext};
7pub use model_info::ModelInfo;
8pub use provider::{BoxStream, ByteStream, Provider};
9pub use retrying::Retrying;
10pub use storage::{BoxFuture, KvPairs, PREFIX_LEN, Prefix, Storage, storage_key};
11pub use types::ir;
12pub use types::{
13    AnthropicContent, AnthropicContentBlock, AnthropicMessage, AnthropicMessages, AnthropicRequest,
14    AnthropicResponse, AnthropicStreamEvent, AnthropicSystem, AnthropicTool, AnthropicUsage,
15    AudioSpeechRequest, BlockDelta, ChatCompletionChunk, ChatCompletionRequest,
16    ChatCompletionResponse, Choice, ChunkChoice, CompletionTokensDetails, ContentBlock,
17    DEFAULT_MAX_TOKENS, Delta, Embedding, EmbeddingInput, EmbeddingRequest, EmbeddingResponse,
18    EmbeddingUsage, FinishReason, FunctionCall, FunctionCallDelta, FunctionDef, GeminiCandidate,
19    GeminiContent, GeminiFinishReason, GeminiFunctionCall, GeminiFunctionDecl,
20    GeminiFunctionResponse, GeminiPart, GeminiRequest, GeminiResponse, GeminiRole, GeminiToolDef,
21    GeminiUsage, GenerationConfig, ImageRequest, Message, MessageDeltaPayload, Model, ModelList,
22    MultipartField, OpenAiUsage, Role, Stop, ThinkingConfig, Tool, ToolCall, ToolCallDelta,
23    ToolChoice, ToolResultContent, ToolType,
24};
25pub use usage::Usage;
26
27mod config;
28mod error;
29mod extension;
30pub mod json;
31mod model_info;
32#[cfg(feature = "openapi")]
33mod openapi;
34mod provider;
35mod retrying;
36mod storage;
37mod types;
38mod usage;