openai api rs
v5.2.3
Perpustakaan Rust Klien API OpenAI menyediakan akses yang nyaman ke API OpenAI dari Aplikasi Rust.
Lihat docs.rs.
Cargo.toml
[ dependencies ]
openai-api-rs = " 5.2.3 " Perpustakaan perlu dikonfigurasi dengan kunci rahasia akun Anda, yang tersedia di situs web. Kami merekomendasikan mengaturnya sebagai variabel lingkungan. Berikut adalah contoh menginisialisasi perpustakaan dengan kunci API yang dimuat dari variabel lingkungan dan membuat penyelesaian:
$ export OPENAI_API_KEY=sk-xxxxxxx let api_key = env :: var ( "OPENAI_API_KEY" ) . unwrap ( ) . to_string ( ) ;
let client = OpenAIClient :: builder ( ) . with_api_key ( api_key ) . build ( ) ? ; let req = ChatCompletionRequest :: new (
GPT4_O . to_string ( ) ,
vec ! [ chat_completion:: ChatCompletionMessage {
role: chat_completion:: MessageRole ::user,
content: chat_completion:: Content :: Text ( String ::from ( "What is bitcoin?" ) ) ,
name: None ,
tool_calls: None ,
tool_call_id: None ,
} ] ,
) ; let result = client . chat_completion ( req ) ? ;
println ! ( "Content: {:?}" , result.choices [ 0 ] .message.content ) ;$ export OPENAI_API_BASE=https://api.openai.com/v1 use openai_api_rs :: v1 :: api :: OpenAIClient ;
use openai_api_rs :: v1 :: chat_completion :: { self , ChatCompletionRequest } ;
use openai_api_rs :: v1 :: common :: GPT4_O ;
use std :: env ;
# [ tokio :: main ]
async fn main ( ) -> Result < ( ) , Box < dyn std :: error :: Error > > {
let api_key = env :: var ( "OPENAI_API_KEY" ) . unwrap ( ) . to_string ( ) ;
let client = OpenAIClient :: builder ( ) . with_api_key ( api_key ) . build ( ) ? ;
let req = ChatCompletionRequest :: new (
GPT4_O . to_string ( ) ,
vec ! [ chat_completion:: ChatCompletionMessage {
role: chat_completion:: MessageRole ::user,
content: chat_completion:: Content :: Text ( String ::from ( "What is bitcoin?" ) ) ,
name: None ,
tool_calls: None ,
tool_call_id: None ,
} ] ,
) ;
let result = client . chat_completion ( req ) . await ? ;
println ! ( "Content: {:?}" , result.choices [ 0 ] .message.content ) ;
println ! ( "Response Headers: {:?}" , result.headers ) ;
Ok ( ( ) )
}Lebih banyak contoh: contoh
Lihat dokumentasi API lengkap untuk contoh semua fungsi yang tersedia.
Proyek ini dilisensikan di bawah lisensi MIT.