Spaces:
Running
Running
| // script.js | |
| document.addEventListener('DOMContentLoaded', function() { | |
| const sendMessageButton = document.getElementById('send-message'); | |
| const messageInput = document.getElementById('message-input'); | |
| const conversationHistory = document.getElementById('conversation-history'); | |
| sendMessageButton.addEventListener('click', function() { | |
| const userMessage = messageInput.value; | |
| if (userMessage) { | |
| addMessageToChat('user', userMessage); | |
| sendMessageToApi(userMessage); | |
| messageInput.value = ''; // Clear the input field | |
| } | |
| }); | |
| function addMessageToChat(role, message) { | |
| const messageElement = document.createElement('div'); | |
| messageElement.classList.add('message', role); | |
| messageElement.textContent = message; | |
| conversationHistory.appendChild(messageElement); | |
| } | |
| async function sendMessageToApi(message) { | |
| try { | |
| const response = await fetch(`https://api.fireworks.ai/inference/v1/chat/completions`, { | |
| method: 'POST', | |
| headers: { | |
| 'Content-Type': 'application/json', | |
| 'Authorization': 'Bearer YOUR_API_KEY_HERE' // Replace with your real API key | |
| }, | |
| body: JSON.stringify({ | |
| messages: [{ role: 'user', content: message }], | |
| model: 'accounts/fireworks/models/mixtral-8x7b-instruct', | |
| stream: true, | |
| n: 1, | |
| max_tokens: 1000, | |
| temperature: 0.9, | |
| stop: [] | |
| }) | |
| }); | |
| const data = await response.json(); | |
| const botMessage = data.choices[0].message.content; // Adjust this according to the API response structure | |
| addMessageToChat('bot', botMessage); | |
| } catch (error) { | |
| console.error('Error sending message to API:', error); | |
| } | |
| } | |
| }); | |