初始化项目,由ModelHub XC社区提供模型
Model: ContextualAI/ctxl-rerank-v2-instruct-multilingual-1b Source: Original Platform
This commit is contained in:
37
.gitattributes
vendored
Normal file
37
.gitattributes
vendored
Normal file
@@ -0,0 +1,37 @@
|
||||
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||
*.arrow filter=lfs diff=lfs merge=lfs -text
|
||||
*.bin filter=lfs diff=lfs merge=lfs -text
|
||||
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.ckpt filter=lfs diff=lfs merge=lfs -text
|
||||
*.ftz filter=lfs diff=lfs merge=lfs -text
|
||||
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||
*.h5 filter=lfs diff=lfs merge=lfs -text
|
||||
*.joblib filter=lfs diff=lfs merge=lfs -text
|
||||
*.lfs.* filter=lfs diff=lfs merge=lfs -text
|
||||
*.mlmodel filter=lfs diff=lfs merge=lfs -text
|
||||
*.model filter=lfs diff=lfs merge=lfs -text
|
||||
*.msgpack filter=lfs diff=lfs merge=lfs -text
|
||||
*.npy filter=lfs diff=lfs merge=lfs -text
|
||||
*.npz filter=lfs diff=lfs merge=lfs -text
|
||||
*.onnx filter=lfs diff=lfs merge=lfs -text
|
||||
*.ot filter=lfs diff=lfs merge=lfs -text
|
||||
*.parquet filter=lfs diff=lfs merge=lfs -text
|
||||
*.pb filter=lfs diff=lfs merge=lfs -text
|
||||
*.pickle filter=lfs diff=lfs merge=lfs -text
|
||||
*.pkl filter=lfs diff=lfs merge=lfs -text
|
||||
*.pt filter=lfs diff=lfs merge=lfs -text
|
||||
*.pth filter=lfs diff=lfs merge=lfs -text
|
||||
*.rar filter=lfs diff=lfs merge=lfs -text
|
||||
*.safetensors filter=lfs diff=lfs merge=lfs -text
|
||||
saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
||||
*.tar.* filter=lfs diff=lfs merge=lfs -text
|
||||
*.tar filter=lfs diff=lfs merge=lfs -text
|
||||
*.tflite filter=lfs diff=lfs merge=lfs -text
|
||||
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||
*.wasm filter=lfs diff=lfs merge=lfs -text
|
||||
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||
*.zst filter=lfs diff=lfs merge=lfs -text
|
||||
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
||||
main_benchmark.png filter=lfs diff=lfs merge=lfs -text
|
||||
tokenizer.json filter=lfs diff=lfs merge=lfs -text
|
||||
5
1_LogitScore/config.json
Normal file
5
1_LogitScore/config.json
Normal file
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"true_token_id": 0,
|
||||
"false_token_id": null,
|
||||
"module_input_name": "causal_logits"
|
||||
}
|
||||
BIN
Contextual_AI_Brand_Mark_Dark.png
Normal file
BIN
Contextual_AI_Brand_Mark_Dark.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 14 KiB |
290
README.md
Normal file
290
README.md
Normal file
@@ -0,0 +1,290 @@
|
||||
---
|
||||
library_name: transformers
|
||||
license: cc-by-nc-sa-4.0
|
||||
pipeline_tag: text-ranking
|
||||
tags:
|
||||
- sentence-transformers
|
||||
- cross-encoder
|
||||
- reranker
|
||||
---
|
||||
|
||||
<div align="center">
|
||||
|
||||
# Contextual AI Reranker v2 1B
|
||||
|
||||
<img src="Contextual_AI_Brand_Mark_Dark.png" width="10%" alt="Contextual_AI"/>
|
||||
|
||||
[](https://contextual.ai/blog/rerank-v2)
|
||||
[](https://huggingface.co/collections/ContextualAI/contextual-ai-reranker-v2)
|
||||
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
## Highlights
|
||||
|
||||
Contextual AI's reranker is the **first instruction-following reranker** capable of handling retrieval conflicts and ranking with custom instructions (e.g., prioritizing recent information). It achieves state-of-the-art performance on BEIR and sits on the cost/performance Pareto frontier across:
|
||||
|
||||
- Instruction following
|
||||
- Question answering
|
||||
- Multilinguality (100+ languages)
|
||||
- Product search & recommendation
|
||||
- Real-world use cases
|
||||
|
||||
<p align="center">
|
||||
<img src="main_benchmark.png" width="1200"/>
|
||||
<p>
|
||||
|
||||
For detailed benchmarks, see our [blog post](https://contextual.ai/blog/rerank-v2).
|
||||
|
||||
## Overview
|
||||
|
||||
- **Model Type**: Text Reranking
|
||||
- **Supported Languages**: 100+
|
||||
- **Parameters**: 1B
|
||||
- **Context Length**: up to 32K
|
||||
|
||||
## When to Use This Model
|
||||
|
||||
Use this reranker when you need to:
|
||||
- Re-rank retrieved documents with custom instructions
|
||||
- Handle conflicting information in retrieval results
|
||||
- Prioritize documents by recency or other criteria
|
||||
- Support multilingual search (100+ languages)
|
||||
- Process long contexts (up to 32K tokens)
|
||||
|
||||
## Quickstart
|
||||
|
||||
Each path below uses the same example inputs:
|
||||
|
||||
```
|
||||
Query: What are the health benefits of exercise?
|
||||
Instruction: Prioritize recent medical research
|
||||
Documents:
|
||||
- Regular exercise reduces risk of heart disease and improves mental health.
|
||||
- A 2024 study shows exercise enhances cognitive function in older adults.
|
||||
- Ancient Greeks valued physical fitness for military training.
|
||||
```
|
||||
|
||||
**Expected Output:**
|
||||
```
|
||||
Score: 0.5039 | Doc: A 2024 study shows exercise enhances cognitive function in older adults.
|
||||
Score: -0.8398 | Doc: Regular exercise reduces risk of heart disease and improves mental health.
|
||||
Score: -9.3125 | Doc: Ancient Greeks valued physical fitness for military training.
|
||||
```
|
||||
|
||||
### Using Sentence Transformers
|
||||
|
||||
Install Sentence Transformers:
|
||||
```bash
|
||||
pip install sentence_transformers
|
||||
```
|
||||
|
||||
```python
|
||||
import torch
|
||||
from sentence_transformers import CrossEncoder
|
||||
|
||||
model = CrossEncoder("ContextualAI/ctxl-rerank-v2-instruct-multilingual-1b", model_kwargs={"dtype": torch.bfloat16})
|
||||
|
||||
query = "What are the health benefits of exercise?"
|
||||
instruction = "Prioritize recent medical research"
|
||||
documents = [
|
||||
"Regular exercise reduces risk of heart disease and improves mental health.",
|
||||
"A 2024 study shows exercise enhances cognitive function in older adults.",
|
||||
"Ancient Greeks valued physical fitness for military training.",
|
||||
]
|
||||
|
||||
pairs = [(query, doc) for doc in documents]
|
||||
scores = model.predict(pairs, prompt=instruction)
|
||||
print(scores)
|
||||
# [-0.8515625 0.50390625 -9.375 ]
|
||||
|
||||
rankings = model.rank(query, documents, prompt=instruction)
|
||||
print(rankings)
|
||||
# [{'corpus_id': 1, 'score': np.float32(0.50390625)}, {'corpus_id': 0, 'score': np.float32(-0.8515625)}, {'corpus_id': 2, 'score': np.float32(-9.375)}]
|
||||
```
|
||||
|
||||
The `prompt` argument is optional, you can omit it to score pairs without any custom instruction. Scores are the raw bfloat16 logits at token id 0 at the final position (matching the `Transformers` path below), so higher means more relevant.
|
||||
|
||||
### vLLM Usage (Recommended for Production)
|
||||
|
||||
Requires `vllm==0.10.0` for NVFP4 or `vllm>=0.8.5` for BF16.
|
||||
|
||||
```python
|
||||
import os
|
||||
os.environ['VLLM_USE_V1'] = '0' # v1 engine doesn't support logits processor yet
|
||||
|
||||
import torch
|
||||
from vllm import LLM, SamplingParams
|
||||
|
||||
|
||||
def logits_processor(_, scores):
|
||||
"""Custom logits processor for vLLM reranking."""
|
||||
index = scores[0].view(torch.uint16)
|
||||
scores = torch.full_like(scores, float("-inf"))
|
||||
scores[index] = 1
|
||||
return scores
|
||||
|
||||
|
||||
def format_prompts(query: str, instruction: str, documents: list[str]) -> list[str]:
|
||||
"""Format query and documents into prompts for reranking."""
|
||||
if instruction:
|
||||
instruction = f" {instruction}"
|
||||
prompts = []
|
||||
for doc in documents:
|
||||
prompt = f"Check whether a given document contains information helpful to answer the query.\n<Document> {doc}\n<Query> {query}{instruction} ??"
|
||||
prompts.append(prompt)
|
||||
return prompts
|
||||
|
||||
|
||||
def infer_w_vllm(model_path: str, query: str, instruction: str, documents: list[str]):
|
||||
model = LLM(
|
||||
model=model_path,
|
||||
gpu_memory_utilization=0.85,
|
||||
max_model_len=8192,
|
||||
dtype="bfloat16",
|
||||
max_logprobs=2,
|
||||
max_num_batched_tokens=262144,
|
||||
)
|
||||
sampling_params = SamplingParams(
|
||||
temperature=0,
|
||||
max_tokens=1,
|
||||
logits_processors=[logits_processor]
|
||||
)
|
||||
prompts = format_prompts(query, instruction, documents)
|
||||
|
||||
outputs = model.generate(prompts, sampling_params, use_tqdm=False)
|
||||
|
||||
# Extract scores and create results
|
||||
results = []
|
||||
for i, output in enumerate(outputs):
|
||||
score = (
|
||||
torch.tensor([output.outputs[0].token_ids[0]], dtype=torch.uint16)
|
||||
.view(torch.bfloat16)
|
||||
.item()
|
||||
)
|
||||
results.append((score, i, documents[i]))
|
||||
|
||||
# Sort by score (descending)
|
||||
results = sorted(results, key=lambda x: x[0], reverse=True)
|
||||
|
||||
print(f"Query: {query}")
|
||||
print(f"Instruction: {instruction}")
|
||||
for score, doc_id, doc in results:
|
||||
print(f"Score: {score:.4f} | Doc: {doc}")
|
||||
|
||||
|
||||
# Example usage
|
||||
if __name__ == "__main__":
|
||||
model_path = "ContextualAI/ctxl-rerank-v2-instruct-multilingual-1b"
|
||||
query = "What are the health benefits of exercise?"
|
||||
instruction = "Prioritize recent medical research"
|
||||
documents = [
|
||||
"Regular exercise reduces risk of heart disease and improves mental health.",
|
||||
"A 2024 study shows exercise enhances cognitive function in older adults.",
|
||||
"Ancient Greeks valued physical fitness for military training."
|
||||
]
|
||||
|
||||
infer_w_vllm(model_path, query, instruction, documents)
|
||||
```
|
||||
|
||||
|
||||
### Transformers Usage (Simpler Setup)
|
||||
|
||||
Requires `transformers>=4.51.0` for BF16. Not supported for NVFP4.
|
||||
|
||||
```python
|
||||
import torch
|
||||
from transformers import AutoTokenizer, AutoModelForCausalLM
|
||||
|
||||
|
||||
def format_prompts(query: str, instruction: str, documents: list[str]) -> list[str]:
|
||||
"""Format query and documents into prompts for reranking."""
|
||||
if instruction:
|
||||
instruction = f" {instruction}"
|
||||
prompts = []
|
||||
for doc in documents:
|
||||
prompt = f"Check whether a given document contains information helpful to answer the query.\n<Document> {doc}\n<Query> {query}{instruction} ??"
|
||||
prompts.append(prompt)
|
||||
return prompts
|
||||
|
||||
|
||||
def infer_w_hf(model_path: str, query: str, instruction: str, documents: list[str]):
|
||||
device = "cuda" if torch.cuda.is_available() else "cpu"
|
||||
dtype = torch.bfloat16 if torch.cuda.is_available() else torch.float32
|
||||
|
||||
tokenizer = AutoTokenizer.from_pretrained(model_path, use_fast=True)
|
||||
if tokenizer.pad_token is None:
|
||||
tokenizer.pad_token = tokenizer.eos_token
|
||||
tokenizer.padding_side = "left" # so -1 is the real last token for all prompts
|
||||
|
||||
model = AutoModelForCausalLM.from_pretrained(model_path, torch_dtype=dtype).to(device)
|
||||
model.eval()
|
||||
|
||||
prompts = format_prompts(query, instruction, documents)
|
||||
enc = tokenizer(
|
||||
prompts,
|
||||
return_tensors="pt",
|
||||
padding=True,
|
||||
truncation=True,
|
||||
)
|
||||
input_ids = enc["input_ids"].to(device)
|
||||
attention_mask = enc["attention_mask"].to(device)
|
||||
|
||||
with torch.no_grad():
|
||||
out = model(input_ids=input_ids, attention_mask=attention_mask)
|
||||
|
||||
next_logits = out.logits[:, -1, :] # [batch, vocab]
|
||||
|
||||
scores_bf16 = next_logits[:, 0].to(torch.bfloat16)
|
||||
scores = scores_bf16.float().tolist()
|
||||
|
||||
# Sort by score (descending)
|
||||
results = sorted([(s, i, documents[i]) for i, s in enumerate(scores)], key=lambda x: x[0], reverse=True)
|
||||
|
||||
print(f"Query: {query}")
|
||||
print(f"Instruction: {instruction}")
|
||||
for score, doc_id, doc in results:
|
||||
print(f"Score: {score:.4f} | Doc: {doc}")
|
||||
"""
|
||||
Query: What are the health benefits of exercise?
|
||||
Instruction: Prioritize recent medical research
|
||||
Score: 0.5039 | Doc: A 2024 study shows exercise enhances cognitive function in older adults.
|
||||
Score: -0.8516 | Doc: Regular exercise reduces risk of heart disease and improves mental health.
|
||||
Score: -9.3750 | Doc: Ancient Greeks valued physical fitness for military training.
|
||||
"""
|
||||
|
||||
# Example usage
|
||||
if __name__ == "__main__":
|
||||
model_path = "ContextualAI/ctxl-rerank-v2-instruct-multilingual-1b"
|
||||
query = "What are the health benefits of exercise?"
|
||||
instruction = "Prioritize recent medical research"
|
||||
documents = [
|
||||
"Regular exercise reduces risk of heart disease and improves mental health.",
|
||||
"A 2024 study shows exercise enhances cognitive function in older adults.",
|
||||
"Ancient Greeks valued physical fitness for military training."
|
||||
]
|
||||
|
||||
infer_w_hf(model_path, query, instruction, documents)
|
||||
```
|
||||
|
||||
## Citation
|
||||
|
||||
If you use this model, please cite:
|
||||
|
||||
```bibtex
|
||||
@misc{ctxl_rerank_v2_instruct_multilingual,
|
||||
title={Contextual AI Reranker v2},
|
||||
author={Halal, George and Agrawal, Sheshansh},
|
||||
year={2025},
|
||||
url={https://contextual.ai/blog/rerank-v2},
|
||||
}
|
||||
```
|
||||
|
||||
## License
|
||||
|
||||
Creative Commons Attribution Non Commercial Share Alike 4.0 (cc-by-nc-sa-4.0)
|
||||
|
||||
## Contact
|
||||
|
||||
For questions or issues, please open an issue on the model repository.
|
||||
295
added_tokens.json
Normal file
295
added_tokens.json
Normal file
@@ -0,0 +1,295 @@
|
||||
{
|
||||
"</think>": 151668,
|
||||
"</tool_call>": 151658,
|
||||
"</tool_response>": 151666,
|
||||
"<fake_token_0>": 151669,
|
||||
"<fake_token_100>": 151769,
|
||||
"<fake_token_101>": 151770,
|
||||
"<fake_token_102>": 151771,
|
||||
"<fake_token_103>": 151772,
|
||||
"<fake_token_104>": 151773,
|
||||
"<fake_token_105>": 151774,
|
||||
"<fake_token_106>": 151775,
|
||||
"<fake_token_107>": 151776,
|
||||
"<fake_token_108>": 151777,
|
||||
"<fake_token_109>": 151778,
|
||||
"<fake_token_10>": 151679,
|
||||
"<fake_token_110>": 151779,
|
||||
"<fake_token_111>": 151780,
|
||||
"<fake_token_112>": 151781,
|
||||
"<fake_token_113>": 151782,
|
||||
"<fake_token_114>": 151783,
|
||||
"<fake_token_115>": 151784,
|
||||
"<fake_token_116>": 151785,
|
||||
"<fake_token_117>": 151786,
|
||||
"<fake_token_118>": 151787,
|
||||
"<fake_token_119>": 151788,
|
||||
"<fake_token_11>": 151680,
|
||||
"<fake_token_120>": 151789,
|
||||
"<fake_token_121>": 151790,
|
||||
"<fake_token_122>": 151791,
|
||||
"<fake_token_123>": 151792,
|
||||
"<fake_token_124>": 151793,
|
||||
"<fake_token_125>": 151794,
|
||||
"<fake_token_126>": 151795,
|
||||
"<fake_token_127>": 151796,
|
||||
"<fake_token_128>": 151797,
|
||||
"<fake_token_129>": 151798,
|
||||
"<fake_token_12>": 151681,
|
||||
"<fake_token_130>": 151799,
|
||||
"<fake_token_131>": 151800,
|
||||
"<fake_token_132>": 151801,
|
||||
"<fake_token_133>": 151802,
|
||||
"<fake_token_134>": 151803,
|
||||
"<fake_token_135>": 151804,
|
||||
"<fake_token_136>": 151805,
|
||||
"<fake_token_137>": 151806,
|
||||
"<fake_token_138>": 151807,
|
||||
"<fake_token_139>": 151808,
|
||||
"<fake_token_13>": 151682,
|
||||
"<fake_token_140>": 151809,
|
||||
"<fake_token_141>": 151810,
|
||||
"<fake_token_142>": 151811,
|
||||
"<fake_token_143>": 151812,
|
||||
"<fake_token_144>": 151813,
|
||||
"<fake_token_145>": 151814,
|
||||
"<fake_token_146>": 151815,
|
||||
"<fake_token_147>": 151816,
|
||||
"<fake_token_148>": 151817,
|
||||
"<fake_token_149>": 151818,
|
||||
"<fake_token_14>": 151683,
|
||||
"<fake_token_150>": 151819,
|
||||
"<fake_token_151>": 151820,
|
||||
"<fake_token_152>": 151821,
|
||||
"<fake_token_153>": 151822,
|
||||
"<fake_token_154>": 151823,
|
||||
"<fake_token_155>": 151824,
|
||||
"<fake_token_156>": 151825,
|
||||
"<fake_token_157>": 151826,
|
||||
"<fake_token_158>": 151827,
|
||||
"<fake_token_159>": 151828,
|
||||
"<fake_token_15>": 151684,
|
||||
"<fake_token_160>": 151829,
|
||||
"<fake_token_161>": 151830,
|
||||
"<fake_token_162>": 151831,
|
||||
"<fake_token_163>": 151832,
|
||||
"<fake_token_164>": 151833,
|
||||
"<fake_token_165>": 151834,
|
||||
"<fake_token_166>": 151835,
|
||||
"<fake_token_167>": 151836,
|
||||
"<fake_token_168>": 151837,
|
||||
"<fake_token_169>": 151838,
|
||||
"<fake_token_16>": 151685,
|
||||
"<fake_token_170>": 151839,
|
||||
"<fake_token_171>": 151840,
|
||||
"<fake_token_172>": 151841,
|
||||
"<fake_token_173>": 151842,
|
||||
"<fake_token_174>": 151843,
|
||||
"<fake_token_175>": 151844,
|
||||
"<fake_token_176>": 151845,
|
||||
"<fake_token_177>": 151846,
|
||||
"<fake_token_178>": 151847,
|
||||
"<fake_token_179>": 151848,
|
||||
"<fake_token_17>": 151686,
|
||||
"<fake_token_180>": 151849,
|
||||
"<fake_token_181>": 151850,
|
||||
"<fake_token_182>": 151851,
|
||||
"<fake_token_183>": 151852,
|
||||
"<fake_token_184>": 151853,
|
||||
"<fake_token_185>": 151854,
|
||||
"<fake_token_186>": 151855,
|
||||
"<fake_token_187>": 151856,
|
||||
"<fake_token_188>": 151857,
|
||||
"<fake_token_189>": 151858,
|
||||
"<fake_token_18>": 151687,
|
||||
"<fake_token_190>": 151859,
|
||||
"<fake_token_191>": 151860,
|
||||
"<fake_token_192>": 151861,
|
||||
"<fake_token_193>": 151862,
|
||||
"<fake_token_194>": 151863,
|
||||
"<fake_token_195>": 151864,
|
||||
"<fake_token_196>": 151865,
|
||||
"<fake_token_197>": 151866,
|
||||
"<fake_token_198>": 151867,
|
||||
"<fake_token_199>": 151868,
|
||||
"<fake_token_19>": 151688,
|
||||
"<fake_token_1>": 151670,
|
||||
"<fake_token_200>": 151869,
|
||||
"<fake_token_201>": 151870,
|
||||
"<fake_token_202>": 151871,
|
||||
"<fake_token_203>": 151872,
|
||||
"<fake_token_204>": 151873,
|
||||
"<fake_token_205>": 151874,
|
||||
"<fake_token_206>": 151875,
|
||||
"<fake_token_207>": 151876,
|
||||
"<fake_token_208>": 151877,
|
||||
"<fake_token_209>": 151878,
|
||||
"<fake_token_20>": 151689,
|
||||
"<fake_token_210>": 151879,
|
||||
"<fake_token_211>": 151880,
|
||||
"<fake_token_212>": 151881,
|
||||
"<fake_token_213>": 151882,
|
||||
"<fake_token_214>": 151883,
|
||||
"<fake_token_215>": 151884,
|
||||
"<fake_token_216>": 151885,
|
||||
"<fake_token_217>": 151886,
|
||||
"<fake_token_218>": 151887,
|
||||
"<fake_token_219>": 151888,
|
||||
"<fake_token_21>": 151690,
|
||||
"<fake_token_220>": 151889,
|
||||
"<fake_token_221>": 151890,
|
||||
"<fake_token_222>": 151891,
|
||||
"<fake_token_223>": 151892,
|
||||
"<fake_token_224>": 151893,
|
||||
"<fake_token_225>": 151894,
|
||||
"<fake_token_226>": 151895,
|
||||
"<fake_token_227>": 151896,
|
||||
"<fake_token_228>": 151897,
|
||||
"<fake_token_229>": 151898,
|
||||
"<fake_token_22>": 151691,
|
||||
"<fake_token_230>": 151899,
|
||||
"<fake_token_231>": 151900,
|
||||
"<fake_token_232>": 151901,
|
||||
"<fake_token_233>": 151902,
|
||||
"<fake_token_234>": 151903,
|
||||
"<fake_token_235>": 151904,
|
||||
"<fake_token_236>": 151905,
|
||||
"<fake_token_237>": 151906,
|
||||
"<fake_token_238>": 151907,
|
||||
"<fake_token_239>": 151908,
|
||||
"<fake_token_23>": 151692,
|
||||
"<fake_token_240>": 151909,
|
||||
"<fake_token_241>": 151910,
|
||||
"<fake_token_242>": 151911,
|
||||
"<fake_token_243>": 151912,
|
||||
"<fake_token_244>": 151913,
|
||||
"<fake_token_245>": 151914,
|
||||
"<fake_token_246>": 151915,
|
||||
"<fake_token_247>": 151916,
|
||||
"<fake_token_248>": 151917,
|
||||
"<fake_token_249>": 151918,
|
||||
"<fake_token_24>": 151693,
|
||||
"<fake_token_250>": 151919,
|
||||
"<fake_token_251>": 151920,
|
||||
"<fake_token_252>": 151921,
|
||||
"<fake_token_253>": 151922,
|
||||
"<fake_token_254>": 151923,
|
||||
"<fake_token_255>": 151924,
|
||||
"<fake_token_256>": 151925,
|
||||
"<fake_token_257>": 151926,
|
||||
"<fake_token_258>": 151927,
|
||||
"<fake_token_259>": 151928,
|
||||
"<fake_token_25>": 151694,
|
||||
"<fake_token_260>": 151929,
|
||||
"<fake_token_261>": 151930,
|
||||
"<fake_token_262>": 151931,
|
||||
"<fake_token_263>": 151932,
|
||||
"<fake_token_264>": 151933,
|
||||
"<fake_token_265>": 151934,
|
||||
"<fake_token_266>": 151935,
|
||||
"<fake_token_26>": 151695,
|
||||
"<fake_token_27>": 151696,
|
||||
"<fake_token_28>": 151697,
|
||||
"<fake_token_29>": 151698,
|
||||
"<fake_token_2>": 151671,
|
||||
"<fake_token_30>": 151699,
|
||||
"<fake_token_31>": 151700,
|
||||
"<fake_token_32>": 151701,
|
||||
"<fake_token_33>": 151702,
|
||||
"<fake_token_34>": 151703,
|
||||
"<fake_token_35>": 151704,
|
||||
"<fake_token_36>": 151705,
|
||||
"<fake_token_37>": 151706,
|
||||
"<fake_token_38>": 151707,
|
||||
"<fake_token_39>": 151708,
|
||||
"<fake_token_3>": 151672,
|
||||
"<fake_token_40>": 151709,
|
||||
"<fake_token_41>": 151710,
|
||||
"<fake_token_42>": 151711,
|
||||
"<fake_token_43>": 151712,
|
||||
"<fake_token_44>": 151713,
|
||||
"<fake_token_45>": 151714,
|
||||
"<fake_token_46>": 151715,
|
||||
"<fake_token_47>": 151716,
|
||||
"<fake_token_48>": 151717,
|
||||
"<fake_token_49>": 151718,
|
||||
"<fake_token_4>": 151673,
|
||||
"<fake_token_50>": 151719,
|
||||
"<fake_token_51>": 151720,
|
||||
"<fake_token_52>": 151721,
|
||||
"<fake_token_53>": 151722,
|
||||
"<fake_token_54>": 151723,
|
||||
"<fake_token_55>": 151724,
|
||||
"<fake_token_56>": 151725,
|
||||
"<fake_token_57>": 151726,
|
||||
"<fake_token_58>": 151727,
|
||||
"<fake_token_59>": 151728,
|
||||
"<fake_token_5>": 151674,
|
||||
"<fake_token_60>": 151729,
|
||||
"<fake_token_61>": 151730,
|
||||
"<fake_token_62>": 151731,
|
||||
"<fake_token_63>": 151732,
|
||||
"<fake_token_64>": 151733,
|
||||
"<fake_token_65>": 151734,
|
||||
"<fake_token_66>": 151735,
|
||||
"<fake_token_67>": 151736,
|
||||
"<fake_token_68>": 151737,
|
||||
"<fake_token_69>": 151738,
|
||||
"<fake_token_6>": 151675,
|
||||
"<fake_token_70>": 151739,
|
||||
"<fake_token_71>": 151740,
|
||||
"<fake_token_72>": 151741,
|
||||
"<fake_token_73>": 151742,
|
||||
"<fake_token_74>": 151743,
|
||||
"<fake_token_75>": 151744,
|
||||
"<fake_token_76>": 151745,
|
||||
"<fake_token_77>": 151746,
|
||||
"<fake_token_78>": 151747,
|
||||
"<fake_token_79>": 151748,
|
||||
"<fake_token_7>": 151676,
|
||||
"<fake_token_80>": 151749,
|
||||
"<fake_token_81>": 151750,
|
||||
"<fake_token_82>": 151751,
|
||||
"<fake_token_83>": 151752,
|
||||
"<fake_token_84>": 151753,
|
||||
"<fake_token_85>": 151754,
|
||||
"<fake_token_86>": 151755,
|
||||
"<fake_token_87>": 151756,
|
||||
"<fake_token_88>": 151757,
|
||||
"<fake_token_89>": 151758,
|
||||
"<fake_token_8>": 151677,
|
||||
"<fake_token_90>": 151759,
|
||||
"<fake_token_91>": 151760,
|
||||
"<fake_token_92>": 151761,
|
||||
"<fake_token_93>": 151762,
|
||||
"<fake_token_94>": 151763,
|
||||
"<fake_token_95>": 151764,
|
||||
"<fake_token_96>": 151765,
|
||||
"<fake_token_97>": 151766,
|
||||
"<fake_token_98>": 151767,
|
||||
"<fake_token_99>": 151768,
|
||||
"<fake_token_9>": 151678,
|
||||
"<think>": 151667,
|
||||
"<tool_call>": 151657,
|
||||
"<tool_response>": 151665,
|
||||
"<|box_end|>": 151649,
|
||||
"<|box_start|>": 151648,
|
||||
"<|endoftext|>": 151643,
|
||||
"<|file_sep|>": 151664,
|
||||
"<|fim_middle|>": 151660,
|
||||
"<|fim_pad|>": 151662,
|
||||
"<|fim_prefix|>": 151659,
|
||||
"<|fim_suffix|>": 151661,
|
||||
"<|im_end|>": 151645,
|
||||
"<|im_start|>": 151644,
|
||||
"<|image_pad|>": 151655,
|
||||
"<|object_ref_end|>": 151647,
|
||||
"<|object_ref_start|>": 151646,
|
||||
"<|quad_end|>": 151651,
|
||||
"<|quad_start|>": 151650,
|
||||
"<|repo_name|>": 151663,
|
||||
"<|video_pad|>": 151656,
|
||||
"<|vision_end|>": 151653,
|
||||
"<|vision_pad|>": 151654,
|
||||
"<|vision_start|>": 151652
|
||||
}
|
||||
6
chat_template.jinja
Normal file
6
chat_template.jinja
Normal file
@@ -0,0 +1,6 @@
|
||||
{%- set instruction_text = messages | selectattr("role", "eq", "system") | map(attribute="content") | first | default("") -%}
|
||||
{%- set query_text = messages | selectattr("role", "eq", "query") | map(attribute="content") | first -%}
|
||||
{%- set document_text = messages | selectattr("role", "eq", "document") | map(attribute="content") | first -%}
|
||||
Check whether a given document contains information helpful to answer the query.
|
||||
<Document> {{ document_text }}
|
||||
<Query> {{ query_text }}{% if instruction_text %} {{ instruction_text }}{% endif %} ??
|
||||
36
config.json
Normal file
36
config.json
Normal file
@@ -0,0 +1,36 @@
|
||||
{
|
||||
"architectures": [
|
||||
"Qwen3ForCausalLM"
|
||||
],
|
||||
"attention_bias": false,
|
||||
"attention_dropout": 0.0,
|
||||
"bos_token_id": 151643,
|
||||
"eos_token_id": 151645,
|
||||
"head_dim": 128,
|
||||
"hidden_act": "silu",
|
||||
"hidden_size": 2048,
|
||||
"id2label": {
|
||||
"0": "LABEL_0"
|
||||
},
|
||||
"initializer_range": 0.02,
|
||||
"intermediate_size": 6144,
|
||||
"label2id": {
|
||||
"LABEL_0": 0
|
||||
},
|
||||
"max_position_embeddings": 40960,
|
||||
"max_window_layers": 28,
|
||||
"model_type": "qwen3",
|
||||
"num_attention_heads": 16,
|
||||
"num_hidden_layers": 14,
|
||||
"num_key_value_heads": 8,
|
||||
"rms_norm_eps": 1e-06,
|
||||
"rope_scaling": null,
|
||||
"rope_theta": 1000000,
|
||||
"sliding_window": null,
|
||||
"tie_word_embeddings": false,
|
||||
"torch_dtype": "bfloat16",
|
||||
"transformers_version": "4.51.3",
|
||||
"use_cache": true,
|
||||
"use_sliding_window": false,
|
||||
"vocab_size": 151936
|
||||
}
|
||||
11
config_sentence_transformers.json
Normal file
11
config_sentence_transformers.json
Normal file
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"__version__": {
|
||||
"pytorch": "2.10.0+cu128",
|
||||
"sentence_transformers": "5.4.0",
|
||||
"transformers": "5.5.0"
|
||||
},
|
||||
"activation_fn": "torch.nn.modules.linear.Identity",
|
||||
"default_prompt_name": null,
|
||||
"model_type": "CrossEncoder",
|
||||
"prompts": {}
|
||||
}
|
||||
13
generation_config.json
Normal file
13
generation_config.json
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"bos_token_id": 151643,
|
||||
"do_sample": true,
|
||||
"eos_token_id": [
|
||||
151645,
|
||||
151643
|
||||
],
|
||||
"pad_token_id": 151643,
|
||||
"temperature": 0.6,
|
||||
"top_k": 20,
|
||||
"top_p": 0.95,
|
||||
"transformers_version": "4.51.3"
|
||||
}
|
||||
3
main_benchmark.png
Normal file
3
main_benchmark.png
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:73b74cd012b57c5f8e8abfac5135359af7e2758ddaa76f3c05e8ff47de202c84
|
||||
size 154196
|
||||
151388
merges.txt
Normal file
151388
merges.txt
Normal file
File diff suppressed because it is too large
Load Diff
3
model.safetensors
Normal file
3
model.safetensors
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:b4f473ac81e16f78f5940ea43defeb6303f20118a9185f3975c05de65343d168
|
||||
size 3276419688
|
||||
14
modules.json
Normal file
14
modules.json
Normal file
@@ -0,0 +1,14 @@
|
||||
[
|
||||
{
|
||||
"idx": 0,
|
||||
"name": "0",
|
||||
"path": "",
|
||||
"type": "sentence_transformers.base.modules.transformer.Transformer"
|
||||
},
|
||||
{
|
||||
"idx": 1,
|
||||
"name": "1",
|
||||
"path": "1_LogitScore",
|
||||
"type": "sentence_transformers.cross_encoder.modules.logit_score.LogitScore"
|
||||
}
|
||||
]
|
||||
15
sentence_bert_config.json
Normal file
15
sentence_bert_config.json
Normal file
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"transformer_task": "text-generation",
|
||||
"modality_config": {
|
||||
"text": {
|
||||
"method": "forward",
|
||||
"method_output_name": "logits"
|
||||
},
|
||||
"message": {
|
||||
"method": "forward",
|
||||
"method_output_name": "logits",
|
||||
"format": "flat"
|
||||
}
|
||||
},
|
||||
"module_output_name": "causal_logits"
|
||||
}
|
||||
25
special_tokens_map.json
Normal file
25
special_tokens_map.json
Normal file
@@ -0,0 +1,25 @@
|
||||
{
|
||||
"additional_special_tokens": [
|
||||
"<|im_start|>",
|
||||
"<|im_end|>",
|
||||
"<|object_ref_start|>",
|
||||
"<|object_ref_end|>",
|
||||
"<|box_start|>",
|
||||
"<|box_end|>",
|
||||
"<|quad_start|>",
|
||||
"<|quad_end|>",
|
||||
"<|vision_start|>",
|
||||
"<|vision_end|>",
|
||||
"<|vision_pad|>",
|
||||
"<|image_pad|>",
|
||||
"<|video_pad|>"
|
||||
],
|
||||
"eos_token": {
|
||||
"content": "<|im_end|>",
|
||||
"lstrip": false,
|
||||
"normalized": false,
|
||||
"rstrip": false,
|
||||
"single_word": false
|
||||
},
|
||||
"pad_token": "+"
|
||||
}
|
||||
3
tokenizer.json
Normal file
3
tokenizer.json
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:f253e845dff94cb1ac558f76905ea5fbe19c21ebf2d9b4e44f28ef0007968267
|
||||
size 11474075
|
||||
2376
tokenizer_config.json
Normal file
2376
tokenizer_config.json
Normal file
File diff suppressed because it is too large
Load Diff
1
vocab.json
Normal file
1
vocab.json
Normal file
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user