Downloads · 30 days
6
9% of all-time downloads
jchiang11/engram-retrieval-v0
engram-retrieval-v0 is a text ranking model from jchiang11. Use it for the text ranking task on the model card, and read the license before you ship it in a product. It is set up for sentence-transformers. The card lists the license as apache-2.0.
Cross-encoder used by the Engram knowledge-object (KO) retrieval pipeline. Given a user query and a candidate KO body, scores how well the KO answers the query. Used as the first-pass ranker before the more expensive…
Downloads · 30 days
6
9% of all-time downloads
All-time downloads
65
Public
Parameters
22.7M
90.9 MB on disk
Likes
0
Public
Click a slice to open those files.
.safetensors90.9 MB · 99%
From the Hugging Face model README
Cross-encoder used by the Engram
knowledge-object (KO) retrieval pipeline. Given a user query and a
candidate KO body, scores how well the KO answers the query. Used as
the first-pass ranker before the more expensive engram-xenc-v0
re-ranker.
sidecar/gating_cross_encoder.py and the
tools/session7_finetune.py evaluation harness.scripts/fetch_models.sh in the Engram repo
(idempotent post-clone install step).python tools/session7_finetune.py
(~5 minutes on M4 Max). Inputs are data/session7_test_set.json
(244 labels, 243 used after reject-exclusion) +
wiki/ (KO bodies resolved via WikiFileStore at train time).
Deterministic seed (SEED=7), stratified 80/20 split.ko.content from wiki/ at
train time (not snapshotted into the test set). All 243 ko_ids
resolve in the current wiki/ as of 2026-06-25; future wiki
edits could silently change re-train results. Snapshotting is
tracked as a follow-up in docs/decisions/2026-06-25-model-distribution.md.Apache 2.0. Derived from cross-encoder/ms-marco-MiniLM-L6-v2
(Apache 2.0).
This is a Cross Encoder model finetuned from cross-encoder/ms-marco-MiniLM-L6-v2 using the sentence-transformers library. It computes scores for pairs of texts, which can be used for text reranking and semantic search.
CrossEncoder(
(0): Transformer({'transformer_task': 'sequence-classification', 'modality_config': {'text': {'method': 'forward', 'method_output_name': 'logits'}}, 'module_output_name': 'scores', 'architecture': 'BertForSequenceClassification'})
)
First install the Sentence Transformers library:
pip install -U sentence-transformers
Then you can load this model and run inference.
from sentence_transformers import CrossEncoder
# Download from the 🤗 Hub
model = CrossEncoder("cross_encoder_model_id")
# Get scores for pairs of inputs
pairs = [
['How might AI automation affect the way developers work?', '> **Type:** constraint — A limitation, dependency, or hard requirement. \n> **Domain:** engineering \n> **Scope:** team \n> **Confidence:** 60% \n> **Created:** 2026-04-26 23:23 UTC by dave\n\nStart the session by reading init.sh . Summarizing four common failure modes and solutions in long-running AI agents.'],
['Is there a risk that our technical depth declines if we lean too hard on AI assistants?', '> **Type:** constraint — A limitation, dependency, or hard requirement. \n> **Domain:** engineering \n> **Scope:** team \n> **Confidence:** 70% \n> **Created:** 2026-04-26 23:23 UTC by dave\n\nSome engineers worry that relying on AI will lead to a loss of deeper technical skills.'],
['What are the key dates and deliverables we need to hit during our quarterly financial close?', '> **Type:** skill — A procedure, how-to, or repeatable technical process. \n> **Domain:** finance \n> **Scope:** restricted \n> **Confidence:** 90% \n> **Created:** 2026-04-24 22:27 UTC by erin\n\nQuarterly close sequence: revenue recognition review by day 3, AR aging reconciliation by day 5, accrual entries locked day 7, management pack draft day 10, board-ready numbers day 14.'],
['How do we test whether our coding agents are robust enough for production?', '> **Type:** question — An open question that has not yet been answered. \n> **Domain:** engineering \n> **Scope:** org \n> **Confidence:** 70% \n> **Created:** 2026-04-26 23:23 UTC by dave\n\nMost notably, it’s still unclear whether a single, general-purpose coding agent performs best across contexts, or if better performance can be achieved through a multi-agent architecture.'],
['What are the main concerns engineers have about AI replacing their skills?', '> **Type:** policy — An organisational rule or standard that must be followed. \n> **Domain:** engineering \n> **Scope:** org \n> **Confidence:** 90% \n> **Created:** 2026-04-26 23:23 UTC by dave\n\nThe research highlights the need for guidelines and frameworks to support the adoption of AI in software development.'],
]
scores = model.predict(pairs)
print(scores)
# [-6.3638 2.7978 0.6201 -0.0405 -2.6479]
# Or rank different texts based on similarity to a single text
ranks = model.rank(
'How might AI automation affect the way developers work?',
[
'> **Type:** constraint — A limitation, dependency, or hard requirement. \n> **Domain:** engineering \n> **Scope:** team \n> **Confidence:** 60% \n> **Created:** 2026-04-26 23:23 UTC by dave\n\nStart the session by reading init.sh . Summarizing four common failure modes and solutions in long-running AI agents.',
'> **Type:** constraint — A limitation, dependency, or hard requirement. \n> **Domain:** engineering \n> **Scope:** team \n> **Confidence:** 70% \n> **Created:** 2026-04-26 23:23 UTC by dave\n\nSome engineers worry that relying on AI will lead to a loss of deeper technical skills.',
'> **Type:** skill — A procedure, how-to, or repeatable technical process. \n> **Domain:** finance \n> **Scope:** restricted \n> **Confidence:** 90% \n> **Created:** 2026-04-24 22:27 UTC by erin\n\nQuarterly close sequence: revenue recognition review by day 3, AR aging reconciliation by day 5, accrual entries locked day 7, management pack draft day 10, board-ready numbers day 14.',
'> **Type:** question — An open question that has not yet been answered. \n> **Domain:** engineering \n> **Scope:** org \n> **Confidence:** 70% \n> **Created:** 2026-04-26 23:23 UTC by dave\n\nMost notably, it’s still unclear whether a single, general-purpose coding agent performs best across contexts, or if better performance can be achieved through a multi-agent architecture.',
'> **Type:** policy — An organisational rule or standard that must be followed. \n> **Domain:** engineering \n> **Scope:** org \n> **Confidence:** 90% \n> **Created:** 2026-04-26 23:23 UTC by dave\n\nThe research highlights the need for guidelines and frameworks to support the adoption of AI in software development.',
]
)
# [{'corpus_id': ..., 'score': ...}, {'corpus_id': ..., 'score': ...}, ...]
<!--
### Direct Usage (Transformers)
<details><summary>Click to see the direct usage in Transformers</summary>
</details>
-->
<!--
### Downstream Usage (Sentence Transformers)
You can finetune this model on your own dataset.
<details><summary>Click to expand</summary>
</details>
-->
<!--
### Out-of-Scope Use
*List how the model may foreseeably be misused and address what users ought not to do with the model.*
-->
<!--
## Bias, Risks and Limitations
*What are the known or foreseeable issues stemming from this model? You could also flag here known failure cases or weaknesses of the model.*
-->
<!--
### Recommendations
*What are recommendations with respect to the foreseeable issues? For example, filtering explicit content.*
-->
| sentence_0 | sentence_1 | label | |
|---|---|---|---|
| type | string | string | float |
| details | <ul><li>min: 9 tokens</li><li>mean: 17.73 tokens</li><li>max: 34 tokens</li></ul> | <ul><li>min: 65 tokens</li><li>mean: 117.34 tokens</li><li>max: 198 tokens</li></ul> | <ul><li>min: 0.0</li><li>mean: 0.61</li><li>max: 1.0</li></ul> |
| sentence_0 | sentence_1 | label |
|---|---|---|
| <code>How might AI automation affect the way developers work?</code> | <code>> Type: constraint — A limitation, dependency, or hard requirement. <br>> Domain: engineering <br>> Scope: team <br>> Confidence: 60% <br>> Created: 2026-04-26 23:23 UTC by dave<br><br>Start the session by reading init.sh . Summarizing four common failure modes and solutions in long-running AI agents.</code> | <code>0.0</code> |
| <code>Is there a risk that our technical depth declines if we lean too hard on AI assistants?</code> | <code>> Type: constraint — A limitation, dependency, or hard requirement. <br>> Domain: engineering <br>> Scope: team <br>> Confidence: 70% <br>> Created: 2026-04-26 23:23 UTC by dave<br><br>Some engineers worry that relying on AI will lead to a loss of deeper technical skills.</code> | <code>1.0</code> |
| <code>What are the key dates and deliverables we need to hit during our quarterly financial close?</code> | <code>> Type: skill — A procedure, how-to, or repeatable technical process. <br>> Domain: finance <br>> Scope: restricted <br>> Confidence: 90% <br>> Created: 2026-04-24 22:27 UTC by erin<br><br>Quarterly close sequence: revenue recognition review by day 3, AR aging reconciliation by day 5, accrual entries locked day 7, management pack draft day 10, board-ready numbers day 14.</code> | <code>0.0</code> |
{
"activation_fn": "torch.nn.modules.linear.Identity",
"pos_weight": null
}
per_device_train_batch_size: 16num_train_epochs: 1per_device_eval_batch_size: 16per_device_train_batch_size: 16num_train_epochs: 1max_steps: -1learning_rate: 5e-05lr_scheduler_type: linearlr_scheduler_kwargs: Nonewarmup_steps: 0optim: adamw_torch_fusedoptim_args: Noneweight_decay: 0.0adam_beta1: 0.9adam_beta2: 0.999adam_epsilon: 1e-08optim_target_modules: Nonegradient_accumulation_steps: 1average_tokens_across_devices: Truemax_grad_norm: 1label_smoothing_factor: 0.0bf16: Falsefp16: Falsebf16_full_eval: Falsefp16_full_eval: Falsetf32: Nonegradient_checkpointing: Falsegradient_checkpointing_kwargs: Nonetorch_compile: Falsetorch_compile_backend: Nonetorch_compile_mode: Noneuse_liger_kernel: Falseliger_kernel_config: Noneuse_cache: Falseneftune_noise_alpha: Nonetorch_empty_cache_steps: Noneauto_find_batch_size: Falselog_on_each_node: Truelogging_nan_inf_filter: Trueinclude_num_input_tokens_seen: nolog_level: passivelog_level_replica: warningdisable_tqdm: Falseproject: huggingfacetrackio_space_id: Nonetrackio_bucket_id: Nonetrackio_static_space_id: Noneper_device_eval_batch_size: 16prediction_loss_only: Trueeval_on_start: Falseeval_do_concat_batches: Trueeval_use_gather_object: Falseeval_accumulation_steps: Noneinclude_for_metrics: []batch_eval_metrics: Falsesave_only_model: Falsesave_on_each_node: Falseenable_jit_checkpoint: Falsepush_to_hub: Falsehub_private_repo: Nonehub_model_id: Nonehub_strategy: every_savehub_always_push: Falsehub_revision: Noneload_best_model_at_end: Falseignore_data_skip: Falserestore_callback_states_from_checkpoint: Falsefull_determinism: Falseseed: 42data_seed: Noneuse_cpu: Falseaccelerator_config: {'split_batches': False, 'dispatch_batches': None, 'even_batches': True, 'use_seedable_sampler': True, 'non_blocking': False, 'gradient_accumulation_kwargs': None}parallelism_config: Nonedataloader_drop_last: Falsedataloader_num_workers: 0dataloader_pin_memory: Truedataloader_persistent_workers: Falsedataloader_prefetch_factor: Noneremove_unused_columns: Truelabel_names: Nonetrain_sampling_strategy: randomlength_column_name: lengthddp_find_unused_parameters: Noneddp_bucket_cap_mb: Noneddp_broadcast_buffers: Falseddp_static_graph: Noneddp_backend: Noneddp_timeout: 1800fsdp: []fsdp_config: {'min_num_params': 0, 'xla': False, 'xla_fsdp_v2': False, 'xla_fsdp_grad_ckpt': False}deepspeed: Nonedebug: []skip_memory_metrics: Truedo_predict: Falseresume_from_checkpoint: Nonewarmup_ratio: Nonelocal_rank: -1prompts: Nonebatch_sampler: batch_samplermulti_dataset_batch_sampler: proportionalrouter_mapping: {}learning_rate_mapping: {}@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",
}
<!--
## Glossary
*Clearly define terms in order to be accessible across audiences.*
-->
<!--
## Model Card Authors
*Lists the people who create the model card, providing recognition and accountability for the detailed work that goes into its construction.*
-->
<!--
## Model Card Contact
*Provides a way for people who have updates to the Model Card, suggestions, or questions, to contact the Model Card authors.*
-->