Skip to main content

Module client

Module client 

Source
Available on crate feature http only.
Expand description

Async HTTP client for the TypeSafe API, enabled by the http feature.

use typesafe_client::{Client, NoulQuestion, Questions};

// Reads TYPESAFE_API_KEY, and optionally TYPESAFE_BASE_URL and TYPESAFE_DEFAULT_MODEL.
let client = Client::from_env()?;

let mut questions = Questions::new();
let urgent = questions.add("is_urgent", NoulQuestion::new("Does this convey urgency?"));

let response = client
    .system_one("Help! My payouts have been failing for 3 days.", questions)
    .send()
    .await?;
println!("urgent: {:.2}", response.answer(&urgent)?.noul);

Re-exports§

pub use crate::constants::API_KEY_ENV;
pub use crate::constants::BASE_URL_ENV;
pub use crate::constants::DEFAULT_BASE_URL;
pub use crate::constants::DEFAULT_MODEL;
pub use crate::constants::DEFAULT_MODEL_ENV;
pub use crate::constants::DEFAULT_TIMEOUT;
pub use crate::constants::REQUEST_ID_HEADER;

Structs§

Client
A TypeSafe API client. Cheap to clone; clones share one connection pool.
ClientBuilder
Configures a Client. Values not set explicitly fall back to the environment, then to the defaults.