Expand description
Synth API client.
This module provides a client for interacting with the Synth AI API.
§Example
ⓘ
use synth_ai_core::api::{SynthClient, GepaJobRequest, PolicyConfig};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let client = SynthClient::from_env()?;
// Submit a GEPA job
let job_id = client.jobs().submit_gepa(GepaJobRequest {
task_app_url: "http://localhost:8000".into(),
env_name: "default".into(),
policy: PolicyConfig::default(),
..Default::default()
}).await?;
// Poll until complete
let result = client.jobs().poll_until_complete(&job_id, 3600.0, 15.0).await?;
println!("Best score: {:?}", result.best_score);
Ok(())
}Re-exports§
pub use client::SynthClient;pub use types::PolicyJobStatus;pub use types::EvalJobStatus;pub use types::PolicyConfig;pub use types::GepaConfig;pub use types::MiproConfig;pub use types::GepaJobRequest;pub use types::MiproJobRequest;pub use types::EvalJobRequest;pub use types::JobSubmitResponse;pub use types::PromptLearningResult;pub use types::EvalResult;pub use types::GraphCompletionRequest;pub use types::GraphCompletionResponse;pub use types::VerifierOptions;pub use types::VerifierResponse;pub use types::RlmOptions;pub use types::Usage;pub use jobs::JobsClient;pub use eval::EvalClient;pub use graphs::GraphsClient;