feat(import): refine official release metadata backfill

This commit is contained in:
phamnazage-jpg
2026-05-13 23:02:50 +08:00
parent d893d2542e
commit bed5e3aec7
5 changed files with 182 additions and 15 deletions

View File

@@ -105,6 +105,10 @@ func enrichZhipuModelMetadata(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 == "" {
@@ -233,14 +237,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