@veedubin/neuralgentics 0.11.0 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +24 -0
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -82,6 +82,30 @@ npx @veedubin/neuralgentics migrate-embeddings --from bge-large --to bge-m3
82
82
 
83
83
  The migration is safe to interrupt. Old vectors are preserved in `embedding_legacy` and `embedding_model_legacy` columns until you drop them manually.
84
84
 
85
+ ## Multi-model support (v0.12.0+)
86
+
87
+ If memories were stored with different embedding models over time (e.g., early memories with BGE-Large, later with BGE-M3), queries automatically merge results across all model spaces using RRF (Reciprocal Rank Fusion). Each model space is searched independently, and the rankings are fused by `score = sum(1 / (k + rank))`.
88
+
89
+ No action needed — this is the default behavior. To disable RRF and use only the active model's column:
90
+
91
+ ```bash
92
+ ENABLE_RRF=false
93
+ ```
94
+
95
+ ### Supported models
96
+
97
+ | Model | Dimensions | Column | Notes |
98
+ | ---------------- | ---------- | ------------------ | ------------------------------ |
99
+ | `all-MiniLM-L6-v2` | 384 | `embedding` | Original memini-ai default |
100
+ | `BAAI/bge-m3` | 1024 | `embedding_bge_m3` | New default since v0.11.0 |
101
+ | `BAAI/bge-large-en-v1.5` | 1024 | `embedding_bge_large` | Used by neuralgentics Go backend |
102
+
103
+ ### When RRF helps
104
+
105
+ - **Mixed-history installs**: Old memories (one model) + new memories (another model)
106
+ - **Multi-user**: Different peers on the same DB using different models
107
+ - **A/B testing**: Comparing retrieval quality between models
108
+
85
109
  ## Manual Install
86
110
 
87
111
  If you prefer not to use `--init`, add the plugin to your `.opencode/opencode.json`:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@veedubin/neuralgentics",
3
- "version": "0.11.0",
3
+ "version": "0.12.0",
4
4
  "description": "Neuralgentics OpenCode plugin — agent personas, skills, routing enforcement, and MCP tools.",
5
5
  "type": "module",
6
6
  "main": "./dist/server.js",