Studio: make grid checkbox rectangular and commit table changes

This commit is contained in:
2026-03-01 08:43:48 +01:00
parent 211dc58884
commit e3ca845a6d
89 changed files with 7323 additions and 475 deletions

View File

@@ -2,4 +2,5 @@
return [
'uploads_v2' => (bool) env('SKINBASE_UPLOADS_V2', true),
'similarity_vector' => (bool) env('SIMILARITY_VECTOR_ENABLED', false),
];

View File

@@ -89,4 +89,47 @@ return [
explode(',', (string) env('RECOMMENDATIONS_AB_ALGO_VERSIONS', env('RECOMMENDATIONS_ALGO_VERSION', 'clip-cosine-v1')))
))),
],
// ─── Similar Artworks (hybrid recommender) ─────────────────────────────────
'similarity' => [
'model_version' => env('SIMILARITY_MODEL_VERSION', 'sim_v1'),
// Vector DB integration (behind feature flag)
'vector_enabled' => (bool) env('SIMILARITY_VECTOR_ENABLED', false),
'vector_adapter' => env('SIMILARITY_VECTOR_ADAPTER', 'pgvector'), // pgvector | pinecone
// Hybrid blend weights (spec §5.4)
'weights_with_vector' => [
'visual' => (float) env('SIM_W_VISUAL', 0.45),
'tag' => (float) env('SIM_W_TAG_VEC', 0.25),
'behavior' => (float) env('SIM_W_BEH_VEC', 0.20),
'category' => (float) env('SIM_W_CAT_VEC', 0.10),
],
'weights_without_vector' => [
'tag' => (float) env('SIM_W_TAG', 0.55),
'behavior' => (float) env('SIM_W_BEH', 0.35),
'category' => (float) env('SIM_W_CAT', 0.10),
],
// Diversity caps (spec §6)
'max_per_author' => (int) env('SIM_MAX_PER_AUTHOR', 2),
'result_limit' => (int) env('SIM_RESULT_LIMIT', 30),
'candidate_pool' => (int) env('SIM_CANDIDATE_POOL', 100),
'min_categories_top12' => (int) env('SIM_MIN_CATS_TOP12', 2),
// Behavior pair building
'user_favourites_cap' => (int) env('SIM_USER_FAV_CAP', 50),
// Cache TTL for precomputed lists (sec)
'cache_ttl' => (int) env('SIM_CACHE_TTL', 6 * 3600),
// Pinecone adapter settings
'pinecone' => [
'api_key' => env('PINECONE_API_KEY'),
'index_host' => env('PINECONE_INDEX_HOST'),
'index_name' => env('PINECONE_INDEX_NAME', 'skinbase-artworks'),
'namespace' => env('PINECONE_NAMESPACE', ''),
'top_k' => (int) env('PINECONE_TOP_K', 100),
],
],
];

View File

@@ -92,6 +92,7 @@ return [
'description',
],
'filterableAttributes' => [
'id',
'tags',
'category',
'content_type',
@@ -116,6 +117,7 @@ return [
'shares_count',
'engagement_velocity',
'comments_count',
'heat_score',
],
'rankingRules' => [
'words',