Expand description
Rust types for the xAI API.
This crate provides type definitions for interacting with the xAI API, including support for Grok models via chat completions, embeddings, image generation, and more.
§Overview
The types in this crate are organized by API endpoint:
chat- Chat completions API (/v1/chat/completions)responses- Responses API (/v1/responses)embeddings- Embeddings API (/v1/embeddings)images- Image generation API (/v1/images/generations)models- Models API (/v1/models,/v1/language-models, etc.)messages- Anthropic-compatible messages API (/v1/messages)search- Document search API (/v1/documents/search)tokenize- Tokenization API (/v1/tokenize-text)
§Features
std(default) - Enable std library support. Usesstd::collections::HashMap.- When
stdis disabled (no_std), useshashbrown::HashMapand requiresalloc.
§Example
ⓘ
use xai_openapi::chat::{ChatRequest, Message};
let request = ChatRequest {
model: Some("grok-3".to_string()),
messages: vec![Message::User {
content: "Hello!".into(),
name: None,
}],
..Default::default()
};Re-exports§
pub use chat::ChatRequest;pub use chat::ChatResponse;pub use chat::Message;pub use common::Content;pub use common::ImageUrl;pub use common::StreamOptions;pub use embeddings::EmbeddingRequest;pub use embeddings::EmbeddingResponse;pub use images::GenerateImageRequest;pub use images::GeneratedImageResponse;pub use messages::MessageRequest;pub use messages::MessageResponse;pub use models::LanguageModel;pub use models::ListModelsResponse;pub use models::Model;pub use responses::ModelRequest;pub use responses::ModelResponse;pub use tools::FunctionDefinition;pub use tools::Tool;pub use tools::ToolCall;pub use tools::ToolChoice;pub use usage::Usage;
Modules§
- chat
- Chat completions API types for
/v1/chat/completionsendpoint. - common
- Common types shared across multiple xAI API endpoints.
- embeddings
- Embedding API types for
/v1/embeddingsendpoint. - images
- Image generation API types for
/v1/images/generationsand/v1/images/editsendpoints. - messages
- Anthropic-compatible messages API types for
/v1/messagesendpoint. - models
- Model information types for
/v1/modelsand related endpoints. - responses
- Responses API types for
/v1/responsesendpoint. - search
- Document search API types for
/v1/documents/searchendpoint. - tokenize
- Tokenization API types for
/v1/tokenize-textendpoint. - tools
- Tool and function call types for xAI API.
- usage
- Token usage tracking types for xAI API responses.