42 lines
1.0 KiB
JavaScript
42 lines
1.0 KiB
JavaScript
|
const express = require('express');
|
||
|
const axios = require('axios');
|
||
|
const app = express();
|
||
|
|
||
|
app.use(express.json());
|
||
|
|
||
|
app.use(express.static('public')); // Add this line before your routes
|
||
|
|
||
|
|
||
|
// Configure Ollama API endpoint
|
||
|
const OLLAMA_API_URL = 'http://192.168.0.117:11434/api/generate';
|
||
|
|
||
|
// Route to serve the main page
|
||
|
app.get('/', (req, res) => {
|
||
|
res.sendFile('index.html', { root: './public' });
|
||
|
});
|
||
|
|
||
|
// Route to handle chat requests
|
||
|
app.post('/chat', async (req, res) => {
|
||
|
try {
|
||
|
const { message } = req.body;
|
||
|
|
||
|
const response = await axios.post(OLLAMA_API_URL, {
|
||
|
model: "llama3.2", // or your preferred model
|
||
|
prompt: message,
|
||
|
stream: false
|
||
|
});
|
||
|
|
||
|
res.json({
|
||
|
reply: response.data.response
|
||
|
});
|
||
|
} catch (error) {
|
||
|
console.error('Error:', error.message);
|
||
|
res.status(500).json({ error: 'Failed to process the request' });
|
||
|
}
|
||
|
});
|
||
|
|
||
|
const PORT = process.env.PORT || 3000;
|
||
|
app.listen(PORT, () => {
|
||
|
console.log(`Server running on port ${PORT}`);
|
||
|
});
|