Instructions to use GeneralizedLabs/Vinci with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- sentence-transformers
How to use GeneralizedLabs/Vinci with sentence-transformers:
from sentence_transformers import SentenceTransformer model = SentenceTransformer("GeneralizedLabs/Vinci") sentences = [ "The weather is lovely today.", "It's so sunny outside!", "He drove to the stadium." ] embeddings = model.encode(sentences) similarities = model.similarity(embeddings, embeddings) print(similarities.shape) # [3, 3] - Notebooks
- Google Colab
- Kaggle
language:
- en
license: apache-2.0
library_name: sentence-transformers
pipeline_tag: feature-extraction
base_model:
- BAAI/bge-m3
datasets:
- Cilow/Vinci-Evals
tags:
- sentence-transformers
- text-embeddings-inference
- embeddings
- retrieval
- matryoshka
- lattice
- cilow
- db-native
- claim-aware
Vinci
Vinci is Cilow's DB-native, claim-aware embedding model family for the Lattice
retrieval pipeline. This repo is the canonical Hub target for Cilow/Vinci.
Current status: experiment-runner scaffold. Do not treat this repo as production-ready until the shadow evaluation report shows no regression against the current production baseline and the repo contains trained model weights.
Model Contract
- Model id:
Cilow/Vinci - Legacy aliases:
cilow/vinci-v0, cilow/cilow-embed-v0 - Base model:
BAAI/bge-m3 - Full dimension:
1024 - Low-dimension Matryoshka prefix:
256 - Similarity: cosine
- Serializer:
claim_v1 - Pipeline:
Lattice - Fresh index required when switching semantic spaces: yes
Intended Use
Vinci is designed for retrieval over structured application context: factual claims, memories, code snippets, tool traces, database rows, temporal updates, provenance, confidence, and supersession state. It is not a general-purpose similarity model by default; promotion depends on Cilow/Lattice retrieval gates.
Training Plan
The first training run fine-tunes BAAI/bge-m3 with
SentenceTransformerTrainer, MultipleNegativesRankingLoss, and
MatryoshkaLoss([1024, 256]). The dataset policy is synthetic plus explicit
eval fixtures only. Private user memories are excluded.
Data Policy
- Private user data:
False - Allowed sources: synthetic and checked evaluation fixtures
- LongMemEval-like data: eval-only unless an explicit train/dev/test split is approved
- Hard negatives: superseded facts, wrong predicate/entity, numeric near misses, temporal stale/current conflicts, and semantic neighbors with factual mismatch
CPU Smoke Metrics
| Backend | Dim | Recall@5 | Recall@10 | MRR@10 | nDCG@10 |
|---|---|---|---|---|---|
| deterministic | 256 | 0.1429 | 0.7143 | 0.1160 | 0.2484 |
| deterministic | 1024 | 0.2857 | 0.7143 | 0.1262 | 0.2581 |
These CPU metrics use the deterministic backend unless otherwise stated. They are a pipeline smoke test, not a production quality claim.
Dataset Splits
| Split | Queries | Triplets |
|---|---|---|
| test | 2 | 12 |
| train | 5 | 30 |
Deployment
The preferred shadow path is TEI with TEI_MODEL=Cilow/Vinci and
TEI_DIMENSION=1024. Local inference uses the ONNX lane only after export and
dimension validation pass. Lattice must encode model id, serializer version,
dimension, corpus version, and index version in metadata to prevent mixed-vector
comparisons.
Limitations
- No private data is included in the starter dataset.
- A trained checkpoint must still pass local SentenceTransformer eval, TEI eval, and a production-shadow comparison before promotion.
- Voyage or the current production provider remains default until Vinci matches or beats the baseline without latency regression.
Generated: 2026-05-02T02:51:25+00:00