feat(import): refine official release metadata backfill
This commit is contained in:
@@ -50,6 +50,21 @@ type bytedanceModelMetadata struct {
|
||||
}
|
||||
|
||||
var bytedanceModelMetadataRules = []bytedanceModelMetadata{
|
||||
{
|
||||
Prefix: "bytedance-doubao-1.5-vision-pro",
|
||||
ReleaseDate: "2025-01-22",
|
||||
ModelSourceURL: "https://developer.volcengine.com/articles/7462939272262189083",
|
||||
},
|
||||
{
|
||||
Prefix: "bytedance-doubao-1.5-pro",
|
||||
ReleaseDate: "2025-01-22",
|
||||
ModelSourceURL: "https://developer.volcengine.com/articles/7462939272262189083",
|
||||
},
|
||||
{
|
||||
Prefix: "bytedance-doubao-1.5-lite",
|
||||
ReleaseDate: "2025-01-22",
|
||||
ModelSourceURL: "https://developer.volcengine.com/articles/7462939272262189083",
|
||||
},
|
||||
{
|
||||
Prefix: "bytedance-doubao-1.5-thinking",
|
||||
ReleaseDate: "2025-04-17",
|
||||
@@ -60,6 +75,31 @@ var bytedanceModelMetadataRules = []bytedanceModelMetadata{
|
||||
ReleaseDate: "2025-06-11",
|
||||
ModelSourceURL: "https://developer.volcengine.com/articles/7517188354606104612",
|
||||
},
|
||||
{
|
||||
Prefix: "bytedance-doubao-seed-1.8",
|
||||
ModelSourceURL: "https://developer.volcengine.com/articles/7601918680544641034",
|
||||
},
|
||||
{
|
||||
Prefix: "bytedance-doubao-seed-2.0-code",
|
||||
ModelSourceURL: "https://developer.volcengine.com/articles/7610285824933445675",
|
||||
},
|
||||
{
|
||||
Prefix: "bytedance-doubao-seed-2.0-pro",
|
||||
ModelSourceURL: "https://developer.volcengine.com/articles/7610285824933445675",
|
||||
},
|
||||
{
|
||||
Prefix: "bytedance-doubao-seed-2.0-mini",
|
||||
ModelSourceURL: "https://developer.volcengine.com/articles/7610285824933445675",
|
||||
},
|
||||
{
|
||||
Prefix: "bytedance-doubao-seed-2.0-lite",
|
||||
ModelSourceURL: "https://developer.volcengine.com/articles/7610285824933445675",
|
||||
},
|
||||
{
|
||||
Prefix: "bytedance-doubao-seed-code",
|
||||
ReleaseDate: "2024-06-26",
|
||||
ModelSourceURL: "https://developer.volcengine.com/articles/7383101327527641125",
|
||||
},
|
||||
{
|
||||
Prefix: "bytedance-seedance-1.0-lite",
|
||||
ReleaseDate: "2025-05-13",
|
||||
@@ -86,6 +126,10 @@ func enrichBytedanceModelMetadata(model ModelPricing) ModelPricing {
|
||||
return model
|
||||
}
|
||||
|
||||
func hasExplicitModelMetadata(model ModelPricing) bool {
|
||||
return strings.TrimSpace(model.ReleaseDate) != "" || firstNonEmpty(model.ModelSourceURL) != "" && model.ModelSourceURL != model.SourceURL
|
||||
}
|
||||
|
||||
func main() {
|
||||
dsn := os.Getenv("DATABASE_URL")
|
||||
if dsn == "" {
|
||||
@@ -183,14 +227,22 @@ func main() {
|
||||
log.Printf("Model error for %s: %v", p.ModelID, err)
|
||||
continue
|
||||
}
|
||||
_, _ = db.Exec(
|
||||
if _, err := db.Exec(
|
||||
`UPDATE models
|
||||
SET source_url = COALESCE(NULLIF(source_url, ''), $2),
|
||||
release_date = COALESCE(release_date, $3),
|
||||
SET source_url = CASE
|
||||
WHEN $4 THEN $2
|
||||
ELSE COALESCE(NULLIF(source_url, ''), $2)
|
||||
END,
|
||||
release_date = CASE
|
||||
WHEN $4 AND $3::date IS NOT NULL THEN $3::date
|
||||
ELSE COALESCE(release_date, $3::date)
|
||||
END,
|
||||
updated_at = CURRENT_TIMESTAMP
|
||||
WHERE id = $1`,
|
||||
modelID, firstNonEmpty(p.ModelSourceURL, p.SourceURL), releaseDateValue(p.ReleaseDate),
|
||||
)
|
||||
modelID, firstNonEmpty(p.ModelSourceURL, p.SourceURL), releaseDateValue(p.ReleaseDate), hasExplicitModelMetadata(p),
|
||||
); err != nil {
|
||||
log.Printf("Model metadata update error for %s: %v", p.ModelID, err)
|
||||
}
|
||||
|
||||
// Insert pricing
|
||||
sourceType := p.OperatorType
|
||||
|
||||
Reference in New Issue
Block a user