alt.freeweights.text / jina-colbert-v1-en
From: jinaai <huggingface.co/jinaai>Newsgroups: alt.freeweights.textSubject:

jina-colbert-v1-en

Date: 2026-11-15Commit: 31bb5a4Signed: 2DC28CC7B26A283B ✓

Model with 137M parameters. Safetensors weights, 551 MB in all. Published by jinaai under Apache-2.0.

137M params551MBjina-colbert-v1-ensafetensorspermissive
FactsParams137MSize551 MBFormatssafetensorsTasknot taggedLicenseApache-2.0From sourcepermissive
$ fw get jinaai/jina-colbert-v1-en
# manifest sha256 a7e3df039e00… · 551 MB · 9 files
$ fw verify ./jina-colbert-v1-en jinaai/jina-colbert-v1-en
From sourceHosted (signed)jinaai/jina-colbert-v1-enLast check: 2026-11-15 03:55 UTC

Get help: custom fine-tune or private deploy. We review your setup before we quote.

Works with

Runs with

Ranked by fit to this model (safetensors), then by GitHub stars.

Overview

Size
551 MB
Weights
550 MB (safetensors)
Parameters
137M
Formats
safetensors
Task
not tagged
License
Apache-2.0 (permissive)
Files
9, each with a sha256
Publisher
jinaai
Added
2026-11-15
Section
alt.freeweights.text
Lineage

Original release from the publisher.

Where these bytes come from
Publisher at the pinned commit→You

Sources are tried in order. A file counts only when its size and sha256 match the manifest. Sources are checked when you ask for them, not on a timer.

Sources
BadgeHostLast checkResult
From sourcehuggingface.co2026-11-15 03:55 UTCpassed

Model card

From the publisher at commit 31bb5a4. Shown as plain text with links; images open at the publisher.

Image: Jina AI: Your Search Foundation, Supercharged!

Trained by Jina AI.

Jina-ColBERT#

Jina-ColBERT is a ColBERT-style model but based on JinaBERT so it can support both 8k context length, fast and accurate retrieval.

JinaBERT is a BERT architecture that supports the symmetric bidirectional variant of ALiBi to allow longer sequence length. The Jina-ColBERT model is trained on MSMARCO passage ranking dataset, following a very similar training procedure with ColBERTv2. The only difference is that we use jina-bert-v2-base-en as the backbone instead of bert-base-uncased.

For more information about ColBERT, please refer to the ColBERTv1 and ColBERTv2 paper, and the original code.

Usage#

Installation#

To use this model, you will need to install the latest version of the ColBERT repository:

pip install git+https://github.com/stanford-futuredata/ColBERT.git torch
conda install -c conda-forge faiss-gpu  # use conda to install the latest version faiss
Indexing#
from colbert import Indexer
from colbert.infra import Run, RunConfig, ColBERTConfig

n_gpu: int = 1  # Set your number of available GPUs
experiment: str = ""  # Name of the folder where the logs and created indices will be stored
index_name: str = ""  # The name of your index, i.e. the name of your vector database

if __name__ == "__main__":
    with Run().context(RunConfig(nranks=n_gpu, experiment=experiment)):
        config = ColBERTConfig(
          doc_maxlen=8192  # Our model supports 8k context length for indexing long documents
        )
        indexer = Indexer(
          checkpoint="jinaai/jina-colbert-v1-en",
          config=config,
        )
        documents = [
          "ColBERT is an efficient and effective passage retrieval model.",
          "Jina-ColBERT is a ColBERT-style model but based on JinaBERT so it can support both 8k context length.",
          "JinaBERT is a BERT architecture that supports the symmetric bidirectional variant of ALiBi to allow longer sequence length.",
          "Jina-ColBERT model is trained on MSMARCO passage ranking dataset, following a very similar training procedure with ColBERTv2.",
          "Jina-ColBERT achieves the competitive retrieval performance with ColBERTv2.",
          "Jina is an easier way to build neural search systems.",
          "You can use Jina-ColBERT to build neural search systems with ease.",
          # Add more documents here to ensure the clustering work correctly
        ]
        indexer.index(name=index_name, collection=documents)
