openrouter-rs 0.11.1

A type-safe OpenRouter Rust SDK
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use openrouter_rs::{OpenRouterClient, api::embeddings::EmbeddingRequest};

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let api_key = std::env::var("OPENROUTER_API_KEY").expect("OPENROUTER_API_KEY must be set");
    let client = OpenRouterClient::builder().api_key(api_key).build()?;

    let request = EmbeddingRequest::builder()
        .model("openai/text-embedding-3-large")
        .input("OpenRouter Rust SDK embeddings example")
        .build()?;

    let response = client.models().create_embedding(&request).await?;
    println!("model: {}", response.model);
    println!("vectors: {}", response.data.len());

    Ok(())
}