from django.contrib import admin from .models import RegressionModel, ClassificationModel, NLPModel, UnsupervisedModel @admin.register(RegressionModel) class RegressionModelAdmin(admin.ModelAdmin): list_display = ('name', 'accuracy', 'loss', 'r_squared', 'mean_squared_error', 'mean_absolute_error', 'date_trained', 'is_active') list_filter = ('is_active', 'date_trained') search_fields = ('name', 'description') readonly_fields = ('date_trained',) fieldsets = ( (None, { 'fields': ('name', 'description', 'model_file', 'is_active') }), ('Metrics', { 'fields': ('accuracy', 'loss', 'r_squared', 'mean_squared_error', 'mean_absolute_error') }), ('Dates', { 'fields': ('date_trained',) }), ) @admin.register(ClassificationModel) class ClassificationModelAdmin(admin.ModelAdmin): list_display = ('name', 'accuracy', 'loss', 'precision', 'recall', 'f1_score', 'auc_roc', 'date_trained', 'is_active') list_filter = ('is_active', 'date_trained') search_fields = ('name', 'description') readonly_fields = ('date_trained',) fieldsets = ( (None, { 'fields': ('name', 'description', 'model_file', 'is_active') }), ('Metrics', { 'fields': ('accuracy', 'loss', 'precision', 'recall', 'f1_score', 'auc_roc') }), ('Dates', { 'fields': ('date_trained',) }), ) @admin.register(NLPModel) class NLPModelAdmin(admin.ModelAdmin): list_display = ('name', 'accuracy', 'loss', 'bleu_score', 'perplexity', 'rouge_score', 'date_trained', 'is_active') list_filter = ('is_active', 'date_trained') search_fields = ('name', 'description') readonly_fields = ('date_trained',) fieldsets = ( (None, { 'fields': ('name', 'description', 'model_file', 'is_active') }), ('Metrics', { 'fields': ('accuracy', 'loss', 'bleu_score', 'perplexity', 'rouge_score') }), ('Dates', { 'fields': ('date_trained',) }), ) @admin.register(UnsupervisedModel) class UnsupervisedModelAdmin(admin.ModelAdmin): list_display = ('name', 'silhouette_score', 'inertia', 'date_trained', 'is_active') list_filter = ('is_active', 'date_trained') search_fields = ('name', 'description') readonly_fields = ('date_trained',) fieldsets = ( (None, { 'fields': ('name', 'description', 'model_file', 'is_active') }), ('Metrics', { 'fields': ('silhouette_score', 'inertia') }), ('Dates', { 'fields': ('date_trained',) }), )