async_dashscope/
lib.rs

1//! `async-dashscope` 是为通义千问百炼平台实现的(非官方)异步 SDK,支持文本生成、多模态生成以及 embedding 功能。
2//! 通过该 SDK,开发者可以方便地调用通义千问百炼平台提供的各种 API,进行高效的异步操作。
3//!
4//! ### 安装
5//! 可以通过 Cargo 来安装 `async-dashscope`:
6//!
7//! ### 文本生成
8//!
9//! ```bash
10//! cargo add async-dashscope
11//! ```
12//! ```rust
13//! use async_dashscope::{
14//!     operation::{common::{ParametersBuilder, TranslationOptionsBuilder}, generation::{ GenerationParamBuilder, InputBuilder, MessageBuilder}}, Client
15//! };
16
17//! #[tokio::main]
18//! async fn main() -> Result<(), Box<dyn std::error::Error>> {
19//!     let request = GenerationParamBuilder::default()
20//!         .model("qwen-mt-turbo".to_string())
21//!         .input(
22//!             InputBuilder::default()
23//!                 .messages(vec![MessageBuilder::default()
24//!                     .role("user")
25//!                     .content("我看到这个视频后没有笑")
26//!                     .build()
27//!                     .unwrap()])
28//!                 .build()?,
29//!         )
30//!         .parameters(
31//!             ParametersBuilder::default()
32//!                 .translation_options(
33//!                     TranslationOptionsBuilder::default()
34//!                         .source_lang("Chinese")
35//!                         .target_lang("English")
36//!                         .build()?,
37//!                 )
38//!                 .build()?,
39//!         )
40//!         .build()?;
41
42//!     let client = Client::new();
43
44//!     let response = client.generation().call(request).await?;
45//!     dbg!(response);
46//!     Ok(())
47//! }
48
49//! ```
50
51mod client;
52pub mod config;
53pub mod error;
54pub mod operation;
55
56pub use client::Client;