Hardik
Initial commit: Sentiment Analysis HF Space
3a93fb9
Raw
History Blame Contribute Delete
1.14 kB
const axios = require('axios');
const config = require('../config');
const mlClient = axios.create({
baseURL: config.mlServiceUrl,
timeout: 30000 // ML inference can take a few seconds
});
const getHealth = async () => {
try {
const response = await mlClient.get('/api/v1/health');
return response.data;
} catch (error) {
console.error('Failed to get ML service health:', error.message);
return null;
}
};
const getModels = async () => {
try {
const response = await mlClient.get('/api/v1/models');
return response.data;
} catch (error) {
console.error('Failed to get models info from ML service:', error.message);
throw new Error('ML Service Unavailable');
}
};
const predict = async (text, models = ["lr", "lstm", "bert"]) => {
try {
const response = await mlClient.post('/api/v1/predict', { text, models });
return response.data;
} catch (error) {
console.error('Prediction failed in ML service:', error.message);
throw new Error(error.response?.data?.detail || 'ML Service Prediction Failed');
}
};
module.exports = {
getHealth,
getModels,
predict
};