Dino Geek, intenta ayudarte

¿Cómo conectarse a la API de ChatGPT con Rust?


Para conectarse a la API de ChatGPT usando Rust, necesitarás realizar una solicitud HTTP a la API de OpenAI. OpenAI no proporciona una SDK oficial de Rust, por eso tendrás que usar una biblioteca HTTP de terceros como “reqwest” o “hyper”.

Aquí te muestro un código de muestra utilizando “reqwest”.

Nota: No olvides añadir “reqwest” y “tokio” en tu archivo Cargo.toml bajo las dependencias.

```Rust
use reqwest::header::AUTHORIZATION;
use serde::{Deserialize, Serialize};
use reqwest::Client;

#[tokio::main]
async fn main() -> Result<(), Box> { // Las estructuras para enviar/recibir datos a/desde la API. #[derive(Serialize)] struct Prompt<‘a> { prompt: &‘a str, max_tokens: i32, } #[derive(Deserialize)] struct APIResponse { id: String, object: String, created: i64, model: String, choices: Vec, } #[derive(Deserialize)] struct Choice { text: String, finish_reason: String, index: i32, }

// Creamos un cliente HTTP. let client = Client::new(); // Generamos la URL de la API. let url = “https://api.openai.com/v1/engines/davinci-codex/completions”; // Creamos una variable para el encabezado de autorización, // reemplaza “tu_clave_de_api_aqui” con tu clave API de OpenAI. let auth_header_value = “Bearer tu_clave_de_api_aqui”; // Creamos una Prompt. let p = Prompt { prompt: “Traduzca este texto al francés: ‘Hola mundo’”, max_tokens: 60, }; // Enviamos la solicitud a la API de OpenAI. let resp = client .post(url) .header(AUTHORIZATION, auth_header_value) .json(&p) .send() .await? .text() .await?; // Parseamos la respuesta como JSON y la extraemos en nuestra estructura APIResponse. let parsed_resp: APIResponse = serde_json::from_str(&resp)?; // Imprimimos el texto. println!(“{}”, parsed_resp.choices0.text); Ok(()) } ``` Asegúrate de manejar correctamente los errores. Estoy utilizando el operador `?` para propagar cualquier error encontrado y terminar el programa, pero en un escenario del mundo real podrías querer un manejo de errores más explícito que trate de recuperarse de errores o informe al usuario de manera más amigable.

Genera artículos simplemente para optimizar tu SEO
Genera artículos simplemente para optimizar tu SEO





DinoGeek ofrece artículos sencillos sobre tecnologías complejas

¿Desea ser citado en este artículo? Es muy sencillo, contáctenos en dino@eiki.fr.

CSS | NodeJS | DNS | DMARC | MAPI | NNTP | htaccess | PHP | HTTPS | Drupal | WEB3 | LLM | Wordpress | TLD | Nombre de dominio | IMAP | TCP | NFT | MariaDB | FTP | Zigbee | NMAP | SNMP | SEO | E-Mail | LXC | HTTP | MangoDB | SFTP | RAG | SSH | HTML | ChatGPT API | OSPF | JavaScript | Docker | OpenVZ | ChatGPT | VPS | ZIMBRA | SPF | UDP | Joomla | IPV6 | BGP | Django | Reactjs | DKIM | VMWare | RSYNC | Python | TFTP | Webdav | FAAS | Apache | IPV4 | LDAP | POP3 | SMTP

| Whispers of love (API) | Déclaration d'Amour |






Aviso legal / Condiciones generales de uso