5 ms·
This is really cool. How is reranking built in? Is there a model that runs inside the database? If so, how did you choose it?
by cckolon 8mo ago
This is really cool. How is reranking built in? Is there a model that runs inside the database? If so, how did you choose it?
- svcrunch 8mo agoThanks for your interest. The rerankers are external, GoodMem is a unified API layer that calls out to various providers. There's no model running inside the database or the GoodMem server. We support both commercial APIs and self-hosted options: - Cohere (rerank-english-v3.0, etc.) - Voyage AI (rerank-2.5) - Jina AI (jina-reranker-v3) Self-hosted (no API key needed): - TEI - https://github.com/huggingface/text-embeddings-inference - vLLM - https://docs.vllm.ai/en/v0.8.1/serving/openai_compatible_server.html#rerank-api You register a reranker once with the CLI: # Cohere goodmem reranker create \ --display-name "Cohere" \ --provider-type COHERE \ --endpoint-url "https://api.cohere.com" \ --model-identifier "rerank-english-v3.0" \ --cred-api-key "YOUR_API_KEY" # Self-hosted TEI (e.g., BAAI/bge-reranker-v2-m3) goodmem reranker create \ --display-name "TEI Local" \ --provider-type TEI \ --endpoint-url "http://localhost:8081" \ --model-identifier "BAAI/bge-reranker-v2-m3" Then you can experiment interactively through the TUI. goodmem memory retrieve \ --space-id <your-space> \ --post-processor-interactive \ "your query" For your setup, I think TEI is probably the path of least resistance, it has first-class reranker support and runs well on CPU.
- cckolon 8mo agoNice, that’s really cool.