Searching#
from colbert import Searcher
from colbert.infra import Run, RunConfig, ColBERTConfig

n_gpu: int = 0
experiment: str = ""  # Name of the folder where the logs and created indices will be stored
index_name: str = ""  # Name of your previously created index where the documents you want to search are stored.
k: int = 10  # how many results you want to retrieve

if __name__ == "__main__":
    with Run().context(RunConfig(nranks=n_gpu, experiment=experiment)):
        config = ColBERTConfig(
          query_maxlen=128  # Although the model supports 8k context length, we suggest not to use a very long query, as it may cause significant computational complexity and CUDA memory usage.
        )
        searcher = Searcher(
          index=index_name, 
          config=config
        )  # You don't need to specify the checkpoint again, the model name is stored in the index.
        query = "How to use ColBERT for indexing long documents?"
        results = searcher.search(query, k=k)
        # results: tuple of tuples of length k containing ((passage_id, passage_rank, passage_score), ...)
Creating Vectors#
from colbert.modeling.checkpoint import Checkpoint

ckpt = Checkpoint("jinaai/jina-colbert-v1-en", colbert_config=ColBERTConfig(root="experiments"))
query_vectors = ckpt.queryFromText(["What does ColBERT do?", "This is a search query?"], bsize=16)
print(query_vectors)

Complete working Colab Notebook is here

Reranking Using ColBERT#
from colbert.modeling.checkpoint import Checkpoint
from colbert.infra import ColBERTConfig

query = ["How to use ColBERT for indexing long documents?"]
documents = [
    "ColBERT is an efficient and effective passage retrieval model.",
    "Jina-ColBERT is a ColBERT-style model but based on JinaBERT so it can support both 8k context length.",
    "JinaBERT is a BERT architecture that supports the symmetric bidirectional variant of ALiBi to allow longer sequence length.",
    "Jina-ColBERT model is trained on MSMARCO passage ranking dataset, following a very similar training procedure with ColBERTv2.",
]

config = ColBERTConfig(query_maxlen=32, doc_maxlen=512)
ckpt = Checkpoint(args.reranker, colbert_config=colbert_config)
Q = ckpt.queryFromText([all_queries[i]])
D = ckpt.docFromText(all_passages, bsize=32)[0]
D_mask = torch.ones(D.shape[:2], dtype=torch.long)
scores = colbert_score(Q, D, D_mask).flatten().cpu().numpy().tolist()
ranking = numpy.argsort(scores)[::-1]
print(ranking)

Evaluation Results#

TL;DR: Our Jina-ColBERT achieves the competitive retrieval performance with ColBERTv2 on all benchmarks, and outperforms ColBERTv2 on datasets in where documents have longer context length.

In-domain benchmarks#

We evaluate the in-domain performance on the dev subset of MSMARCO passage ranking dataset. We follow the same evaluation settings in the ColBERTv2 paper and rerun the results of ColBERTv2 using the released checkpoint.

ModelMRR@10Recall@50Recall@1k
ColBERTv239.786.897.6
Jina-ColBERT-v139.085.696.2
Out-of-domain benchmarks#

Following ColBERTv2, we evaluate the out-of-domain performance on 13 public BEIR datasets and use NDCG@10 as the main metric. We follow the same evaluation settings in the ColBERTv2 paper and rerun the results of ColBERTv2 using the released checkpoint.

Note that both ColBERTv2 and Jina-ColBERT-v1 only employ MSMARCO passage ranking dataset for training, so below results are the fully zero-shot performance.

datasetColBERTv2Jina-ColBERT-v1
ArguAna46.549.4
ClimateFEVER18.119.6
DBPedia45.241.3
FEVER78.879.5
FiQA35.436.8
HotPotQA67.565.6
NFCorpus33.733.8
NQ56.154.9
Quora85.582.3
SCIDOCS15.416.9
SciFact68.970.1
TREC-COVID72.675.0
Webis-touché202026.027.0
Average50.050.2
Long context datasets#

