31 lines
929 B
Go
31 lines
929 B
Go
package intelligence
|
|
|
|
import "time"
|
|
|
|
func buildVisionBenchmark(assets []loadedAsset) VisionBenchmark {
|
|
bench := VisionBenchmark{
|
|
Version: "3.0",
|
|
GeneratedAt: time.Now().UTC().Format(time.RFC3339),
|
|
Status: "metadata_only",
|
|
}
|
|
seen := map[string]bool{}
|
|
for _, item := range assets {
|
|
key := item.Asset.Semantic.Provider + "|" + item.Asset.Semantic.Model
|
|
if seen[key] {
|
|
continue
|
|
}
|
|
seen[key] = true
|
|
bench.Providers = append(bench.Providers, VisionProviderBench{
|
|
Name: item.Asset.Semantic.Provider,
|
|
Model: item.Asset.Semantic.Model,
|
|
Notes: "Provider was observed in existing MaterialAssets. Accuracy, latency, memory, and semantic stability require labeled evaluation data.",
|
|
})
|
|
}
|
|
if len(bench.Providers) == 0 {
|
|
bench.Providers = append(bench.Providers, VisionProviderBench{
|
|
Name: "none", Model: "none", Notes: "No semantic provider metadata found in assets.",
|
|
})
|
|
}
|
|
return bench
|
|
}
|