加载中…
加载中…
A few weeks ago, we evaluated Reason-ModernColBERT, a 150M late-interaction model trained on ReasonIR data nearly solved BrowseComp-Plus, reaching 87.56% accuracy with GPT-5 (a +7.59 absolute jump over the previous SOTA) while topping recall and calibration error, while not being trained for agentic retrieval at all (and being one year old). We now present Agent-ModernColBERT, a model specifically fine-tuned for agentic retrieval using the AgentIR dataset released alongside AgentIR. You can find the training boilerplate here. This very lightweight fine-tuning adds increase the performance of Reason-ModernColBERT by another 10%, which allows, when exposing the get_document function and the GPT-OSS-120B model, to beat the original GPT-5 + Qwen3-8B runs, while using a retriever model 54× smaller and an open source LLM.
Before issuing a query, deep research agents generate explicit reasoning traces describing what they're looking for and why. Conventional retrievers throw all of that away. The AgentIR paper introduced Reasoning-Aware Retrieval: instead of discarding those reasoning traces, concatenate them to the query you send to the retriever. To enable this, the authors generated trajectories from a deep-research agent and released them (the Tevatron/AgentIR-data dataset), then trained AgentIR-4B, a 4B dense model that beats much larger baselines including ReasonIR-8B and rerank pipelines.
| Model | Retriever | get_document | Accuracy (%) | Recall (%) | Search Calls | Calibration Error (%) |
|---|---|---|---|---|---|---|
| oss-120b-high | BM25 | ✗ | 29.16 | 35.50 | 19.45 | 45.92 |
| oss-120b-high | Qwen3-Embed-8B | ✗ | 44.10 | 52.63 | 18.35 | 39.32 |
| oss-120b-high | GTE-ModernColBERT-v1 | ✗ | 55.66 | 66.94 | 17.51 | 31.02 |
| oss-120b-high | GTE-ModernColBERT-v1 | ✓ | 58.92 | 57.99 | 13.29 | 32.84 |
| oss-120b-high | Reason-ModernColBERT | ✗ | 59.04 | 68.64 | 18.87 | 30.07 |
| oss-120b-high | Reason-ModernColBERT | ✓ | 61.20 | 60.84 | 13.87 | 32.45 |
| oss-120b-high | AgentIR-4B | ✗ | 66.99 | 78.13 | 24.08 | 22.55 |
| oss-120b-high | Agent-ModernColBERT | ✗ | 63.86 | 74.84 | 21.49 | 25.55 |
| oss-120b-high | Agent-ModernColBERT | ✓ | 72.53 | 72.84 | 15.85 | 22.07 |
| GPT-5 | BM25 | ✗ | 57.59 | 61.70 | 23.23 | 12.63 |
| GPT-5 | Qwen3-Embed-8B | ✗ | 71.69 | 78.98 | 21.74 | 9.58 |
| GPT-5 | Reason-ModernColBERT | ✗ | 79.52 | 83.52 | 19.31 | 7.46 |
| GPT-5 | Reason-ModernColBERT | ✓ | 87.59 | 81.55 | 13.27 | 6.07 |
The get_document column indicates whether the LLM was exposed to the possibility of using the get_document function that allows, in addition to the usual search function that returns a snippet of the top-5 documents for a given query (the beginning of the document), to request the full content of a document using its id.
It allows the model to get more information when needed, but can also add noise to the process if the model reads full documents that are irrelevant, and thus require a precise retrieval signal.
A few things worth highlighting:
get_document function exposed, Agent-ModernColBERT + GPT-OSS-120B reaches 72.53, higher than the original GPT-5 + Qwen3-8B setup (which doesn't expose get_document).Agent-ModernColBERT was trained on the AgentIR query format, which prepends an instruction and concatenates the agent's reasoning trace with the search query. Documents are encoded as plain text, no prefix.
The exact query layout is:
<INSTRUCT_PREFIX>Reasoning: <reasoning>\n\nQuery: <search_query>
A few non-obvious details worth flagging:
\nQuery: (a backslash followed by n, 2 characters — not a newline). This is inherited byte-for-byte from the AgentIR training script and the model expects it.Query: appears twice in every query — once at the end of the prefix, once as a real label before the search query."Empty" (this matches the AgentIR agent loop).Helper:
INSTRUCT_PREFIX = (
"Instruct: Given a user's reasoning followed by a web search query, "
"retrieve relevant passages that answer the query while incorporating the user's reasoning"
"\\nQuery:" # literal backslash-n, NOT a newline — keep as-is
)
def format_query(reasoning: str | None, search_query: str) -> str:
r = reasoning if reasoning else "Empty"
return f"{INSTRUCT_PREFIX}Reasoning: {r}\n\nQuery: {search_query}"
Then encode normally with is_query=True for queries and is_query=False for documents:
from pylate import models
model = models.ColBERT(model_name_or_path="lightonai/Agent-ModernColBERT")
queries = [
format_query(
reasoning="The user wants a code-level explanation of PLAID, so passages "
"with implementation details should be prioritized.",
search_query="What does the PLAID centroid scoring step do?",
),
]
documents = [
"PLAID first scores documents against quantized centroids of the ColBERT "
"token embeddings, then re-ranks a short candidate list with the full "
"late-interaction score.",
]
query_embs = model.encode(queries, is_query=True)
doc_embs = model.encode(documents, is_query=False)
If you rather want to use a simpler version without the prefix (just reasoning + query), you can use the no-prefix version, at the cost of slighlty lower performance:
| Model | Retriever | get_document | Accuracy (%) | Recall (%) | Search Calls | Calibration Error (%) |
|---|---|---|---|---|---|---|
| oss-120b-high | Agent-ModernColBERT-no-prefix | ✗ | 64.10 | 74.63 | 20.76 | 25.55 |
| oss-120b-high | Agent-ModernColBERT-no-prefix | ✓ | 70.84 | 71.34 | 14.87 | 23.08 |
| oss-120b-high | Agent-ModernColBERT (this model) | ✗ | 63.86 | 74.84 | 21.49 | 25.55 |
| oss-120b-high** | Agent-ModernColBERT (this model) | ✓ | 72.53 | 72.84 | 15.85 | 22.07 |
get_document setupget_document is a net improvement in most cases, but the gains depend on both the retrieval model and the agent. The very strong numbers above are not a given for every combination. We tried adding more get_document data points, but were not able to reproduce the original AgentIR results exactly (small deltas remain after fixing environments). We therefore omit those points from the comparison: although they look favorable to Agent-ModernColBERT, we can't yet rule out GPT-OSS-side errors.
This is a multi-vector (ColBERT-style late interaction) embedding model finetuned from lightonai/GTE-ModernColBERT-v1 on the agent_ir-data dataset. It maps sentences & paragraphs to sequences of 128-dimensional dense vectors and can be used for semantic textual similarity using the MaxSim operator.
ColBERT(
(0): Transformer({'max_seq_length': 8191, 'do_lower_case': False, 'architecture': 'ModernBertModel'})
(1): Dense({'in_features': 768, 'out_features': 128, 'bias': False, 'activation_function': 'torch.nn.modules.linear.Identity', 'use_residual': False})
)
This model can be used with Sentence Transformers as a multi-vector (ColBERT-style late interaction) retriever via the MultiVectorEncoder:
pip install "sentence-transformers>=6.0.0"
from sentence_transformers import MultiVectorEncoder
model = MultiVectorEncoder("lightonai/Agent-ModernColBERT")
query = "Which planet is known as the Red Planet?"
documents = [
"Venus is often called Earth's twin because of its similar size and proximity.",
"Mars, known for its reddish appearance, is often referred to as the Red Planet.",
"Jupiter, the largest planet in our solar system, has a prominent red spot.",
"Saturn, famous for its rings, is sometimes mistaken for the Red Planet.",
]
query_embeddings = model.encode_query(query)
document_embeddings = model.encode_document(documents)
print(query_embeddings.shape, document_embeddings[0].shape)
# (12, 128) (18, 128)
# MaxSim late-interaction scoring (higher is more relevant)
scores = model.similarity(query_embeddings, document_embeddings)
print(scores)
# tensor([[10.4239, 11.1039, 10.6760, 10.9058]])
First install the PyLate library:
pip install -U pylate
Use this model with PyLate to index and retrieve documents. The index uses FastPLAID for efficient similarity search.
Load the ColBERT model and initialize the PLAID index, then encode and index your documents:
from pylate import indexes, models, retrieve
# Step 1: Load the ColBERT model
model = models.ColBERT(
model_name_or_path="pylate_model_id",
)
# Step 2: Initialize the PLAID index
index = indexes.PLAID(
index_folder="pylate-index",
index_name="index",
override=True, # This overwrites the existing index if any
)
# Step 3: Encode the documents
documents_ids = ["1", "2", "3"]
documents = ["document 1 text", "document 2 text", "document 3 text"]
documents_embeddings = model.encode(
documents,
batch_size=32,
is_query=False, # Ensure that it is set to False to indicate that these are documents, not queries
show_progress_bar=True,
)
# Step 4: Add document embeddings to the index by providing embeddings and corresponding ids
index.add_documents(
documents_ids=documents_ids,
documents_embeddings=documents_embeddings,
)
Note that you do not have to recreate the index and encode the documents every time. Once you have created an index and added the documents, you can re-use the index later by loading it:
# To load an index, simply instantiate it with the correct folder/name and without overriding it
index = indexes.PLAID(
index_folder="pylate-index",
index_name="index",
)
Once the documents are indexed, you can retrieve the top-k most relevant documents for a given set of queries. To do so, initialize the ColBERT retriever with the index you want to search in, encode the queries and then retrieve the top-k documents to get the top matches ids and relevance scores.
Note that queries must be wrapped with format_query() — see the Query format section above. Pass the agent's reasoning trace as the first argument, or None if you don't have one.
INSTRUCT_PREFIX = (
"Instruct: Given a user's reasoning followed by a web search query, "
"retrieve relevant passages that answer the query while incorporating the user's reasoning"
"\\nQuery:" # literal backslash-n, NOT a newline — keep as-is
)
def format_query(reasoning: str | None, search_query: str) -> str:
r = reasoning if reasoning else "Empty"
return f"{INSTRUCT_PREFIX}Reasoning: {r}\n\nQuery: {search_query}"
# Step 1: Initialize the ColBERT retriever
retriever = retrieve.ColBERT(index=index)
# Step 2: Build queries in the AgentIR format, then encode them
raw_queries = [
(
"The user wants a code-level explanation of PLAID, so passages with "
"implementation details or pseudo-code should be prioritized.",
"What does the PLAID centroid scoring step do?",
),
(
"The user is comparing late-interaction models to dense bi-encoders, "
"likely with a focus on latency trade-offs.",
"How does ColBERT compare to dense retrievers in terms of latency?",
),
]
queries = [format_query(reasoning, q) for reasoning, q in raw_queries]
queries_embeddings = model.encode(
queries,
batch_size=32,
is_query=True, # adds the [Q] marker + uses query_length
show_progress_bar=True,
)
# Step 3: Retrieve top-k documents
scores = retriever.retrieve(
queries_embeddings=queries_embeddings,
k=10, # Retrieve the top 10 matches for each query
)
If you only want to use the ColBERT model to perform reranking on top of your first-stage retrieval pipeline without building an index, you can simply use the rank function and pass the queries and documents to rerank.
As with retrieval, queries must be wrapped with format_query() (see the Query format section). Documents are encoded as plain text — no prefix.
from pylate import rank, models
INSTRUCT_PREFIX = (
"Instruct: Given a user's reasoning followed by a web search query, "
"retrieve relevant passages that answer the query while incorporating the user's reasoning"
"\\nQuery:" # literal backslash-n, NOT a newline — keep as-is
)
def format_query(reasoning: str | None, search_query: str) -> str:
r = reasoning if reasoning else "Empty"
return f"{INSTRUCT_PREFIX}Reasoning: {r}\n\nQuery: {search_query}"
raw_queries = [
(
"The user wants to understand how MaxSim scoring works at a high level.",
"What is late interaction in ColBERT?",
),
(
"The user is benchmarking retrievers and cares about index size.",
"How large is a PLAID index compared to a dense FAISS index?",
),
]
queries = [format_query(reasoning, q) for reasoning, q in raw_queries]
documents = [
["document A", "document B"],
["document 1", "document C", "document B"],
]
documents_ids = [
[1, 2],
[1, 3, 2],
]
model = models.ColBERT(
model_name_or_path="pylate_model_id",
)
queries_embeddings = model.encode(
queries,
is_query=True, # adds the [Q] marker + uses query_length
)
documents_embeddings = model.encode(
documents,
is_query=False, # adds the [D] marker + uses document_length
)
reranked_documents = rank.rerank(
documents_ids=documents_ids,
queries_embeddings=queries_embeddings,
documents_embeddings=documents_embeddings,
)
query, positive, negative_0, negative_1, negative_2, negative_3, negative_4, negative_5, and negative_6| query | positive | negative_0 | negative_1 | negative_2 | negative_3 | negative_4 | negative_5 | negative_6 | |
|---|---|---|---|---|---|---|---|---|---|
| type | string | string | string | string | string | string | string | string | string |
| details |
|
|
|
|
|
|
|
|
|
| query | positive | negative_0 | negative_1 | negative_2 | negative_3 | negative_4 | negative_5 | negative_6 |
|---|---|---|---|---|---|---|---|---|
Instruct: Given a user's reasoning followed by a web search query, retrieve relevant passages that answer the query while incorporating the user's reasoning\nQuery:Reasoning: Thus we have a clear answer: the manager who was replaced is A.J. Hinch. |
Published Time: 2010-07-03T01:05:31.000Z |
Tigers retire Hall of Famer Jim Leyland's No. 10 next to World Series winner Sparky Anderson on wall |
Below are the retired numbers for every Major League club. On April 15, 1997, every team in MLB retired No. 42 in honor of Jackie Robinson. |
[adrotate banner="49″] |
Detroit Tigers to retire former coach Jim Leyland's number at Comerica Park |
Tigers retire Hall of Fame manager Jim Leyland's number |
Published Time: 2004-04-01T21:47:42Z |
'A wonderful day': Tigers to retire Hall of Fame manager Jim Leyland's number |
Instruct: Given a user's reasoning followed by a web search query, retrieve relevant passages that answer the query while incorporating the user's reasoning\nQuery:Reasoning: Scrolling further maybe find South American Championship winner. Let's search "2015 South American U23 Volleyball Championship Brazil champion". |
Jump to content |
|
CareerTimeline |
Schedule Tabs |
|
The perennial South American doormats have struggled mightily since opening last year's Copa America with a pair of highly surprising results. Their quarterfinal finish in 2015 marked just the third time in 15 tries that Bolivia has reached the knockouts since the Copa America went to a group stage format back in 1975. It's worth noting they've experienced several rough defeats playing on US soil over the last 20 years. |
Spain can celebrate tonight after beating Romania 24-3 to be crowned 2015 Rugby Europe Under 19 champions and secure qualification for next year's World Rugby Under 20 Trophy in Zimbabwe. |
2025 Women's Volleyball Roster |
Instruct: Given a user's reasoning followed by a web search query, retrieve relevant passages that answer the query while incorporating the user's reasoning\nQuery:Reasoning: This is not directly helpful. |
Long before Jane Austen wrote Northanger Abbey and exposed Frederick Tilney as a profligate heir-at-law, Chief Justice Sir John Popham lashed out at the custom of primogeniture. As J. H. Baker and S.F.C. Milsom record in Sources of English Legal History: Private Law to 1750, Popham objected to laws of landed property that "forced willy-nilly a father to leave his heritage [to his eldest son]." The willy-nilliness of inheritance laws has created a nation of "disobedient and sensual" eldest sons, fumed Popham, "undutiful in demeanour . . . and in manner and conversation dissolute." Furthermore, Popham opined, "such laws are utterly contrary to the providence of God"1 (157). |
THE STORY: The play begins by introducing the next generation of Robedauxs in the person of Horace's son, Horace Jr., who comes home from school to find that his maternal grandfather, Henry Vaughn, has died suddenly of a heart attack. From this point, two main storylines are traced in the play. One deals with young Horace's coming to terms with the concepts of life, death and familial relationships. He finds that his mother, Elizabeth, is expecting another baby; he listens to, and asks many questions about, the widely contrasting accounts of his two grandfathers; and he endures the fussing of his paternal grandmother, who's fearful that his love of reading will make him too introspective and "ruin him" for the real world. He must also come to grips with the drowning of Gertrude, a young black girl who was his confidante and friend. The other storyline concerns "Brother" Vaughn, Henry Vaughn's dissolute son, who, in the short time during which he has control, heads his late father's far... |
About Project Gutenberg |
Warning: Target URL returned error 403: Forbidden |
Warning: Target URL returned error 403: Forbidden |
Click any word in a definition or example to find the entry for that word |
Click any word in a definition or example to find the entry for that word |
NOTE: refers to whole nations of peoples, or sets of people that follow certain norms. |
pylate.losses.cached_contrastive.CachedContrastiveper_device_train_batch_size: 32per_device_eval_batch_size: 32learning_rate: 3e-06num_train_epochs: 2bf16: Truedataloader_num_workers: 8accelerator_config: {'split_batches': True, 'dispatch_batches': None, 'even_batches': True, 'use_seedable_sampler': True, 'non_blocking': False, 'gradient_accumulation_kwargs': None}overwrite_output_dir: Falsedo_predict: Falseeval_strategy: noprediction_loss_only: Trueper_device_train_batch_size: 32per_device_eval_batch_size: 32per_gpu_train_batch_size: Noneper_gpu_eval_batch_size: Nonegradient_accumulation_steps: 1eval_accumulation_steps: Nonetorch_empty_cache_steps: Nonelearning_rate: 3e-06weight_decay: 0.0adam_beta1: 0.9adam_beta2: 0.999adam_epsilon: 1e-08max_grad_norm: 1.0num_train_epochs: 2max_steps: -1lr_scheduler_type: linearlr_scheduler_kwargs: {}warmup_ratio: 0.0warmup_steps: 0log_level: passivelog_level_replica: warninglog_on_each_node: Truelogging_nan_inf_filter: Truesave_safetensors: Truesave_on_each_node: Falsesave_only_model: Falserestore_callback_states_from_checkpoint: Falseno_cuda: Falseuse_cpu: Falseuse_mps_device: Falseseed: 42data_seed: Nonejit_mode_eval: Falsebf16: Truefp16: Falsefp16_opt_level: O1half_precision_backend: autobf16_full_eval: Falsefp16_full_eval: Falsetf32: Nonelocal_rank: 6ddp_backend: Nonetpu_num_cores: Nonetpu_metrics_debug: Falsedebug: []dataloader_drop_last: Truedataloader_num_workers: 8dataloader_prefetch_factor: Nonepast_index: -1disable_tqdm: Falseremove_unused_columns: Truelabel_names: Noneload_best_model_at_end: Falseignore_data_skip: Falsefsdp: []fsdp_min_num_params: 0fsdp_config: {'min_num_params': 0, 'xla': False, 'xla_fsdp_v2': False, 'xla_fsdp_grad_ckpt': False}fsdp_transformer_layer_cls_to_wrap: Noneaccelerator_config: {'split_batches': True, 'dispatch_batches': None, 'even_batches': True, 'use_seedable_sampler': True, 'non_blocking': False, 'gradient_accumulation_kwargs': None}parallelism_config: Nonedeepspeed: Nonelabel_smoothing_factor: 0.0optim: adamw_torch_fusedoptim_args: Noneadafactor: Falsegroup_by_length: Falselength_column_name: lengthproject: huggingfacetrackio_space_id: trackioddp_find_unused_parameters: Noneddp_bucket_cap_mb: Noneddp_broadcast_buffers: Falsedataloader_pin_memory: Truedataloader_persistent_workers: Falseskip_memory_metrics: Trueuse_legacy_prediction_loop: Falsepush_to_hub: Falseresume_from_checkpoint: Nonehub_model_id: Nonehub_strategy: every_savehub_private_repo: Nonehub_always_push: Falsehub_revision: Nonegradient_checkpointing: Falsegradient_checkpointing_kwargs: Noneinclude_inputs_for_metrics: Falseinclude_for_metrics: []eval_do_concat_batches: Truefp16_backend: autopush_to_hub_model_id: Nonepush_to_hub_organization: Nonemp_parameters: auto_find_batch_size: Falsefull_determinism: Falsetorchdynamo: Noneray_scope: lastddp_timeout: 1800torch_compile: Falsetorch_compile_backend: Nonetorch_compile_mode: Noneinclude_tokens_per_second: Falseinclude_num_input_tokens_seen: noneftune_noise_alpha: Noneoptim_target_modules: Nonebatch_eval_metrics: Falseeval_on_start: Falseuse_liger_kernel: Falseliger_kernel_config: Noneeval_use_gather_object: Falseaverage_tokens_across_devices: Trueprompts: Nonebatch_sampler: batch_samplermulti_dataset_batch_sampler: proportionalrouter_mapping: {}learning_rate_mapping: {}| Epoch | Step | Training Loss |
|---|---|---|
| 0.0061 | 1 | 251.6844 |
| 0.0123 | 2 | 146.4935 |
| 0.0184 | 3 | 204.8347 |
| 0.0245 | 4 | 83.2078 |
| 0.0307 | 5 | 109.9652 |
| 0.0368 | 6 | 177.9877 |
| 0.0429 | 7 | 116.3364 |
| 0.0491 | 8 | 90.739 |
| 0.0552 | 9 | 58.853 |
| 0.0613 | 10 | 109.6586 |
| 0.0675 | 11 | 153.7974 |
| 0.0736 | 12 | 158.2151 |
| 0.0798 | 13 | 81.3265 |
| 0.0859 | 14 | 48.5454 |
| 0.0920 | 15 | 55.0645 |
| 0.0982 | 16 | 89.199 |
| 0.1043 | 17 | 54.3039 |
| 0.1104 | 18 | 109.2755 |
| 0.1166 | 19 | 88.5181 |
| 0.1227 | 20 | 62.9133 |
| 0.1288 | 21 | 55.7161 |
| 0.1350 | 22 | 14.4418 |
| 0.1411 | 23 | 193.6148 |
| 0.1472 | 24 | 135.4039 |
| 0.1534 | 25 | 50.6357 |
| 0.1595 | 26 | 80.8877 |
| 0.1656 | 27 | 36.8535 |
| 0.1718 | 28 | 218.7971 |
| 0.1779 | 29 | 51.0969 |
| 0.1840 | 30 | 57.8551 |
| 0.1902 | 31 | 17.3962 |
| 0.1963 | 32 | 35.7107 |
| 0.2025 | 33 | 75.7436 |
| 0.2086 | 34 | 113.3241 |
| 0.2147 | 35 | 42.6941 |
| 0.2209 | 36 | 45.0647 |
| 0.2270 | 37 | 262.2773 |
| 0.2331 | 38 | 95.0014 |
| 0.2393 | 39 | 62.2266 |
| 0.2454 | 40 | 17.7328 |
| 0.2515 | 41 | 75.298 |
| 0.2577 | 42 | 33.4693 |
| 0.2638 | 43 | 42.0251 |
| 0.2699 | 44 | 97.2181 |
| 0.2761 | 45 | 83.6538 |
| 0.2822 | 46 | 53.8442 |
| 0.2883 | 47 | 34.3187 |
| 0.2945 | 48 | 39.6208 |
| 0.3006 | 49 | 26.2876 |
| 0.3067 | 50 | 24.4972 |
| 0.3129 | 51 | 24.6354 |
| 0.3190 | 52 | 40.8579 |
| 0.3252 | 53 | 20.4226 |
| 0.3313 | 54 | 86.2404 |
| 0.3374 | 55 | 95.912 |
| 0.3436 | 56 | 43.5975 |
| 0.3497 | 57 | 38.4333 |
| 0.3558 | 58 | 52.2754 |
| 0.3620 | 59 | 23.1401 |
| 0.3681 | 60 | 9.7218 |
| 0.3742 | 61 | 16.3712 |
| 0.3804 | 62 | 33.2431 |
| 0.3865 | 63 | 15.8313 |
| 0.3926 | 64 | 10.262 |
| 0.3988 | 65 | 4.7782 |
| 0.4049 | 66 | 26.7843 |
| 0.4110 | 67 | 41.7366 |
| 0.4172 | 68 | 24.5477 |
| 0.4233 | 69 | 10.5636 |
| 0.4294 | 70 | 37.2629 |
| 0.4356 | 71 | 39.7041 |
| 0.4417 | 72 | 18.8658 |
| 0.4479 | 73 | 44.7685 |
| 0.4540 | 74 | 44.918 |
| 0.4601 | 75 | 23.3182 |
| 0.4663 | 76 | 30.0653 |
| 0.4724 | 77 | 25.6349 |
| 0.4785 | 78 | 37.2554 |
| 0.4847 | 79 | 10.5982 |
| 0.4908 | 80 | 7.8591 |
| 0.4969 | 81 | 33.3623 |
| 0.5031 | 82 | 42.1625 |
| 0.5092 | 83 | 14.2627 |
| 0.5153 | 84 | 91.5221 |
| 0.5215 | 85 | 40.9423 |
| 0.5276 | 86 | 26.259 |
| 0.5337 | 87 | 5.561 |
| 0.5399 | 88 | 21.457 |
| 0.5460 | 89 | 84.6263 |
| 0.5521 | 90 | 57.9503 |
| 0.5583 | 91 | 44.5946 |
| 0.5644 | 92 | 11.4791 |
| 0.5706 | 93 | 49.3391 |
| 0.5767 | 94 | 4.1446 |
| 0.5828 | 95 | 3.0802 |
| 0.5890 | 96 | 23.4868 |
| 0.5951 | 97 | 8.4543 |
| 0.6012 | 98 | 16.088 |
| 0.6074 | 99 | 23.3193 |
| 0.6135 | 100 | 32.7751 |
| 0.6196 | 101 | 40.2671 |
| 0.6258 | 102 | 22.8478 |
| 0.6319 | 103 | 10.9729 |
| 0.6380 | 104 | 35.961 |
| 0.6442 | 105 | 4.2231 |
| 0.6503 | 106 | 65.486 |
| 0.6564 | 107 | 16.9292 |
| 0.6626 | 108 | 43.9595 |
| 0.6687 | 109 | 1.1502 |
| 0.6748 | 110 | 34.0701 |
| 0.6810 | 111 | 16.7597 |
| 0.6871 | 112 | 93.2447 |
| 0.6933 | 113 | 46.6367 |
| 0.6994 | 114 | 27.0185 |
| 0.7055 | 115 | 12.3738 |
| 0.7117 | 116 | 10.8279 |
| 0.7178 | 117 | 2.0338 |
| 0.7239 | 118 | 25.4952 |
| 0.7301 | 119 | 20.1245 |
| 0.7362 | 120 | 36.2976 |
| 0.7423 | 121 | 6.5414 |
| 0.7485 | 122 | 18.7999 |
| 0.7546 | 123 | 23.5122 |
| 0.7607 | 124 | 28.1605 |
| 0.7669 | 125 | 9.1322 |
| 0.7730 | 126 | 12.5895 |
| 0.7791 | 127 | 8.845 |
| 0.7853 | 128 | 15.5015 |
| 0.7914 | 129 | 26.4296 |
| 0.7975 | 130 | 20.4918 |
| 0.8037 | 131 | 23.0438 |
| 0.8098 | 132 | 20.12 |
| 0.8160 | 133 | 16.3988 |
| 0.8221 | 134 | 20.4246 |
| 0.8282 | 135 | 14.885 |
| 0.8344 | 136 | 31.8072 |
| 0.8405 | 137 | 19.7062 |
| 0.8466 | 138 | 11.8951 |
| 0.8528 | 139 | 10.9807 |
| 0.8589 | 140 | 6.7238 |
| 0.8650 | 141 | 12.5684 |
| 0.8712 | 142 | 32.5262 |
| 0.8773 | 143 | 39.2644 |
| 0.8834 | 144 | 7.6778 |
| 0.8896 | 145 | 3.1758 |
| 0.8957 | 146 | 5.9865 |
| 0.9018 | 147 | 7.2402 |
| 0.9080 | 148 | 17.5972 |
| 0.9141 | 149 | 10.8891 |
| 0.9202 | 150 | 32.82 |
| 0.9264 | 151 | 27.7576 |
| 0.9325 | 152 | 6.7915 |
| 0.9387 | 153 | 19.1072 |
| 0.9448 | 154 | 12.3399 |
| 0.9509 | 155 | 8.8024 |
| 0.9571 | 156 | 7.4714 |
| 0.9632 | 157 | 33.75 |
| 0.9693 | 158 | 5.1587 |
| 0.9755 | 159 | 13.7005 |
| 0.9816 | 160 | 21.6871 |
| 0.9877 | 161 | 20.123 |
| 0.9939 | 162 | 3.9714 |
| 1.0 | 163 | 1.7773 |
| 1.0061 | 164 | 10.6896 |
| 1.0123 | 165 | 9.9268 |
| 1.0184 | 166 | 11.1198 |
| 1.0245 | 167 | 5.1215 |
| 1.0307 | 168 | 12.7184 |
| 1.0368 | 169 | 6.7466 |
| 1.0429 | 170 | 6.5443 |
| 1.0491 | 171 | 24.0256 |
| 1.0552 | 172 | 19.4558 |
| 1.0613 | 173 | 7.1158 |
| 1.0675 | 174 | 0.2471 |
| 1.0736 | 175 | 30.1651 |
| 1.0798 | 176 | 9.2526 |
| 1.0859 | 177 | 31.1063 |
| 1.0920 | 178 | 4.7692 |
| 1.0982 | 179 | 1.1668 |
| 1.1043 | 180 | 20.8924 |
| 1.1104 | 181 | 2.1656 |
| 1.1166 | 182 | 6.8819 |
| 1.1227 | 183 | 8.4771 |
| 1.1288 | 184 | 10.3726 |
| 1.1350 | 185 | 8.8603 |
| 1.1411 | 186 | 10.4239 |
| 1.1472 | 187 | 12.2893 |
| 1.1534 | 188 | 14.5491 |
| 1.1595 | 189 | 7.304 |
| 1.1656 | 190 | 5.3923 |
| 1.1718 | 191 | 2.042 |
| 1.1779 | 192 | 5.5227 |
| 1.1840 | 193 | 22.5354 |
| 1.1902 | 194 | 6.1073 |
| 1.1963 | 195 | 4.4509 |
| 1.2025 | 196 | 7.9371 |
| 1.2086 | 197 | 8.3571 |
| 1.2147 | 198 | 11.0391 |
| 1.2209 | 199 | 14.6291 |
| 1.2270 | 200 | 9.0518 |
| 1.2331 | 201 | 15.1643 |
| 1.2393 | 202 | 4.8739 |
| 1.2454 | 203 | 4.8353 |
| 1.2515 | 204 | 9.1748 |
| 1.2577 | 205 | 49.4447 |
| 1.2638 | 206 | 26.5297 |
| 1.2699 | 207 | 6.9165 |
| 1.2761 | 208 | 27.7709 |
| 1.2822 | 209 | 1.0802 |
| 1.2883 | 210 | 17.884 |
| 1.2945 | 211 | 8.5658 |
| 1.3006 | 212 | 23.1983 |
| 1.3067 | 213 | 22.5068 |
| 1.3129 | 214 | 8.5628 |
| 1.3190 | 215 | 41.5334 |
| 1.3252 | 216 | 7.3641 |
| 1.3313 | 217 | 3.9679 |
| 1.3374 | 218 | 18.2018 |
| 1.3436 | 219 | 1.8379 |
| 1.3497 | 220 | 6.3514 |
| 1.3558 | 221 | 6.1778 |
| 1.3620 | 222 | 7.0593 |
| 1.3681 | 223 | 18.4819 |
| 1.3742 | 224 | 14.9003 |
| 1.3804 | 225 | 9.5004 |
| 1.3865 | 226 | 1.6134 |
| 1.3926 | 227 | 3.2439 |
| 1.3988 | 228 | 8.717 |
| 1.4049 | 229 | 11.4211 |
| 1.4110 | 230 | 7.296 |
| 1.4172 | 231 | 17.5672 |
| 1.4233 | 232 | 4.0319 |
| 1.4294 | 233 | 9.3135 |
| 1.4356 | 234 | 7.6287 |
| 1.4417 | 235 | 10.4492 |
| 1.4479 | 236 | 8.202 |
| 1.4540 | 237 | 28.7939 |
| 1.4601 | 238 | 10.9131 |
| 1.4663 | 239 | 4.7691 |
| 1.4724 | 240 | 17.7288 |
| 1.4785 | 241 | 1.5302 |
| 1.4847 | 242 | 30.5182 |
| 1.4908 | 243 | 5.268 |
| 1.4969 | 244 | 15.9061 |
| 1.5031 | 245 | 7.4854 |
| 1.5092 | 246 | 9.2859 |
| 1.5153 | 247 | 8.7083 |
| 1.5215 | 248 | 4.897 |
| 1.5276 | 249 | 5.2034 |
| 1.5337 | 250 | 5.9059 |
| 1.5399 | 251 | 3.9632 |
| 1.5460 | 252 | 1.0025 |
| 1.5521 | 253 | 10.1921 |
| 1.5583 | 254 | 10.1861 |
| 1.5644 | 255 | 20.3478 |
| 1.5706 | 256 | 10.5324 |
| 1.5767 | 257 | 6.6423 |
| 1.5828 | 258 | 77.8926 |
| 1.5890 | 259 | 12.9764 |
| 1.5951 | 260 | 7.9521 |
| 1.6012 | 261 | 12.2391 |
| 1.6074 | 262 | 10.7837 |
| 1.6135 | 263 | 7.3299 |
| 1.6196 | 264 | 15.6829 |
| 1.6258 | 265 | 5.7334 |
| 1.6319 | 266 | 5.6967 |
| 1.6380 | 267 | 9.8932 |
| 1.6442 | 268 | 9.9245 |
| 1.6503 | 269 | 7.8658 |
| 1.6564 | 270 | 5.8856 |
| 1.6626 | 271 | 9.9747 |
| 1.6687 | 272 | 43.5721 |
| 1.6748 | 273 | 14.3686 |
| 1.6810 | 274 | 1.7907 |
| 1.6871 | 275 | 12.1684 |
| 1.6933 | 276 | 5.369 |
| 1.6994 | 277 | 12.1966 |
| 1.7055 | 278 | 25.4539 |
| 1.7117 | 279 | 1.7052 |
| 1.7178 | 280 | 35.1573 |
| 1.7239 | 281 | 32.6432 |
| 1.7301 | 282 | 4.7942 |
| 1.7362 | 283 | 11.5083 |
| 1.7423 | 284 | 2.4451 |
| 1.7485 | 285 | 25.4313 |
| 1.7546 | 286 | 7.5266 |
| 1.7607 | 287 | 5.4305 |
| 1.7669 | 288 | 11.7214 |
| 1.7730 | 289 | 13.7315 |
| 1.7791 | 290 | 4.659 |
| 1.7853 | 291 | 9.3489 |
| 1.7914 | 292 | 3.9286 |
| 1.7975 | 293 | 8.8082 |
| 1.8037 | 294 | 34.1622 |
| 1.8098 | 295 | 8.5742 |
| 1.8160 | 296 | 5.932 |
| 1.8221 | 297 | 8.9915 |
| 1.8282 | 298 | 8.6868 |
| 1.8344 | 299 | 7.7889 |
| 1.8405 | 300 | 8.1263 |
| 1.8466 | 301 | 7.8882 |
| 1.8528 | 302 | 3.4437 |
| 1.8589 | 303 | 18.8883 |
| 1.8650 | 304 | 5.8368 |
| 1.8712 | 305 | 14.5339 |
| 1.8773 | 306 | 7.5006 |
| 1.8834 | 307 | 10.2736 |
| 1.8896 | 308 | 5.306 |
| 1.8957 | 309 | 9.215 |
| 1.9018 | 310 | 31.7204 |
| 1.9080 | 311 | 2.0667 |
| 1.9141 | 312 | 22.2626 |
| 1.9202 | 313 | 9.3043 |
| 1.9264 | 314 | 3.7591 |
| 1.9325 | 315 | 17.0407 |
| 1.9387 | 316 | 4.2965 |
| 1.9448 | 317 | 7.4482 |
| 1.9509 | 318 | 22.2339 |
| 1.9571 | 319 | 2.2042 |
| 1.9632 | 320 | 7.6398 |
| 1.9693 | 321 | 10.9501 |
| 1.9755 | 322 | 17.4027 |
| 1.9816 | 323 | 7.9471 |
| 1.9877 | 324 | 3.4911 |
| 1.9939 | 325 | 16.5043 |
| 2.0 | 326 | 8.0568 |
@misc{Agent-ModernColBERT,
title = {Agent-ModernColBERT},
author = {Chaffin, Antoine},
url = {https://huggingface.co/lightonai/Agent-ModernColBERT},
year = {2026}
}
@article{DBLP:journals/corr/abs-2603-04384,
author = {Zijian Chen and
Xueguang Ma and
Shengyao Zhuang and
Jimmy Lin and
Akari Asai and
Victor Zhong},
title = {AgentIR: Reasoning-Aware Retrieval for Deep Research Agents},
journal = {CoRR},
volume = {abs/2603.04384},
year = {2026},
url = {https://doi.org/10.48550/arXiv.2603.04384},
doi = {10.48550/ARXIV.2603.04384},
eprinttype = {arXiv},
eprint = {2603.04384},
timestamp = {Wed, 08 Apr 2026 10:55:23 +0200},
biburl = {https://dblp.org/rec/journals/corr/abs-2603-04384.bib},
bibsource = {dblp computer science bibliography, https://dblp.org}
}
@inproceedings{reimers-2019-sentence-bert,
title = "Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks",
author = "Reimers, Nils and Gurevych, Iryna",
booktitle = "Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing",
month = "11",
year = "2019",
publisher = "Association for Computational Linguistics",
url = "https://arxiv.org/abs/1908.10084"
}
@inproceedings{DBLP:conf/cikm/ChaffinS25,
author = {Antoine Chaffin and
Rapha{"{e}}l Sourty},
editor = {Meeyoung Cha and
Chanyoung Park and
Noseong Park and
Carl Yang and
Senjuti Basu Roy and
Jessie Li and
Jaap Kamps and
Kijung Shin and
Bryan Hooi and
Lifang He},
title = {PyLate: Flexible Training and Retrieval for Late Interaction Models},
booktitle = {Proceedings of the 34th {ACM} International Conference on Information
and Knowledge Management, {CIKM} 2025, Seoul, Republic of Korea, November
10-14, 2025},
pages = {6334--6339},
publisher = {{ACM}},
year = {2025},
url = {https://github.com/lightonai/pylate},
doi = {10.1145/3746252.3761608},
}
@misc{gao2021scaling,
title={Scaling Deep Contrastive Learning Batch Size under Memory Limited Setup},
author={Luyu Gao and Yunyi Zhang and Jiawei Han and Jamie Callan},
year={2021},
eprint={2101.06983},
archivePrefix={arXiv},
primaryClass={cs.LG}
}