Skip to main content

Module request

Module request 

Source
Expand description

高级请求构建器模块

提供类型安全的 API 请求构建器,简化与 DeepSeek API 的交互。

§主要类型

  • Request: 主要的请求构建器,提供流畅的 API 来构建聊天补全请求

§示例

§基本使用

use ds_api::{Request, Message, Role};

let request = Request::basic_query(vec![
    Message::new(Role::User, "Hello, world!")
]);

§使用构建器模式

use ds_api::{Request, Message, Role};

let request = Request::builder()
    .add_message(Message::new(Role::System, "You are a helpful assistant."))
    .add_message(Message::new(Role::User, "What is Rust?"))
    .temperature(0.7)
    .max_tokens(100);

§流式响应

use ds_api::{Request, Message, Role};
use futures::StreamExt;

let token = "your_token".to_string();
let client = reqwest::Client::new();

let request = Request::basic_query(vec![
    Message::new(Role::User, "Tell me a story.")
]);

let stream = request.execute_client_streaming(&client, &token).await?;

// 使用 pin_mut! 宏来固定流
use futures::pin_mut;
pin_mut!(stream);

while let Some(chunk_result) = stream.next().await {
    match chunk_result {
        Ok(chunk) => {
            if let Some(content) = chunk.choices[0].delta.content.as_ref() {
                print!("{}", content);
            }
        }
        Err(e) => eprintln!("Error: {}", e),
    }
}

Re-exports§

pub use crate::raw::*;

Structs§

Request
一个发送至 Deepseek API 的请求对象,封装了原始请求数据。 该结构体保证请求合法