Perpustakaan Rust Async untuk Openai
async-openai adalah perpustakaan karat tidak resmi untuk Openai.
Perpustakaan membaca kunci API dari variabel lingkungan OPENAI_API_KEY .
# On macOS/Linux
export OPENAI_API_KEY= ' sk-... ' # On Windows Powershell
$ Env: OPENAI_API_KEY = ' sk-... 'async-openai . Satu -satunya jenis untuk API realtime yang diimplementasikan, dan dapat diaktifkan dengan fitur Bendera realtime . Jenis -jenis ini dapat berubah jika/ketika OpenAI merilis spesifikasi resmi untuk mereka.
use async_openai :: {
types :: { CreateImageRequestArgs , ImageSize , ImageResponseFormat } ,
Client ,
} ;
use std :: error :: Error ;
# [ tokio :: main ]
async fn main ( ) -> Result < ( ) , Box < dyn Error > > {
// create client, reads OPENAI_API_KEY environment variable for API key.
let client = Client :: new ( ) ;
let request = CreateImageRequestArgs :: default ( )
. prompt ( "cats on sofa and carpet in living room" )
. n ( 2 )
. response_format ( ImageResponseFormat :: Url )
. size ( ImageSize :: S256x256 )
. user ( "async-openai" )
. build ( ) ? ;
let response = client . images ( ) . create ( request ) . await ? ;
// Download and save images to ./data directory.
// Each url is downloaded and saved in dedicated Tokio task.
// Directory is created if it doesn't exist.
let paths = response . save ( "./data" ) . await ? ;
paths
. iter ( )
. for_each ( |path| println ! ( "Image file path: {}" , path.display ( ) ) ) ;
Ok ( ( ) )
}Terima kasih telah meluangkan waktu untuk berkontribusi dan meningkatkan proyek. Aku akan senang memilikimu!
Semua bentuk kontribusi, seperti permintaan fitur baru, perbaikan bug, masalah, dokumentasi, pengujian, komentar, contoh dll. Dibawakan.
Titik awal yang baik adalah melihat masalah terbuka yang ada.
Untuk mempertahankan kualitas proyek, minimal dari berikut ini adalah suatu keharusan untuk kontribusi kode:
Proyek ini mematuhi kode perilaku karat
Proyek ini dilisensikan di bawah lisensi MIT.