Expand description
Synth core library.
This crate provides the core functionality for the Synth SDK:
- API client for backend communication
- Authentication and credential management
- Configuration handling
- HTTP client utilities
- Job orchestration and streaming
- Tracing and storage
- Tunnel management
- Data types (enums, rubrics, objectives, etc.)
- Streaming framework
- Local API client for containers
Re-exports§
pub use errors::CoreError;pub use errors::CoreResult;pub use errors::HttpErrorInfo;pub use errors::JobErrorInfo;pub use errors::UsageLimitInfo;pub use jobs::CandidateStatus;pub use jobs::JobEvent;pub use jobs::JobEventType;pub use jobs::JobLifecycle;pub use jobs::JobStatus;pub use api::EvalJobStatus;pub use api::GraphEvolveClient;pub use api::InferenceClient;pub use api::ContainerDeployClient;pub use api::ContainerDeployResponse;pub use api::ContainerDeploySpec;pub use api::ContainerDeployStatus;pub use api::ContainerDeploymentInfo;pub use api::ContainerLimits;pub use api::PolicyJobStatus;pub use api::SynthClient;pub use models::detect_model_provider;pub use models::normalize_model_identifier;pub use models::supported_models;pub use orchestration::base_event_schemas;pub use orchestration::base_job_event_schema;pub use orchestration::build_graph_evolve_config;pub use orchestration::build_graph_evolve_graph_record_payload;pub use orchestration::build_graph_evolve_inference_payload;pub use orchestration::build_graph_evolve_payload;pub use orchestration::build_graph_evolve_placeholder_dataset;pub use orchestration::build_program_candidate;pub use orchestration::build_prompt_learning_payload;pub use orchestration::convert_openai_sft;pub use orchestration::event_enum_values;pub use orchestration::extract_program_candidate_content;pub use orchestration::extract_stages_from_candidate;pub use orchestration::get_base_schema;pub use orchestration::graph_opt_supported_models;pub use orchestration::is_valid_event_type;pub use orchestration::load_graph_evolve_dataset;pub use orchestration::load_graph_job_toml;pub use orchestration::load_graphgen_taskset;pub use orchestration::merge_event_schema;pub use orchestration::normalize_graph_evolve_policy_models;pub use orchestration::normalize_transformation;pub use orchestration::parse_graph_evolve_dataset;pub use orchestration::parse_graphgen_taskset;pub use orchestration::resolve_graph_evolve_snapshot_id;pub use orchestration::seed_reward_entry;pub use orchestration::seed_score_entry;pub use orchestration::validate_event_type;pub use orchestration::validate_graph_job_payload;pub use orchestration::validate_graph_job_section;pub use orchestration::validate_graphgen_job_config;pub use orchestration::validate_graphgen_taskset;pub use orchestration::validate_prompt_learning_config;pub use orchestration::validate_prompt_learning_config_strict;pub use orchestration::CandidateInfo;pub use orchestration::EventCategory;pub use orchestration::EventParser;pub use orchestration::EventStream;pub use orchestration::GEPAProgress;pub use orchestration::GraphEvolveJob;pub use orchestration::GraphGenValidationResult;pub use orchestration::MutationSummary;pub use orchestration::MutationTypeStats;pub use orchestration::ParsedEvent;pub use orchestration::PhaseSummary;pub use orchestration::ProgramCandidate;pub use orchestration::ProgressTracker;pub use orchestration::PromptLearningJob;pub use orchestration::PromptLearningResult;pub use orchestration::PromptLearningValidationResult;pub use orchestration::PromptResults;pub use orchestration::RankedPrompt;pub use orchestration::SeedAnalysis;pub use orchestration::SeedInfo;pub use orchestration::StageInfo;pub use orchestration::TokenUsage;pub use orchestration::MAX_INSTRUCTION_LENGTH;pub use orchestration::MAX_ROLLOUT_SAMPLES;pub use orchestration::MAX_SEED_INFO_COUNT;pub use tracing::BaseEventFields;pub use tracing::EnvironmentEvent;pub use tracing::EventReward;pub use tracing::EventType;pub use tracing::HookCallback;pub use tracing::HookContext;pub use tracing::HookEvent;pub use tracing::HookManager;pub use tracing::LLMCallRecord;pub use tracing::LLMContentPart;pub use tracing::LLMMessage;pub use tracing::LLMUsage;pub use tracing::LMCAISEvent;pub use tracing::MarkovBlanketMessage;pub use tracing::MessageContent;pub use tracing::OutcomeReward;pub use tracing::RuntimeEvent;pub use tracing::SessionTimeStep;pub use tracing::SessionTrace;pub use tracing::SessionTracer;pub use tracing::StorageConfig;pub use tracing::TimeRecord;pub use tracing::ToolCallResult;pub use tracing::ToolCallSpec;pub use tracing::TraceStorage;pub use tracing::TracingError;pub use tracing::TracingEvent;pub use tracing::LibsqlTraceStorage;pub use data::data_enum_values;pub use data::lever_sensor_v1_contract_schema;pub use data::AdaptiveBatchLevel;pub use data::AdaptiveCurriculumLevel;pub use data::ApplicationErrorType;pub use data::ApplicationStatus;pub use data::Artifact;pub use data::ArtifactBundle;pub use data::ArtifactContent;pub use data::ContextOverride;pub use data::ContextOverrideStatus;pub use data::Criterion;pub use data::CriterionScoreData;pub use data::EventObjectiveAssignment;pub use data::GraphType;pub use data::InferenceMode;pub use data::JobStatus as DataJobStatus;pub use data::JobType;pub use data::Judgement;pub use data::Lever;pub use data::LeverActor;pub use data::LeverConstraints;pub use data::LeverFormat;pub use data::LeverKind;pub use data::LeverMutability;pub use data::LeverMutation;pub use data::LeverProvenance;pub use data::LeverSnapshot;pub use data::MiproLeverSummary;pub use data::ObjectiveDirection;pub use data::ObjectiveKey;pub use data::ObjectiveSpec;pub use data::OptimizationMode;pub use data::OutcomeObjectiveAssignment;pub use data::OutputMode;pub use data::ProviderName;pub use data::RewardObservation;pub use data::RewardScope;pub use data::RewardSource;pub use data::RewardType;pub use data::Rubric;pub use data::RubricAssignment;pub use data::ScopeKey;pub use data::ScopeKind;pub use data::Sensor;pub use data::SensorFrame;pub use data::SensorFrameSummary;pub use data::SensorKind;pub use data::SuccessStatus;pub use data::TrainingType;pub use data::VerifierMode;pub use streaming::BufferedHandler;pub use streaming::CallbackHandler;pub use streaming::JobStreamer;pub use streaming::JsonHandler;pub use streaming::MultiHandler;pub use streaming::StreamConfig;pub use streaming::StreamEndpoints;pub use streaming::StreamHandler;pub use streaming::StreamMessage;pub use streaming::StreamType;pub use sse::stream_sse;pub use sse::stream_sse_request;pub use sse::SseEvent;pub use sse::SseStream;pub use container::allowed_environment_api_keys;pub use container::apply_context_overrides;pub use container::build_rollout_response;pub use container::build_trace_payload;pub use container::build_trajectory_trace;pub use container::encrypt_for_backend;pub use container::ensure_container_auth;pub use container::ensure_split;pub use container::extract_api_key;pub use container::extract_message_text;pub use container::extract_trace_correlation_id;pub use container::get_agent_skills_path;pub use container::get_applied_env_vars;pub use container::get_default_max_completion_tokens;pub use container::get_groq_key;pub use container::get_openai_key;pub use container::include_event_history_in_response;pub use container::include_event_history_in_trajectories;pub use container::include_trace_correlation_id_in_response;pub use container::inject_system_hint;pub use container::is_direct_provider_call;pub use container::mint_environment_api_key;pub use container::normalise_seed;pub use container::normalize_chat_completion_url;pub use container::normalize_environment_api_key;pub use container::normalize_inference_url;pub use container::normalize_response_format_for_groq;pub use container::normalize_vendor_keys;pub use container::parse_tool_call_from_text;pub use container::parse_tool_calls_from_response;pub use container::prepare_for_groq;pub use container::prepare_for_openai;pub use container::resolve_sft_output_dir;pub use container::resolve_tracing_db_url;pub use container::setup_environment_api_key;pub use container::synthesize_tool_call_if_missing;pub use container::container_health;pub use container::tracing_env_enabled;pub use container::unique_sft_path;pub use container::validate_artifact_size;pub use container::validate_artifacts_list;pub use container::validate_context_overrides;pub use container::validate_context_snapshot;pub use container::validate_rollout_response_for_rl;pub use container::validate_container_url;pub use container::validate_trace_correlation_id;pub use container::verify_trace_correlation_id_in_response;pub use container::DatasetInfo;pub use container::HealthResponse;pub use container::InferenceInfo;pub use container::InfoResponse;pub use container::LimitsInfo;pub use container::RolloutEnvSpec;pub use container::RolloutMetrics;pub use container::RolloutPolicySpec;pub use container::RolloutRequest;pub use container::RolloutResponse;pub use container::RolloutSafetyConfig;pub use container::ContainerClient;pub use container::TaskDatasetSpec;pub use container::TaskDescriptor;pub use container::TaskInfo;pub use container::DEV_ENVIRONMENT_API_KEY_NAME;pub use container::ENVIRONMENT_API_KEY_ALIASES_NAME;pub use container::ENVIRONMENT_API_KEY_NAME;pub use container::MAX_ARTIFACTS_PER_ROLLOUT;pub use container::MAX_ARTIFACT_CONTENT_TYPE_LENGTH;pub use container::MAX_ARTIFACT_METADATA_BYTES;pub use container::MAX_CONTEXT_OVERRIDES_PER_ROLLOUT;pub use container::MAX_CONTEXT_SNAPSHOT_BYTES;pub use container::MAX_ENVIRONMENT_API_KEY_BYTES;pub use container::MAX_ENV_VARS;pub use container::MAX_ENV_VAR_VALUE_LENGTH;pub use container::MAX_FILES_PER_OVERRIDE;pub use container::MAX_FILE_SIZE_BYTES;pub use container::MAX_INLINE_ARTIFACT_BYTES;pub use container::MAX_TOTAL_INLINE_ARTIFACTS_BYTES;pub use container::MAX_TOTAL_SIZE_BYTES;pub use container::PREFLIGHT_SCRIPT_TIMEOUT_SECONDS;pub use container::SEALED_BOX_ALGORITHM;pub use trace_upload::TraceUploadClient;pub use trace_upload::UploadUrlResponse;pub use utils::cleanup_paths;pub use utils::compute_import_paths;pub use utils::create_and_write_json;pub use utils::ensure_private_dir;pub use utils::find_config_path;pub use utils::get_bin_path;pub use utils::get_home_config_file_paths;pub use utils::is_file_type;pub use utils::load_json_to_value;pub use utils::repo_root;pub use utils::should_filter_log_line;pub use utils::strip_json_comments;pub use utils::synth_bin_dir;pub use utils::synth_home_dir;pub use utils::synth_container_config_path;pub use utils::synth_user_config_path;pub use utils::validate_file_type;pub use utils::write_private_json;pub use utils::write_private_text;
Modules§
- api
- Synth API client.
- auth
- Authentication utilities for Synth SDK.
- config
- Configuration utilities for Synth SDK.
- container
- Local API client for container communication.
- data
- Data types for the Synth SDK.
- errors
- Core error types for Synth SDK.
- events
- http
- HTTP client for Synth API calls.
- jobs
- Job lifecycle management.
- models
- Model identifier utilities shared across SDKs.
- orchestration
- Job orchestration module.
- polling
- Polling and retry utilities.
- shared_
client - Shared HTTP client utilities for connection pooling.
- sse
- Server-Sent Events (SSE) streaming helpers.
- streaming
- Streaming framework for job events.
- trace_
upload - Trace upload helpers for large traces via presigned URLs.
- tracing
- Tracing system for recording session traces.
- tunnels
- urls
- utils
- x402
- x402 client-side helpers (HTTP 402 machine payments).