Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Procesamiento de ArchivosPDF (https://www.clubdelphi.com/foros/showthread.php?t=96825)

ArtPortEsp 26-08-2024 11:40:35

Procesamiento de ArchivosPDF
 
Hola a todos;

después de varios días probando y ajustando prompts, finalmente CHATGPT pudo analizar correctamente la información de varios archivos PDF que subí y regresarme los datos formateados perfectamente en un JSON.

Ahora quiero tener esa funcionalidad en una aplicación de Delphi y no sé muy bien como empezar.

Incluso la respuesta de CHATGPT para que me diera una guía de lo que debería hacer para lograr esto me deja cada vez con más dudas.

Por ejemplo, en una parte de este proceso he tenido que generar una API key de OPEN AI, he querido probarla en POSTMAN y me he atorado ahí con respuestas que me hacen dudar de lo que estoy haciendo, aqui un par de ejemplos de lo que me regresa el POSTMAN:

Cita:

peticion:
{
"model": "gpt-4",
"messages": [
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "Tell me a joke."
}
]
}

respuesta:
{
"error": {
"message": "The model `gpt-4` does not exist or you do not have access to it.",
"type": "invalid_request_error",
"param": null,
"code": "model_not_found"
}
}


peticion:
{
"model": "gpt-3.5-turbo",
"messages": [
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "Tell me a joke."
}
]
}

respuesta:
{
"error": {
"message": "You exceeded your current quota, please check your plan and billing details. For more information on this error, read the docs: https://platform.openai.com/docs/guides/error-codes/api-errors.",
"type": "insufficient_quota",
"param": null,
"code": "insufficient_quota"
}
}

Y bueno, del lado de delphi tampoco me ha ido muy bien que digamos:
Código:

procedure TForm1.Button2Click(Sender: TObject);
var
  NetHTTPClient: TNetHTTPClient;
  Response: IHTTPResponse;
  JSONToSend, JSONResponse: TJSONObject;
  APIKey, TestText: string;
begin
  NetHTTPClient := TNetHTTPClient.Create(nil);
  try
    APIKey := 'k-svca....DfkA';  // Aqui pongo la misma API KEY de OPENAI que pongo en postman
    NetHTTPClient.CustomHeaders['Authorization'] := 'Bearer ' + APIKey;
    TestText := 'Hello, OpenAI!';  // Texto de prueba
    JSONToSend := TJSONObject.Create;
    try
      JSONToSend.AddPair('prompt', TestText);
      JSONToSend.AddPair('max_tokens', TJSONNumber.Create(50)); 
      Response := NetHTTPClient.Post('https://api.openai.com/v1/completions',
                                    TStringStream.Create(JSONToSend.ToString, TEncoding.UTF8),
                                    nil, [TNetHeader.Create('Content-Type', 'application/json')]);
      if Response.StatusCode = 200 then
      begin
        JSONResponse := TJSONObject.ParseJSONValue(Response.ContentAsString) as TJSONObject;
        MemoResults.items.Add('Respuesta del AI:');
        MemoResults.items.Add(JSONResponse.GetValue('choices').ToString);
      end
      else
      begin
        MemoResults.items.Add('Error al comunicarse con la API de IA: ' + Response.StatusText);
      end;
    finally
      JSONToSend.Free;
    end;
  finally
    NetHTTPClient.Free;
  end;

end;

Siempre me regresa el error: unathorized

Alguien ya ha implementado alguna solucion usando la API de OpenAI ?
Tienen alguna sugerencia para poder avanzar en este proyecto?

Gracias de antemano a todos

pgranados 26-08-2024 16:51:22

Código:

You exceeded your current quota, please check your plan and billing details. For more information on this error, read the docs: https://platform.openai.com/docs/guides/error-codes/api-errors."
Si no haz pagado por GPT significa que ya no puedes usar el api, tienes que pagar la suscripción de 20usd por mes

ArtPortEsp 26-08-2024 18:44:24

Totalmente de acuerdo!, pero el detalle es que, si tengo CHATGPT de paga, es lo que hace más extraña esa respuesta.

Neftali [Germán.Estévez] 09-09-2024 13:05:39

Cita:

Empezado por ArtPortEsp (Mensaje 557045)
Totalmente de acuerdo!, pero el detalle es que, si tengo CHATGPT de paga, es lo que hace más extraña esa respuesta.


Revisa a ver si has pagado para otro modelo.
El error es claro:

"message": "The model `gpt-4` does not exist or you do not have access to it."

Antes de continuar tendrás que solventar eso. Si es necesario ponte en contacto con la gente de CHATGPT.


La franja horaria es GMT +2. Ahora son las 23:15:15.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi