Spaces:
Running
Running
// Configurar zona horaria para evitar problemas con las fechas/horas | |
date_default_timezone_set('UTC'); | |
// Leer el archivo de conocimientos | |
$knowledgeFilePath = 'conocimiento.txt'; | |
$knowledge = file_get_contents($knowledgeFilePath); | |
// Funci贸n para hacer solicitudes al modelo GPT de Hugging Face | |
function askModel($prompt, $knowledge, $apiKey) { | |
$promptWithKnowledge = $knowledge . "\n\n" . $prompt; | |
$data = json_encode([ | |
'inputs' => $promptWithKnowledge, | |
// Agrega otros par谩metros necesarios aqu铆 | |
]); | |
$ch = curl_init(); | |
curl_setopt($ch, CURLOPT_URL, "https://api-inference.huggingface.co/models/google/gemma-7b"); // Aseg煤rate de que este es el modelo correcto | |
curl_setopt($ch, CURLOPT_POST, 1); | |
curl_setopt($ch, CURLOPT_POSTFIELDS, $data); | |
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); | |
curl_setopt($ch, CURLOPT_HTTPHEADER, [ | |
'Authorization: Bearer ' . $apiKey, | |
'Content-Type: application/json' | |
]); | |
$response = curl_exec($ch); | |
// Verificar si hubo un error en la petici贸n | |
if (curl_errno($ch)) { | |
$error_msg = curl_error($ch); | |
} else if ($response === false || curl_getinfo($ch, CURLINFO_HTTP_CODE) !== 200) { | |
// Error o respuesta diferente a 200 OK | |
$error_msg = "Error en la respuesta de la API o respuesta vac铆a. C贸digo HTTP: " . curl_getinfo($ch, CURLINFO_HTTP_CODE) . "\nResponse: " . $response; | |
} | |
curl_close($ch); | |
if (isset($error_msg)) { | |
return "Error de cURL: " . $error_msg; | |
} | |
$responseData = json_decode($response, true); | |
if (!empty($responseData) && isset($responseData['generated_text'])) { | |
return trim($responseData['generated_text']); | |
} | |
// Devolver la respuesta cruda para depuraci贸n | |
return $response ? $response : "No se recibi贸 ninguna respuesta, verifique su solicitud y los par谩metros de API."; | |
} | |
// ... La funci贸n runChatConsole permanece igual ... | |
// Inicio del chat | |
runChatConsole($knowledge, $apiKey); | |