We also evaluate the zero-shot performance on datasets where documents have longer context length and compare with some long-context embedding models. Here we use the LoCo benchmark, which contains 5 datasets with long context length.

ModelUsed context lengthModel max context lengthAvg. NDCG@10
ColBERTv251251274.3
Jina-ColBERT-v1 (truncated)512*819275.5
Jina-ColBERT-v18192819283.7
Jina-embeddings-v2-base-en8192819285.4

\* denotes that we truncate the context length to 512 for documents. The context length of queries is all 512.

To summarize, Jina-ColBERT achieves the comparable retrieval performance with ColBERTv2 on all benchmarks, and outperforms ColBERTv2 on datasets in where documents have longer context length.

Reranking Performance#

We evaluate the reranking performance of ColBERTv2 and Jina-ColBERT on BEIR. We use BM25 as the first-stage retrieval model. The full evaluation code can be found in this repo.

In summary, Jina-ColBERT outperforms ColBERTv2, even achieving comparable performance with some cross-encoder.

The best model, jina-reranker, will be open-sourced soon!

BM25ColBERTv2Jina-ColBERTMiniLM-L-6-v2BGE-reranker-base-v1BGE-reranker-large-v1Jina-reranker-base-v1

Arguana |29.99|33.42|33.95|30.67|23.26|25.42|42.59| Climate-Fever |16.51|20.66|21.87|24.70|31.60|31.98|25.49| DBPedia |31.80|42.16|41.43|43.90|41.56|43.79|43.68| FEVER |65.13|81.07|83.49|80.77|87.07|89.11|86.10| FiQA |23.61|35.60|36.68|34.87|33.17|37.70|41.38| HotpotQA |63.30|68.84|68.62|72.65|79.04|79.98|75.61| NFCorpus |33.75|36.69|36.38|36.48|32.71|36.57|37.73| NQ |30.55|51.27|51.01|52.01|53.55|56.81|56.82| Quora |78.86|85.18|82.75|82.45|78.44|81.06|87.31| SCIDOCS |14.90|15.39|16.67|16.28|15.06|16.84|19.56| SciFact |67.89|70.23|70.95|69.53|70.62|74.14|75.01| TREC-COVID |59.47|75.00|76.89|74.45|67.46|74.32|82.09| Webis-touche2020|44.22|32.12|32.56|28.40|34.37|35.66|31.62| Average |43.08|49.82|50.25|49.78|49.84|52.57|54.23|

ColBERT

Plans#

We are planning to improve the performance of Jina-ColBERT by fine-tuning on more datasets in the future.

Other Models#

Additionally, we provide the following embedding models, you can also use them for retrieval.

Contact#

Join our Discord community and chat with other community members about ideas.

Files

9 files · 551 MBWeights 550 MB (safetensors). Sizes and sha256 from the signed manifest.
Hide all 9 files with their sha256
FileSizesha256
.gitattributes1.52 KB11ad7efa24975ee4b0c3c3a38ed18737f0658a5f75a0a96787b576a78a023361
README.md10.6 KB82678e242037a6f4459873c03dd6e7a6ee76dbcdf9b8088f374cfe6a4de91936
artifact.metadata1.81 KB750b4a924678ef9b5dd68f8b0842ca21bc43e2e15510df15599bfca2066458a0
config.json1.14 KB33395c2c81adc619e7d8862c42d05940645ba48f9c6d2ffa181c72ab0de86113
model.safetensors550 MB9a1d4dfaebf3eb111bd01bebd765edcbebe2613b1f8e80a50c3ca2593a5a78e4
special_tokens_map.json695 B5d5b662e421ea9fac075174bb0688ee0d9431699900b90662acd44b2a350503a
tokenizer.json712 KBe9f999ac74497843ed9f4303246a8f43d9f100ee8aab8e133667903f447ceb48
tokenizer_config.json1.24 KB95ba08ef8e1932981fd3bf0720e576e87200613db15d9ab1c7e77f1312c99007
vocab.txt232 KB109753d618dbb576a35112f9c20ef35cf3517d46106175bcf010c986a4bef1df
VersionsEach time the pinned upstream commit or file list changed in this repo. Newest first.
Upstream commitDateContents
31bb5a4d06 pinned now2026-11-15 03:55 UTC9 files · 551 MB

