Add new frontend - fix 16

This commit is contained in:
Urtzi Alfaro
2025-07-23 07:26:04 +02:00
parent e6b0be0c95
commit 1d35912459
14 changed files with 588 additions and 169 deletions

View File

@@ -55,7 +55,7 @@ export class TrainingService {
*/
async getTrainingStatus(jobId: string): Promise<TrainingJobProgress> {
const response = await apiClient.get<ApiResponse<TrainingJobProgress>>(
`/training/jobs/${jobId}`
`/api/v1/training/jobs/${jobId}`
);
return response.data!;
}
@@ -73,7 +73,7 @@ export class TrainingService {
page: number;
pages: number;
}> {
const response = await apiClient.get<ApiResponse<any>>('/training/jobs', { params });
const response = await apiClient.get<ApiResponse<any>>('/api/v1/training/jobs', { params });
return response.data!;
}
@@ -81,7 +81,7 @@ export class TrainingService {
* Cancel training job
*/
async cancelTraining(jobId: string): Promise<void> {
await apiClient.post(`/training/jobs/${jobId}/cancel`);
await apiClient.post(`/api/v1/training/jobs/${jobId}/cancel`);
}
/**
@@ -98,7 +98,7 @@ export class TrainingService {
page: number;
pages: number;
}> {
const response = await apiClient.get<ApiResponse<any>>('/training/models', { params });
const response = await apiClient.get<ApiResponse<any>>('/api/v1/training/models', { params });
return response.data!;
}
@@ -107,7 +107,7 @@ export class TrainingService {
*/
async getModel(modelId: string): Promise<TrainedModel> {
const response = await apiClient.get<ApiResponse<TrainedModel>>(
`/training/models/${modelId}`
`/api/v1/training/models/${modelId}`
);
return response.data!;
}
@@ -117,7 +117,7 @@ export class TrainingService {
*/
async getModelMetrics(modelId: string): Promise<ModelMetrics> {
const response = await apiClient.get<ApiResponse<ModelMetrics>>(
`/training/models/${modelId}/metrics`
`/api/v1/training/models/${modelId}/metrics`
);
return response.data!;
}
@@ -127,7 +127,7 @@ export class TrainingService {
*/
async toggleModelStatus(modelId: string, active: boolean): Promise<TrainedModel> {
const response = await apiClient.patch<ApiResponse<TrainedModel>>(
`/training/models/${modelId}`,
`/api/v1/training/models/${modelId}`,
{ is_active: active }
);
return response.data!;
@@ -137,7 +137,7 @@ export class TrainingService {
* Delete model
*/
async deleteModel(modelId: string): Promise<void> {
await apiClient.delete(`/training/models/${modelId}`);
await apiClient.delete(`/api/v1/training/models/${modelId}`);
}
/**
@@ -145,7 +145,7 @@ export class TrainingService {
*/
async trainProduct(productName: string, config?: Partial<TrainingConfiguration>): Promise<TrainingJobStatus> {
const response = await apiClient.post<ApiResponse<TrainingJobStatus>>(
'/training/products/train',
'/api/v1/training/products/train',
{
product_name: productName,
...config,
@@ -165,7 +165,7 @@ export class TrainingService {
products_trained: number;
training_time_avg_minutes: number;
}> {
const response = await apiClient.get<ApiResponse<any>>('/training/stats');
const response = await apiClient.get<ApiResponse<any>>('/api/v1/training/stats');
return response.data!;
}
@@ -179,7 +179,7 @@ export class TrainingService {
product_data_points: Record<string, number>;
recommendation: string;
}> {
const response = await apiClient.post<ApiResponse<any>>('/training/validate', {
const response = await apiClient.post<ApiResponse<any>>('/api/v1/training/validate', {
products,
});
return response.data!;
@@ -194,7 +194,7 @@ export class TrainingService {
recommended_products: string[];
optimal_config: TrainingConfiguration;
}> {
const response = await apiClient.get<ApiResponse<any>>('/training/recommendations');
const response = await apiClient.get<ApiResponse<any>>('/api/v1/training/recommendations');
return response.data!;
}
@@ -202,7 +202,7 @@ export class TrainingService {
* Get training logs
*/
async getTrainingLogs(jobId: string): Promise<string[]> {
const response = await apiClient.get<ApiResponse<string[]>>(`/training/jobs/${jobId}/logs`);
const response = await apiClient.get<ApiResponse<string[]>>(`/api/v1/training/jobs/${jobId}/logs`);
return response.data!;
}
@@ -210,7 +210,7 @@ export class TrainingService {
* Export model
*/
async exportModel(modelId: string, format: 'pickle' | 'onnx' = 'pickle'): Promise<Blob> {
const response = await apiClient.get(`/training/models/${modelId}/export`, {
const response = await apiClient.get(`/api/v1/training/models/${modelId}/export`, {
params: { format },
responseType: 'blob',
});