openai api rs
v5.2.3
La Biblioteca de Rust Client Rust de OpenAI API proporciona un acceso conveniente a la API de OpenAI desde las aplicaciones de Rust.
Echa un vistazo a los docs.rs.
Carga.toml
[ dependencies ]
openai-api-rs = " 5.2.3 " La biblioteca debe configurarse con la clave secreta de su cuenta, que está disponible en el sitio web. Recomendamos establecerlo como una variable de entorno. Aquí hay un ejemplo de inicialización de la biblioteca con la tecla API cargada desde una variable de entorno y creando una finalización:
$ 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 ( ( ) )
}Más ejemplos: ejemplos
Consulte la documentación completa de la API para ver ejemplos de todas las funciones disponibles.
Este proyecto tiene licencia bajo la licencia MIT.