text_embedding/
text-embedding.rs

1use async_dashscope::{
2    operation::embeddings::{
3        EmbeddingsInputBuilder, EmbeddingsParamBuilder, EmbeddingsParametersBuilder,
4    },
5    Client,
6};
7
8#[tokio::main]
9async fn main() -> Result<(), Box<dyn std::error::Error>> {
10    let client = Client::new();
11    let input = EmbeddingsParamBuilder::default()
12        .model("text-embedding-v3")
13        .input(
14            EmbeddingsInputBuilder::default()
15                .texts(vec![
16                    "风急天高猿啸哀".into(),
17                    "渚清沙白鸟飞回".into(),
18                    "无边落木萧萧下".into(),
19                    "不尽长江滚滚来".into(),
20                ])
21                .build()?,
22        )
23        .parameters(
24            EmbeddingsParametersBuilder::default()
25                .dimension(1024)
26                .build()?,
27        )
28        .build()?;
29    let output = client.text_embeddings().call(input).await?;
30
31    dbg!(output);
32
33    Ok(())
34}