25 lines
642 B
Markdown
25 lines
642 B
Markdown
|
|
---
|
||
|
|
convoy: scan-visual-catalog-search
|
||
|
|
brief_number: 2
|
||
|
|
depends_on: [1]
|
||
|
|
recommended_model: composer-2.5-fast
|
||
|
|
model_tier: fast
|
||
|
|
files:
|
||
|
|
- lib/card-embed.js
|
||
|
|
- scripts/backfill-card-embeddings.js
|
||
|
|
- package.json
|
||
|
|
- test/lib/card-embed.test.js
|
||
|
|
---
|
||
|
|
|
||
|
|
# Brief 2: Catalog embedding backfill
|
||
|
|
|
||
|
|
## Goal
|
||
|
|
|
||
|
|
Server-side embed job using `cohere/embed-v4.0` via AI Gateway; idempotent backfill from `cards.image_url`.
|
||
|
|
|
||
|
|
## Acceptance criteria
|
||
|
|
|
||
|
|
- [ ] `lib/card-embed.js` exports `embedCardImage`, `formatEmbeddingForPg`
|
||
|
|
- [ ] `npm run backfill-embeddings` script (skips rows with embedding unless FORCE=1)
|
||
|
|
- [ ] Rate-limited (`SLEEP_MS`) and DRY_RUN support
|