Spaces:
Sleeping
Sleeping
Sahil commited on
Update index.html
Browse files- index.html +33 -1
index.html
CHANGED
|
@@ -4,8 +4,9 @@
|
|
| 4 |
<head>
|
| 5 |
<meta charset="UTF-8">
|
| 6 |
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
|
|
| 7 |
<title>ContinuumLearner - AI Training Pipeline</title>
|
| 8 |
-
<script src="https://js.puter.com/v2/"></script>
|
| 9 |
<style>
|
| 10 |
* {
|
| 11 |
margin: 0;
|
|
@@ -260,6 +261,29 @@
|
|
| 260 |
<script>
|
| 261 |
let selectedModel = "puter:gpt-5-nano";
|
| 262 |
let sessionCount = 0;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 263 |
|
| 264 |
// Model selector
|
| 265 |
document.querySelectorAll('.model-btn').forEach(btn => {
|
|
@@ -278,11 +302,19 @@
|
|
| 278 |
return;
|
| 279 |
}
|
| 280 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 281 |
const responseText = document.getElementById('responseText');
|
| 282 |
responseText.innerHTML = '<div class="loading"></div> Generating response...';
|
| 283 |
|
| 284 |
try {
|
| 285 |
// Get AI response using Puter.js
|
|
|
|
| 286 |
const response = await puter.ai.chat(userInput, { model: selectedModel });
|
| 287 |
|
| 288 |
responseText.textContent = response;
|
|
|
|
| 4 |
<head>
|
| 5 |
<meta charset="UTF-8">
|
| 6 |
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
| 7 |
+
<meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self' 'unsafe-inline' https://js.puter.com; connect-src 'self' https://api.puter.com https://puter.com; style-src 'self' 'unsafe-inline';">
|
| 8 |
<title>ContinuumLearner - AI Training Pipeline</title>
|
| 9 |
+
<script src="https://js.puter.com/v2/" crossorigin="anonymous"></script>
|
| 10 |
<style>
|
| 11 |
* {
|
| 12 |
margin: 0;
|
|
|
|
| 261 |
<script>
|
| 262 |
let selectedModel = "puter:gpt-5-nano";
|
| 263 |
let sessionCount = 0;
|
| 264 |
+
let puterReady = false;
|
| 265 |
+
|
| 266 |
+
// Check if Puter.js is loaded
|
| 267 |
+
function checkPuterLoaded() {
|
| 268 |
+
if (typeof puter !== 'undefined' && puter.ai) {
|
| 269 |
+
puterReady = true;
|
| 270 |
+
addLog('✅ Puter.js loaded successfully', 'success');
|
| 271 |
+
return true;
|
| 272 |
+
}
|
| 273 |
+
addLog('❌ Puter.js not loaded - Check your internet connection', 'error');
|
| 274 |
+
return false;
|
| 275 |
+
}
|
| 276 |
+
|
| 277 |
+
// Wait for Puter.js to load
|
| 278 |
+
window.addEventListener('load', function() {
|
| 279 |
+
setTimeout(() => {
|
| 280 |
+
if (!checkPuterLoaded()) {
|
| 281 |
+
addLog('⚠️ Puter.js failed to load. Retrying...', 'error');
|
| 282 |
+
// Retry after 2 seconds
|
| 283 |
+
setTimeout(checkPuterLoaded, 2000);
|
| 284 |
+
}
|
| 285 |
+
}, 1000);
|
| 286 |
+
});
|
| 287 |
|
| 288 |
// Model selector
|
| 289 |
document.querySelectorAll('.model-btn').forEach(btn => {
|
|
|
|
| 302 |
return;
|
| 303 |
}
|
| 304 |
|
| 305 |
+
// Check if Puter.js is available
|
| 306 |
+
if (typeof puter === 'undefined' || !puter.ai) {
|
| 307 |
+
alert('❌ Puter.js is not loaded. Please refresh the page and check your internet connection.');
|
| 308 |
+
addLog('❌ Puter.js not available', 'error');
|
| 309 |
+
return;
|
| 310 |
+
}
|
| 311 |
+
|
| 312 |
const responseText = document.getElementById('responseText');
|
| 313 |
responseText.innerHTML = '<div class="loading"></div> Generating response...';
|
| 314 |
|
| 315 |
try {
|
| 316 |
// Get AI response using Puter.js
|
| 317 |
+
addLog(`🔄 Calling ${selectedModel}...`, 'success');
|
| 318 |
const response = await puter.ai.chat(userInput, { model: selectedModel });
|
| 319 |
|
| 320 |
responseText.textContent = response;
|