Module common

Source
Expand description

§Common Types and Structures

This module contains common data structures and types used across the OpenAI Tools library. These structures represent core concepts like messages, token usage, and other shared components that are used by multiple API endpoints.

§Key Components

  • Message: Represents a single message in a conversation
  • Usage: Token usage statistics for API requests

§Example

use openai_tools::common::{Message, Usage};

// Create a user message
let message = Message::from_string("user".to_string(), "Hello, world!".to_string());

// Usage is typically returned by API responses
let usage = Usage::new(
    Some(10),    // input_tokens
    None,        // input_tokens_details
    Some(20),    // output_tokens
    None,        // output_tokens_details
    Some(10),    // prompt_tokens
    Some(20),    // completion_tokens
    Some(30),    // total_tokens
    None,        // completion_tokens_details
);

println!("Total tokens used: {:?}", usage.total_tokens);

Structs§

Message
Represents a single message in a conversation with an AI model.
MessageContent
Represents the content of a message, which can be either text or an image.
Usage
Token usage statistics for OpenAI API requests.