Skip to main content

Crate llmrs

Crate llmrs 

Source
Expand description

§llmrs

Unofficial Rust SDK focused on calling IBM WatsonX APIs: watsonx.ai (text generation) and watsonx.orchestrate (assistants and chat).

§Features

  • WatsonX AI: generate text, stream responses, list models, batch and chat completion
  • WatsonX Orchestrate: agents, threads, send/stream messages
  • Auth: IAM token handling
  • Config: env-based; credentials in .env (see .env.example)

§Quick Start

use llmrs::{WatsonxConnection, GenerationConfig, models::models};

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let client = WatsonxConnection::new().from_env().await?;
    let config = GenerationConfig::default().with_model(models::GRANITE_4_H_SMALL);
    let result = client.generate_with_config("Hello!", &config).await?;
    println!("{}", result.text);
    Ok(())
}

See examples/ for more.

Re-exports§

pub use client::WatsonxClient;
pub use config::WatsonxConfig;
pub use connection::WatsonxConnection;
pub use error::Error;
pub use error::Result;
pub use types::BatchItemResult;
pub use types::BatchGenerationResult;
pub use types::BatchRequest;
pub use types::ChatCompletionConfig;
pub use types::ChatCompletionResult;
pub use types::ChatMessage;
pub use types::GenerationConfig;
pub use types::GenerationResult;
pub use types::ModelInfo;
pub use orchestrate::Agent;
pub use orchestrate::Message;
pub use orchestrate::MessagePayload;
pub use orchestrate::OrchestrateClient;
pub use orchestrate::OrchestrateConfig;
pub use orchestrate::OrchestrateConnection;
pub use models::*;
pub use orchestrate::*;

Modules§

auth
Authentication utilities for IBM Cloud services
client
WatsonX AI client implementation
config
WatsonX configuration.
connection
Simplified WatsonX AI connection helper
env
Central list of environment variable names.
error
Error types for llmrs
models
WatsonX model definitions and constants
orchestrate
Watson Orchestrate SDK Module
security
Minimal security support for API credentials.
sse
Server-Sent Events (SSE) parsing utilities
types
Core types for WatsonX operations