Procházet zdrojové kódy

feat: modify channel model_mapping column type to TEXT

- Change `ModelMapping` column type from varchar(1024) to TEXT in channels table
- Add MySQL migration script to alter column type during database initialization
- Improve database schema flexibility for storing complex model mappings
1808837298@qq.com před 1 rokem
rodič
revize
675e62d854
2 změnil soubory, kde provedl 4 přidání a 7 odebrání
  1. 1 1
      model/channel.go
  2. 3 6
      model/main.go

+ 1 - 1
model/channel.go

@@ -28,7 +28,7 @@ type Channel struct {
 	Models             string  `json:"models"`
 	Models             string  `json:"models"`
 	Group              string  `json:"group" gorm:"type:varchar(64);default:'default'"`
 	Group              string  `json:"group" gorm:"type:varchar(64);default:'default'"`
 	UsedQuota          int64   `json:"used_quota" gorm:"bigint;default:0"`
 	UsedQuota          int64   `json:"used_quota" gorm:"bigint;default:0"`
-	ModelMapping       *string `json:"model_mapping" gorm:"type:varchar(1024);default:''"`
+	ModelMapping       *string `json:"model_mapping" gorm:"type:text;default:''"`
 	//MaxInputTokens     *int    `json:"max_input_tokens" gorm:"default:0"`
 	//MaxInputTokens     *int    `json:"max_input_tokens" gorm:"default:0"`
 	StatusCodeMapping *string `json:"status_code_mapping" gorm:"type:varchar(1024);default:''"`
 	StatusCodeMapping *string `json:"status_code_mapping" gorm:"type:varchar(1024);default:''"`
 	Priority          *int64  `json:"priority" gorm:"bigint;default:0"`
 	Priority          *int64  `json:"priority" gorm:"bigint;default:0"`

+ 3 - 6
model/main.go

@@ -119,12 +119,9 @@ func InitDB() (err error) {
 		if !common.IsMasterNode {
 		if !common.IsMasterNode {
 			return nil
 			return nil
 		}
 		}
-		//if common.UsingMySQL {
-		//	_, _ = sqlDB.Exec("DROP INDEX idx_channels_key ON channels;")             // TODO: delete this line when most users have upgraded
-		//	_, _ = sqlDB.Exec("ALTER TABLE midjourneys MODIFY action VARCHAR(40);")   // TODO: delete this line when most users have upgraded
-		//	_, _ = sqlDB.Exec("ALTER TABLE midjourneys MODIFY progress VARCHAR(30);") // TODO: delete this line when most users have upgraded
-		//	_, _ = sqlDB.Exec("ALTER TABLE midjourneys MODIFY status VARCHAR(20);")   // TODO: delete this line when most users have upgraded
-		//}
+		if common.UsingMySQL {
+			_, _ = sqlDB.Exec("ALTER TABLE channels MODIFY model_mapping TEXT;") // TODO: delete this line when most users have upgraded
+		}
 		common.SysLog("database migration started")
 		common.SysLog("database migration started")
 		err = migrateDB()
 		err = migrateDB()
 		return err
 		return err