Added ability to store CNN models
	
		
			
	
		
	
	
		
	
		
			All checks were successful
		
		
	
	
		
			
				
	
				continuous-integration/drone/push Build is passing
				
			
		
		
	
	
				
					
				
			
		
			All checks were successful
		
		
	
	continuous-integration/drone/push Build is passing
				
			This commit is contained in:
		@@ -1,4 +1,5 @@
 | 
			
		||||
#!/usr/bin/env python3
 | 
			
		||||
from .db import db
 | 
			
		||||
from .default import Default
 | 
			
		||||
from .aimodel import AIModel
 | 
			
		||||
from .aimodel import AIModel, AIModelType
 | 
			
		||||
from .svmdetails import SVMDetails
 | 
			
		||||
@@ -3,16 +3,14 @@ from .db import db
 | 
			
		||||
from sqlalchemy.sql import func
 | 
			
		||||
from sqlalchemy.dialects.postgresql import UUID
 | 
			
		||||
import uuid
 | 
			
		||||
import enum
 | 
			
		||||
 | 
			
		||||
class AIModelType(enum.Enum):
 | 
			
		||||
    SVM = 1
 | 
			
		||||
    CNN = 2
 | 
			
		||||
 | 
			
		||||
class AIModel(db.Model):
 | 
			
		||||
    id = db.Column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4, unique=True, nullable=False)
 | 
			
		||||
    timestamp = db.Column(db.TIMESTAMP, nullable=False, server_default=func.now())
 | 
			
		||||
 | 
			
		||||
    # details
 | 
			
		||||
    mid_window = db.Column(db.Float)
 | 
			
		||||
    mid_step = db.Column(db.Float)
 | 
			
		||||
    short_window = db.Column(db.Float)
 | 
			
		||||
    short_step = db.Column(db.Float)
 | 
			
		||||
    compute_beat = db.Column(db.Boolean)
 | 
			
		||||
    type = db.Column(db.String(15))
 | 
			
		||||
    type = db.Column(db.Enum(AIModelType), nullable=False)
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,11 @@
 | 
			
		||||
from .db import db
 | 
			
		||||
from sqlalchemy.dialects.postgresql import UUID
 | 
			
		||||
 | 
			
		||||
from .aimodel import AIModelType
 | 
			
		||||
 | 
			
		||||
class Default(db.Model):
 | 
			
		||||
    aimodel_id = db.Column(UUID(as_uuid=True), db.ForeignKey("ai_model.id"), nullable=False, primary_key=True)
 | 
			
		||||
    type = db.Column(db.Enum(AIModelType), unique=True, nullable=False, primary_key=True)
 | 
			
		||||
 | 
			
		||||
    aimodel_id = db.Column(UUID(as_uuid=True), db.ForeignKey("ai_model.id"), nullable=False)
 | 
			
		||||
    aimodel = db.relationship("AIModel", backref=db.backref("default", lazy=True, cascade="save-update, merge, delete, delete-orphan"))
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										16
									
								
								model_service/model/svmdetails.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								model_service/model/svmdetails.py
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,16 @@
 | 
			
		||||
#!/usr/bin/env python3
 | 
			
		||||
from .db import db
 | 
			
		||||
from sqlalchemy.dialects.postgresql import UUID
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class SVMDetails(db.Model):
 | 
			
		||||
    aimodel_id = db.Column(UUID(as_uuid=True), db.ForeignKey("ai_model.id"), nullable=False, primary_key=True)
 | 
			
		||||
    aimodel = db.relationship("AIModel", backref=db.backref("details", lazy=True, cascade="save-update, merge, delete, delete-orphan"))
 | 
			
		||||
 | 
			
		||||
    # details
 | 
			
		||||
    mid_window = db.Column(db.Float)
 | 
			
		||||
    mid_step = db.Column(db.Float)
 | 
			
		||||
    short_window = db.Column(db.Float)
 | 
			
		||||
    short_step = db.Column(db.Float)
 | 
			
		||||
    compute_beat = db.Column(db.Boolean)
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user