Buenos dias a todos
me gustaria si alguien me pudiese ayudar en este asunto que me trae de cabeza ya
Estoy intentando hacer una consulta a CHATGPT mediante los componentes RESTClient RESTRequest y RESTResponse de C++ Builder Rad Studio 12
tengo esta funcion y aunque lo he intentado de multiples maneras, siempre me tira este error que lo que deduzco es que no logra autentificarse bien en el API de entrada
Código:
{"error":{"message":"You didn't provide an API key. You need to provide your API key in an Authorization header using Bearer auth (i.e. Authorization: Bearer YOUR_KEY), or as the password field (with blank username) if you're accessing the API from your browser and are prompted for a username and password. You can obtain an API key from https:\/\/platform.openai.com\/account\/api-keys.","type":"invalid_request_error","param":null,"code":null}}
y el codigo fuente en C++ Builder que estoy usando con esos componentes REST es este:
he de aclarar que el codigo compila sin errores ninguno y funciona y en la ejecucion es cuando falla al intentar la Authorization
Código:
// Set REST Client
Memo1->Clear();
RESTClient1->BaseURL = "https://api.openai.com/v1/chat/completions";
RESTClient1->Params->AddHeader( "content", "Content-Type: application/json");
RESTClient1->Params->AddHeader( "Authorization", "Authorization: Bearer AQUI_PONGO_EL_API_KEY_QUE_TENGO_CREADO");
// Set REST Request
RESTRequest1->Method = TRESTRequestMethod::rmPOST;
RESTRequest1->Response = RESTResponse1;
RESTRequest1->Response->ContentType = "application/json";
RESTRequest1->Response->ContentEncoding="UTF-8";
RESTRequest1->ClearBody();
RESTRequest1->Body->Add("{ \"prompt\": \"it was a rainy day for\", \"max_tokens\": 150 }", Rest::Types::TRESTContentType::ctNotLeadChar);
RESTRequest1->Execute();
// Get REST Response
TJSONValue *jValue = RESTResponse1->JSONValue;
// Print REST Response
Memo1->Lines->Add(jValue->ToString());
he probado incluso a meter los Params de RESTClient de forma manual desde el IDE y en la propiedad Kind he probado con varios tipos "pkCOOKIE, pkHTTPSHEADERS, pkGetorPost, pkQUERY etc" y no parece ir ninguna aunque creo que la correcta es pkHTTPSHEADERS
si alguien me pudiese ayudar lo agradeceria enormemente