openai api rs
v5.2.3
Die OpenAI -API -Client -Rust -Bibliothek bietet einen bequemen Zugang zur OpenAI -API von Rust -Anwendungen.
Schauen Sie sich die Docs.rs.
Fracht. Toml
[ dependencies ]
openai-api-rs = " 5.2.3 " Die Bibliothek muss mit dem geheimen Schlüssel Ihres Kontos konfiguriert werden, der auf der Website verfügbar ist. Wir empfehlen, es als Umgebungsvariable festzulegen. Hier ist ein Beispiel für die Initialisierung der Bibliothek mit dem API -Schlüssel, der aus einer Umgebungsvariablen geladen wurde und eine Fertigstellung erstellt:
$ 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 ( ( ) )
}Weitere Beispiele: Beispiele
In der vollständigen API -Dokumentation finden Sie Beispiele für alle verfügbaren Funktionen.
Dieses Projekt ist unter MIT -Lizenz lizenziert.