1 个不稳定版本
0.1.1 | 2023 年 5 月 12 日 |
---|---|
0.1.0 |
|
#22 in #performing
60 每月下载量
用于 ai-sh
11KB
151 行
openai-api-stream-rs
这是一个 Rust 包,提供与 OpenAI API 交互的简单函数,并执行基于语言的任务。此包专注于从 API 获取流式响应,实现大量数据的实时处理。
特性
- 基于流的 API:该包支持从 OpenAI API 获取流式响应,允许您在数据可用时实时处理数据。
- GptStream:GptStream 结构体提供了一个方便的接口,用于与 OpenAI 聊天补全端点交互。
- JSON 解析:该包包括强大的 JSON 解析功能,用于处理 API 响应。
- 配置选项:您可以轻松配置各种参数,如模型选择、温度、top-p 等。
用法
要使用此包,只需创建一个 OpenAIStream 结构体实例,并将您的 API 密钥作为参数传递。然后,使用您想要的输入调用 gpt_stream 方法,并等待响应。返回的 GptStream 对象允许您异步迭代流式 API 响应。
示例
[dependencies]
"openai-api-stream-rs" = "0.1.0"
"tokio" = { version = "1.12.0", features = ["full"] }
"futures" = "0.3.19"
use openai_api_stream_rs::OpenAIStream;
use futures::stream::StreamExt;
#[tokio::main]
async fn main() {
let api_key = "your_api_key";
let openai_stream = OpenAIStream::new(api_key.to_string());
let input = r#"
{
"model": "gpt-3.5-turbo",
"messages": [
{
"role": "user",
"content": "Write a simple advanced usage of Rust in one sentence"
}
]
}
"#;
let gpt_stream = openai_stream.gpt_stream(input).await.unwrap();
let mut gpt_stream = Box::pin(gpt_stream);
while let Some(response) = gpt_stream.next().await {
println!("{}", response);
}
}
注意:将 "your_api_key" 替换为您的实际 OpenAI API 密钥。
有关更多详细信息和高级配置选项,请参阅包文档。
注意:此包仍在开发中,可能会进行更改和更新。
依赖项
~10–27MB
~400K SLoC