rig/rig-bedrock/examples/embedding_with_bedrock.rs

35 lines
774 B
Rust

use rig::Embed;
use rig_bedrock::{client::ClientBuilder, embedding::AMAZON_TITAN_EMBED_TEXT_V2_0};
use tracing::info;
#[derive(rig_derive::Embed, Debug)]
struct Greetings {
#[embed]
message: String,
}
#[tokio::main]
async fn main() -> Result<(), anyhow::Error> {
tracing_subscriber::fmt()
.with_max_level(tracing::Level::INFO)
.with_target(false)
.init();
let client = ClientBuilder::new().build().await;
let embeddings = client
.embeddings(AMAZON_TITAN_EMBED_TEXT_V2_0, 256)
.document(Greetings {
message: "aa".to_string(),
})?
.document(Greetings {
message: "bb".to_string(),
})?
.build()
.await?;
info!("{:?}", embeddings);
Ok(())
}