Use it

$ fw get jinaai/jina-colbert-v1-en
# manifest sha256 a7e3df039e00… · 551 MB · 9 files
$ fw verify ./jina-colbert-v1-en jinaai/jina-colbert-v1-en
fw.pyChecks the signature and every sha256, tries each source in order, resumes.
$ python3 fw.py get https://freeweights.allternit.com/manifests/jinaai/jina-colbert-v1-en.json --dir ./jina-colbert-v1-en $ python3 fw.py verify ./jina-colbert-v1-en ./jinaai__jina-colbert-v1-en.json
hfThe Hugging Face CLI with one setting. Same repo id.
$ HF_ENDPOINT=https://freeweights.allternit.com hf download jinaai/jina-colbert-v1-en --revision 31bb5a4d063a793f4aaaf6ecb9bf4ef1879ddf7d --local-dir ./jina-colbert-v1-en

License

Name
Apache License 2.0
Id
Apache-2.0
Class
Permissive
Redistribution
yes
Listing
Hosted (signed)
Decided
License as declared by the publisher. No person read it. 2026-11-15
Text in
README.md
Text sha256
82678e242037a6f4459873c03dd6e7a6ee76dbcdf9b8088f374cfe6a4de91936
Terms gate
No extra terms beyond the license.

Read the license text

Licenses are checked against the license table. A custom license passes only after a person reads it.

Provenance

From: jinaai <huggingface.co/jinaai>Newsgroups: alt.freeweights.textSubject: jina-colbert-v1-enDate: 2026-11-15Commit: 31bb5a4Signed: 2DC28CC7B26A283B ✓
Upstream
jinaai/jina-colbert-v1-en
Pinned commit
31bb5a4d063a793f4aaaf6ecb9bf4ef1879ddf7d
Manifest
jina-colbert-v1-en.json · .minisig
Manifest sha256
a7e3df039e005bb898df59690db7e89023e9409c8f5a72c8c4a4dd4c42012341
Signature
minisign, Ed25519, key 2DC28CC7B26A283B
Created
2026-11-15 03:55 UTC
Generator
freeweights-manifest/0.1.0
Takedowns
None.

How to verify

$ curl -O https://freeweights.allternit.com/manifests/jinaai/jina-colbert-v1-en.json $ curl -O https://freeweights.allternit.com/manifests/jinaai/jina-colbert-v1-en.json.minisig $ minisign -Vm jina-colbert-v1-en.json -P RWQ7KGqyx4zCLXtUFOqvfv8L3g+8fpKJ1FsuxPyOYMF+4KufbUxKq1Oq $ shasum -a 256 <file> # compare with the Files tab

A manifest whose signature fails must be rejected. A file whose size or sha256 does not match must be discarded. Verify a download

Model tree

No related models in this catalog.Nothing here lists this model as its parent, and it names no parent.
Get it
Download
$ HF_ENDPOINT=https://freeweights.allternit.com hf download jinaai/jina-colbert-v1-en
Open in Freeweights Studio

Pull, verify and run it in the Allternit app on Desktop, web or phone.

Signed manifest
minisign, key 2DC28CC7B26A283B. jina-colbert-v1-en.json. Provenance. Takedown history: none.
From: laion <huggingface.co/laion>Subject: a2-rl-e2egit_large-50-32B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_exp_rpt_e2egit-large-15-8B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_exp_rpt_e2egit-v2-10-8B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_exp_rpt_pymethods2test-large-80-8B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_exp_rpt_unitsyn-python-large-10-8B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_mix_h2_language_proportional-65-8B