Skip to main content

Crate starweaver_model

Crate starweaver_model 

Source
Expand description

Provider-neutral model protocol and first wire adapters for Starweaver.

Re-exports§

pub use adapter::ModelAdapter;
pub use adapter::ModelError;
pub use adapter::ModelRequestContext;
pub use adapter::ModelRequestParameters;
pub use adapter::ModelResponseEventStream;
pub use adapter::ModelRunSession;
pub use adapter::NativeToolDefinition;
pub use adapter::RealModelRequestGuard;
pub use adapter::ToolDefinition;
pub use adapter::allow_real_model_requests;
pub use adapter::allow_real_model_requests_guard;
pub use adapter::block_real_model_requests;
pub use adapter::set_allow_real_model_requests;
pub use media::ImageDimensions;
pub use media::MediaKind;
pub use media::MediaPolicy;
pub use media::MediaPreflight;
pub use media::ParsedDataUrl;
pub use media::base64_encoded_len;
pub use media::detect_image_dimensions;
pub use media::detect_media_kind;
pub use media::is_document_media_type;
pub use media::is_image_media_type;
pub use media::is_video_media_type;
pub use media::parse_data_url;
pub use media::raw_budget_from_base64_limit;
pub use message::CachePointTtl;
pub use message::ContentPart;
pub use message::FinishReason;
pub use message::ModelMessage;
pub use message::ModelRequest;
pub use message::ModelRequestPart;
pub use message::ModelResponse;
pub use message::ModelResponsePart;
pub use message::ProviderInfo;
pub use message::ProviderPartInfo;
pub use message::TOOL_RETURN_APPROVAL_ARGUMENTS_METADATA_KEY;
pub use message::ToolArguments;
pub use message::ToolCallPart;
pub use message::ToolReturnPart;
pub use oauth::CODEX_ORIGINATOR;
pub use oauth::CodexOAuthResponsesModel;
pub use oauth::OAuthBearerHttpClient;
pub use oauth::build_codex_headers;
pub use oauth::build_codex_model;
pub use oauth::build_codex_model_with_profile;
pub use oauth::build_session_headers;
pub use oauth::codex_model_profile;
pub use oauth::patch_codex_responses_body;
pub use presets::ModelConfigPreset;
pub use presets::ModelConfigPresetData;
pub use presets::ModelPresetError;
pub use presets::ModelRuntimePreset;
pub use presets::ModelSettingsPreset;
pub use presets::anthropic_http_config;
pub use presets::gemini_http_config;
pub use presets::get_model_config;
pub use presets::get_model_settings;
pub use presets::google_cloud_http_config;
pub use presets::google_cloud_project_http_config;
pub use presets::list_model_config_presets;
pub use presets::list_model_settings_presets;
pub use presets::model_runtime_preset;
pub use presets::openai_chat_http_config;
pub use presets::openai_responses_http_config;
pub use presets::xai_responses_http_config;
pub use profile::JsonSchemaTransformer;
pub use profile::MessageNormalization;
pub use profile::ModelProfile;
pub use profile::NativeToolKind;
pub use profile::ProtocolFamily;
pub use profile::StructuredOutputMode;
pub use providers::client::ProtocolModelClient;
pub use registry::ProviderAlias;
pub use registry::ProviderAliasRegistry;
pub use request::CONTEXT_ORIGIN_ENVIRONMENT_CONTEXT;
pub use request::CONTEXT_ORIGIN_HANDOFF;
pub use request::CONTEXT_ORIGIN_METADATA;
pub use request::CONTEXT_ORIGIN_RUNTIME_CONTEXT;
pub use request::CONTEXT_ORIGIN_TOOL_RETURN_MEDIA;
pub use request::CONTEXT_TYPE_METADATA;
pub use request::INSTRUCTION_DYNAMIC_METADATA;
pub use request::INSTRUCTION_ORIGIN_AGENT;
pub use request::INSTRUCTION_ORIGIN_DYNAMIC_INSTRUCTION;
pub use request::INSTRUCTION_ORIGIN_METADATA;
pub use request::INSTRUCTION_ORIGIN_TOOLSET;
pub use request::InstructionPart;
pub use request::OutputMode;
pub use request::PreparedInstruction;
pub use request::PreparedModelRequest;
pub use request::attach_prepared_instructions;
pub use request::context_origin_metadata;
pub use request::prepare_messages;
pub use request::prepare_model_request;
pub use settings::AnthropicSettings;
pub use settings::BedrockSettings;
pub use settings::CodexSettings;
pub use settings::GatewaySettings;
pub use settings::GoogleCloudServiceTier;
pub use settings::GoogleSettings;
pub use settings::ModelSettings;
pub use settings::OpenAiChatSettings;
pub use settings::OpenAiPromptCacheMode;
pub use settings::OpenAiPromptCacheOptions;
pub use settings::OpenAiPromptCacheTtl;
pub use settings::OpenAiResponsesSettings;
pub use settings::ProviderReplaySettings;
pub use settings::ProviderSettings;
pub use settings::ResponseStreamTransport;
pub use settings::ServiceTier;
pub use settings::ThinkingSettings;
pub use settings::ToolChoice;
pub use settings::format_openai_prompt_cache_key;
pub use settings::supports_automatic_openai_prompt_cache_key;
pub use settings::supports_openai_prompt_cache_breakpoints;
pub use stream::ModelResponseStreamEvent;
pub use stream::ModelStreamState;
pub use stream::PartDelta;
pub use stream::PartEnd;
pub use stream::PartStart;
pub use stream::StreamDelta;
pub use stream::StreamDiagnostic;
pub use stream::StreamLifecycle;
pub use test::FunctionModel;
pub use test::FunctionModelInfo;
pub use test::TestModel;
pub use test::latest_user_text;
pub use test::tool_call_response;
pub use transport::AuthConfig;
pub use transport::DynHttpClient;
pub use transport::DynProviderRequestAuditRecorder;
pub use transport::DynSleeper;
pub use transport::HttpModelConfig;
pub use transport::HttpRequest;
pub use transport::HttpRequestOptions;
pub use transport::HttpResponse;
pub use transport::InMemoryProviderRequestAuditRecorder;
pub use transport::MaxTokensParameter;
pub use transport::ModelEventStream;
pub use transport::ModelHttpClient;
pub use transport::ModelSleeper;
pub use transport::NoopSleeper;
pub use transport::ProviderRequestAuditPayloadPolicy;
pub use transport::ProviderRequestAuditPolicy;
pub use transport::ProviderRequestAuditRecorder;
pub use transport::ProviderRequestAuditSnapshot;
pub use transport::ReqwestHttpClient;
pub use transport::RetryPolicy;
pub use transport::TokioSleeper;
pub use wrappers::ConcurrencyLimitedModel;
pub use wrappers::DynModelAdapter;
pub use wrappers::DynModelExecutionHook;
pub use wrappers::FallbackModel;
pub use wrappers::HookedModel;
pub use wrappers::ModelExecutionHook;
pub use wrappers::ModelExecutionMetadata;
pub use wrappers::ProfileOverrideModel;

Modules§

adapter
Model adapter traits and request context types.
media
Media preflight helpers for provider-neutral model content.
message
Canonical message history and request/response parts.
oauth
OAuth-backed model provider integration.
presets
Built-in model presets for common provider configurations.
profile
Model capability profiles and protocol families.
providers
Wire mappers for the first supported provider protocol families.
registry
Provider alias registry for protocol family resolution.
request
Request preparation snapshots and profile-driven normalization.
settings
Provider-neutral generation settings.
stream
Canonical model stream events.
test
Deterministic model adapters for agent tests.
transport
HTTP transport boundary for production model adapters.
wrappers
Reusable model adapter wrappers.