Documentation
¶
Index ¶
Constants ¶
const ( DefaultExperimentID = int32(0) DefaultExperimentName = "Default" )
Default Experiment properties.
const DefaultNamespaceCode = "default"
DefaultNamespaceCode represents default Namespace code.
Variables ¶
var DefaultContext = Context{Json: types.JSONB("{}")}
DefaultContext is the default metric context
Functions ¶
This section is empty.
Types ¶
type Artifact ¶
type Artifact struct {
ID uuid.UUID `gorm:"type:uuid;primaryKey" json:"id"`
Name string `gorm:"not null;index"`
Iter int64 `gorm:"index"`
Step int64 `gorm:"default:0;not null"`
Run Run
RunID string `gorm:"column:run_uuid;not null;index;constraint:OnDelete:CASCADE"`
Index int64
Width int64
Height int64
Format string
Caption string
BlobURI string
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
Artifact represents the artifact model.
type Base ¶ added in v0.6.0
type Base struct {
ID uuid.UUID `gorm:"type:uuid;primaryKey"`
CreatedAt time.Time
UpdatedAt time.Time
}
Base is a base model which holds common fields for each model.
type Context ¶ added in v0.5.0
type Context struct {
ID uint `gorm:"primaryKey;autoIncrement"`
Json types.JSONB `gorm:"not null;unique;index"`
}
Context represents model to work with `contexts` table.
func (Context) GetJsonHash ¶ added in v0.5.0
GetJsonHash returns hash of the Context.Json
type Experiment ¶
type Experiment struct {
ID *int32 `gorm:"column:experiment_id;not null;primaryKey"`
Name string `gorm:"type:varchar(256);not null;index:,unique,composite:name"`
ArtifactLocation string `gorm:"type:varchar(256)"`
LifecycleStage LifecycleStage `gorm:"type:varchar(32);check:lifecycle_stage IN ('active', 'deleted')"`
CreationTime sql.NullInt64 `gorm:"type:bigint"`
LastUpdateTime sql.NullInt64 `gorm:"type:bigint"`
NamespaceID uint `gorm:"index:,unique,composite:name"`
Namespace Namespace
Tags []ExperimentTag `gorm:"constraint:OnDelete:CASCADE"`
Runs []Run `gorm:"constraint:OnDelete:CASCADE"`
}
Experiment represents model to work with `experiments` table.
func (Experiment) IsDefault ¶ added in v0.5.0
func (e Experiment) IsDefault(namespace *Namespace) bool
IsDefault makes check that Experiment is default.
type ExperimentTag ¶
type ExperimentTag struct {
Key string `gorm:"type:varchar(250);not null;primaryKey"`
Value string `gorm:"type:varchar(5000)"`
ExperimentID int32 `gorm:"not null;primaryKey"`
}
ExperimentTag represents model to work with `experiment_tags` table.
type LatestMetric ¶
type LatestMetric struct {
Key string `gorm:"type:varchar(250);not null;primaryKey"`
Value float64 `gorm:"type:double precision;not null"`
Timestamp int64
Step int64 `gorm:"not null"`
IsNan bool `gorm:"not null"`
RunID string `gorm:"column:run_uuid;not null;primaryKey;index"`
LastIter int64
ContextID uint `gorm:"not null;primaryKey"`
Context Context
}
LatestMetric represents model to work with `last_metrics` table.
func (LatestMetric) UniqueKey ¶ added in v0.5.0
func (m LatestMetric) UniqueKey() string
UniqueKey is a compound unique key for this metric series.
type LifecycleStage ¶
type LifecycleStage string
LifecycleStage represents entity stage
const ( LifecycleStageActive LifecycleStage = "active" LifecycleStageDeleted LifecycleStage = "deleted" )
Supported list of stages.
type Log ¶
type Log struct {
ID uint `gorm:"primaryKey;autoIncrement"`
Value string `gorm:"not null"`
RunID string `gorm:"column:run_uuid;not null;index"`
Timestamp int64 `gorm:"not null;index"`
}
Log represents a row of the `logs` table.
type Metric ¶
type Metric struct {
Key string `gorm:"type:varchar(250);not null;primaryKey"`
Value float64 `gorm:"type:double precision;not null;primaryKey"`
Timestamp int64 `gorm:"not null;primaryKey"`
RunID string `gorm:"column:run_uuid;not null;primaryKey;index"`
Step int64 `gorm:"default:0;not null;primaryKey"`
IsNan bool `gorm:"default:false;not null;primaryKey"`
Iter int64 `gorm:"index"`
ContextID uint `gorm:"not null;primaryKey"`
Context Context
}
Metric represents model to work with `metrics` table.
type Namespace ¶ added in v0.4.0
type Namespace struct {
ID uint `gorm:"primaryKey;autoIncrement" json:"id"`
Code string `gorm:"unique;index;not null" json:"code"`
Description string `json:"description"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
DeletedAt gorm.DeletedAt `gorm:"index" json:"deleted_at"`
DefaultExperimentID *int32 `gorm:"not null" json:"default_experiment_id"`
Experiments []Experiment `gorm:"constraint:OnDelete:CASCADE" json:"experiments"`
}
Namespace represents model to work with `namespaces` table.
func (Namespace) DisplayName ¶ added in v0.4.0
DisplayName returns Namespace display name.
type Param ¶
type Param struct {
Key string `gorm:"type:varchar(250);not null;primaryKey"`
ValueStr *string `gorm:"type:varchar(500)"`
ValueInt *int64 `gorm:"type:bigint"`
ValueFloat *float64 `gorm:"type:float"`
RunID string `gorm:"column:run_uuid;not null;primaryKey;index"`
}
Param represents model to work with `params` table.
func (Param) ValueAny ¶ added in v0.6.0
ValueAny returns the value held by this Param as any with underlying type.
func (Param) ValueString ¶ added in v0.6.0
Value returns the value held by this Param as a string.
type RoleNamespace ¶ added in v0.6.0
type RoleNamespace struct {
Base
Role Role `gorm:"constraint:OnDelete:CASCADE"`
RoleID uuid.UUID `gorm:"not null;index:,unique,composite:relation"`
Namespace Namespace `gorm:"constraint:OnDelete:CASCADE"`
NamespaceID uint `gorm:"not null;index:,unique,composite:relation"`
}
RoleNamespace represents a model to work with `role_relations` table. Model holds relations between Role and Namespace models.
type RowNum ¶
type RowNum int64
RowNum represents custom data type.
func (RowNum) GormDataType ¶
GormDataType implements Gorm interface for custom data types.
type Run ¶
type Run struct {
ID string `gorm:"<-:create;column:run_uuid;type:varchar(32);not null;primaryKey"`
Name string `gorm:"type:varchar(250)"`
SourceType string `gorm:"<-:create;type:varchar(20);check:source_type IN ('NOTEBOOK', 'JOB', 'LOCAL', 'UNKNOWN', 'PROJECT')"`
SourceName string `gorm:"<-:create;type:varchar(500)"`
EntryPointName string `gorm:"<-:create;type:varchar(50)"`
UserID string `gorm:"<-:create;type:varchar(256)"`
Status Status `gorm:"type:varchar(9);check:status IN ('SCHEDULED', 'FAILED', 'FINISHED', 'RUNNING', 'KILLED')"`
StartTime sql.NullInt64 `gorm:"<-:create;type:bigint"`
EndTime sql.NullInt64 `gorm:"type:bigint"`
SourceVersion string `gorm:"<-:create;type:varchar(50)"`
LifecycleStage LifecycleStage `gorm:"type:varchar(20);check:lifecycle_stage IN ('active', 'deleted')"`
ArtifactURI string `gorm:"<-:create;type:varchar(200)"`
ExperimentID int32
Experiment Experiment
DeletedTime sql.NullInt64 `gorm:"type:bigint"`
RowNum RowNum `gorm:"<-:create;index"`
Params []Param `gorm:"constraint:OnDelete:CASCADE"`
Tags []Tag `gorm:"constraint:OnDelete:CASCADE"`
Logs []Log `gorm:"constraint:OnDelete:CASCADE"`
Metrics []Metric `gorm:"constraint:OnDelete:CASCADE"`
LatestMetrics []LatestMetric `gorm:"constraint:OnDelete:CASCADE"`
}
Run represents a model to work with `runs` table.