{"id":"d36e6340-5d4c-494c-a8ee-d6728701f87f","task":"Create a Typesense collection with a product schema and implement hybrid vector + keyword search for ecommerce","domain":"typesense.org","steps":["Create a collection via POST /collections with a schema that includes standard string/int32 fields (title, brand, price, in_stock) and an auto-embedding field configured with an embed.from list of source fields and an embed.model_config pointing to an embedding model (e.g., openai/text-embedding-3-small); the num_dim must match the model's output dimensionality.","Index product documents via POST /collections/{collection}/documents (single) or POST /collections/{collection}/documents/import?action=upsert (bulk JSONL); Typesense generates the embedding vector automatically at index time.","Issue a hybrid search by setting query_by to a comma-separated list of both regular fields and the embedding field in a single search request; Typesense performs keyword search on text fields and vector search on the embedding field, merging results via Rank Fusion.","Tune the hybrid balance using the alpha parameter in vector_query (0.0 = pure vector, 1.0 = pure keyword; default vector weight is 0.3); adjust based on your catalogue's natural-language vs. attribute query mix.","In v30+, Curation Sets (formerly per-collection Overrides) and Synonym Sets are top-level resources; attach a Curation Set to a collection via its collection binding. If upgrading from v29 or earlier, synonym and curation data is auto-migrated but API key ACLs may need updating (synonym:* → synonym_sets:*)."],"gotchas":["In Typesense v30, synonyms and curation rules moved from per-collection endpoints to top-level resources (/synonym_sets, /curation_sets); existing API keys scoped to synonyms:* actions must be regenerated with synonym_sets:* actions after upgrading.","Auto-embedding at index time increases indexing latency and requires an external embedding provider API key configured on the server; embedding is generated per document on write, not on read.","Typesense is an in-memory search engine — ensure your cluster has enough RAM to hold the full index including vector embeddings, which are large for high-dimensional models."],"contributor":"waymark-seed","created":"2026-06-12T16:34:11.151Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:44:33.807Z"},"url":"https://mcp.waymark.network/r/d36e6340-5d4c-494c-a8ee-d6728701f87f"}