ai_client 0.1.0

A Rust crate for interacting with AI language model APIs
Documentation
use serde::Deserialize;

/// Token details for prompt and completion
#[derive(Debug, Deserialize, Clone)]
pub struct TokenDetails {
    pub text_tokens: u32,
    pub audio_tokens: u32,
    pub image_tokens: u32,
    pub cached_tokens: u32,
}

/// Completion token details
#[derive(Debug, Deserialize, Clone)]
pub struct CompletionTokenDetails {
    pub reasoning_tokens: u32,
    pub audio_tokens: u32,
    pub accepted_prediction_tokens: u32,
    pub rejected_prediction_tokens: u32,
}

/// Usage structure in the response
#[derive(Debug, Deserialize, Clone)]
pub struct Usage {
    pub prompt_tokens: u32,
    pub completion_tokens: u32,
    pub total_tokens: u32,
    pub prompt_tokens_details: TokenDetails,
    pub completion_tokens_details: CompletionTokenDetails,
}