mirror of https://github.com/0xplaygrounds/rig
35 lines
774 B
Rust
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(())
|
|
}
|