Sentence Similarity
sentence-transformers
Safetensors
German
English
multilingual
xlm-roberta
feature-extraction
retrieval
semantic-search
ifc
lca
text-embeddings-inference
Instructions to use Hygroskopisch/bge-m3-ifc-kbob-finetuned with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- sentence-transformers
How to use Hygroskopisch/bge-m3-ifc-kbob-finetuned with sentence-transformers:
from sentence_transformers import SentenceTransformer model = SentenceTransformer("Hygroskopisch/bge-m3-ifc-kbob-finetuned") sentences = [ "Das ist eine glückliche Person", "Das ist ein glücklicher Hund", "Das ist eine sehr glückliche Person", "Heute ist ein sonniger Tag" ] embeddings = model.encode(sentences) similarities = model.similarity(embeddings, embeddings) print(similarities.shape) # [4, 4] - Notebooks
- Google Colab
- Kaggle
Commit ·
fdb174b
0
Parent(s):
Super squash history after split_eval_matrix removal
Browse files- .gitattributes +36 -0
- 1_Pooling/config.json +10 -0
- README.md +256 -0
- config.json +28 -0
- config_sentence_transformers.json +9 -0
- eval/normal_queries/details_eval-bge-m3-ifc-kbob-finetuned_model-1d06a0d7_queries-b9bc9eb9_no-reranker-7521044b.csv +0 -0
- eval/normal_queries/evaluation_report_eval-bge-m3-ifc-kbob-finetuned_model-1d06a0d7_queries-b9bc9eb9_no-reranker-7521044b.md +34 -0
- eval/normal_queries/overview_eval-bge-m3-ifc-kbob-finetuned_model-1d06a0d7_queries-b9bc9eb9_no-reranker-7521044b.svg +38 -0
- eval/normal_queries/summary_eval-bge-m3-ifc-kbob-finetuned_model-1d06a0d7_queries-b9bc9eb9_no-reranker-7521044b.csv +2 -0
- eval/queries_missing+typos/details_eval-bge-m3-ifc-kbob-finetuned-missing-queries_typos_model-1d06a0d7_queries_missing_typo-ba9d4d3a_no-reranker-7521044b.csv +0 -0
- eval/queries_missing+typos/evaluation_report_eval-bge-m3-ifc-kbob-finetuned-missing-queries_typos_model-1d06a0d7_queries_missing_typo-ba9d4d3a_no-reranker-7521044b.md +34 -0
- eval/queries_missing+typos/overview_eval-bge-m3-ifc-kbob-finetuned-missing-queries_typos_model-1d06a0d7_queries_missing_typo-ba9d4d3a_no-reranker-7521044b.svg +38 -0
- eval/queries_missing+typos/summary_eval-bge-m3-ifc-kbob-finetuned-missing-queries_typos_model-1d06a0d7_queries_missing_typo-ba9d4d3a_no-reranker-7521044b.csv +2 -0
- eval/queries_missing/details_eval-bge-m3-ifc-kbob-finetuned-missing-queries_model-1d06a0d7_queries_missing-a91a834f_no-reranker-7521044b.csv +0 -0
- eval/queries_missing/evaluation_report_eval-bge-m3-ifc-kbob-finetuned-missing-queries_model-1d06a0d7_queries_missing-a91a834f_no-reranker-7521044b.md +34 -0
- eval/queries_missing/overview_eval-bge-m3-ifc-kbob-finetuned-missing-queries_model-1d06a0d7_queries_missing-a91a834f_no-reranker-7521044b.svg +38 -0
- eval/queries_missing/summary_eval-bge-m3-ifc-kbob-finetuned-missing-queries_model-1d06a0d7_queries_missing-a91a834f_no-reranker-7521044b.csv +2 -0
- eval/queries_typos/details_eval-bge-m3-ifc-kbob-finetuned-typos_model-1d06a0d7_queries_typos-ec28a584_no-reranker-7521044b.csv +0 -0
- eval/queries_typos/evaluation_report_eval-bge-m3-ifc-kbob-finetuned-typos_model-1d06a0d7_queries_typos-ec28a584_no-reranker-7521044b.md +34 -0
- eval/queries_typos/overview_eval-bge-m3-ifc-kbob-finetuned-typos_model-1d06a0d7_queries_typos-ec28a584_no-reranker-7521044b.svg +38 -0
- eval/queries_typos/summary_eval-bge-m3-ifc-kbob-finetuned-typos_model-1d06a0d7_queries_typos-ec28a584_no-reranker-7521044b.csv +2 -0
- model.safetensors +3 -0
- modules.json +20 -0
- run_metadata.json +52 -0
- sentence_bert_config.json +4 -0
- special_tokens_map.json +51 -0
- tokenizer.json +3 -0
- tokenizer_config.json +55 -0
.gitattributes
ADDED
|
@@ -0,0 +1,36 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
*.7z filter=lfs diff=lfs merge=lfs -text
|
| 2 |
+
*.arrow filter=lfs diff=lfs merge=lfs -text
|
| 3 |
+
*.bin filter=lfs diff=lfs merge=lfs -text
|
| 4 |
+
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
| 5 |
+
*.ckpt filter=lfs diff=lfs merge=lfs -text
|
| 6 |
+
*.ftz filter=lfs diff=lfs merge=lfs -text
|
| 7 |
+
*.gz filter=lfs diff=lfs merge=lfs -text
|
| 8 |
+
*.h5 filter=lfs diff=lfs merge=lfs -text
|
| 9 |
+
*.joblib filter=lfs diff=lfs merge=lfs -text
|
| 10 |
+
*.lfs.* filter=lfs diff=lfs merge=lfs -text
|
| 11 |
+
*.mlmodel filter=lfs diff=lfs merge=lfs -text
|
| 12 |
+
*.model filter=lfs diff=lfs merge=lfs -text
|
| 13 |
+
*.msgpack filter=lfs diff=lfs merge=lfs -text
|
| 14 |
+
*.npy filter=lfs diff=lfs merge=lfs -text
|
| 15 |
+
*.npz filter=lfs diff=lfs merge=lfs -text
|
| 16 |
+
*.onnx filter=lfs diff=lfs merge=lfs -text
|
| 17 |
+
*.ot filter=lfs diff=lfs merge=lfs -text
|
| 18 |
+
*.parquet filter=lfs diff=lfs merge=lfs -text
|
| 19 |
+
*.pb filter=lfs diff=lfs merge=lfs -text
|
| 20 |
+
*.pickle filter=lfs diff=lfs merge=lfs -text
|
| 21 |
+
*.pkl filter=lfs diff=lfs merge=lfs -text
|
| 22 |
+
*.pt filter=lfs diff=lfs merge=lfs -text
|
| 23 |
+
*.pth filter=lfs diff=lfs merge=lfs -text
|
| 24 |
+
*.rar filter=lfs diff=lfs merge=lfs -text
|
| 25 |
+
*.safetensors filter=lfs diff=lfs merge=lfs -text
|
| 26 |
+
saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
| 27 |
+
*.tar.* filter=lfs diff=lfs merge=lfs -text
|
| 28 |
+
*.tar filter=lfs diff=lfs merge=lfs -text
|
| 29 |
+
*.tflite filter=lfs diff=lfs merge=lfs -text
|
| 30 |
+
*.tgz filter=lfs diff=lfs merge=lfs -text
|
| 31 |
+
*.wasm filter=lfs diff=lfs merge=lfs -text
|
| 32 |
+
*.xz filter=lfs diff=lfs merge=lfs -text
|
| 33 |
+
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
+
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
+
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
| 36 |
+
tokenizer.json filter=lfs diff=lfs merge=lfs -text
|
1_Pooling/config.json
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"word_embedding_dimension": 1024,
|
| 3 |
+
"pooling_mode_cls_token": true,
|
| 4 |
+
"pooling_mode_mean_tokens": false,
|
| 5 |
+
"pooling_mode_max_tokens": false,
|
| 6 |
+
"pooling_mode_mean_sqrt_len_tokens": false,
|
| 7 |
+
"pooling_mode_weightedmean_tokens": false,
|
| 8 |
+
"pooling_mode_lasttoken": false,
|
| 9 |
+
"include_prompt": true
|
| 10 |
+
}
|
README.md
ADDED
|
@@ -0,0 +1,256 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
license: mit
|
| 3 |
+
base_model: BAAI/bge-m3
|
| 4 |
+
language:
|
| 5 |
+
- de
|
| 6 |
+
- en
|
| 7 |
+
library_name: sentence-transformers
|
| 8 |
+
pipeline_tag: sentence-similarity
|
| 9 |
+
tags:
|
| 10 |
+
- sentence-transformers
|
| 11 |
+
- feature-extraction
|
| 12 |
+
- sentence-similarity
|
| 13 |
+
- retrieval
|
| 14 |
+
- semantic-search
|
| 15 |
+
- ifc
|
| 16 |
+
- lca
|
| 17 |
+
|
| 18 |
+
---
|
| 19 |
+
|
| 20 |
+
# Hygroskopisch/bge-m3-ifc-kbob-finetuned
|
| 21 |
+
|
| 22 |
+
Sentence-Transformers model finetuned from BAAI/bge-m3 for IFC-based construction material retrieval in KBOB/LCA workflows.
|
| 23 |
+
|
| 24 |
+
## Model Summary
|
| 25 |
+
|
| 26 |
+
- Model ID: Hygroskopisch/bge-m3-ifc-kbob-finetuned
|
| 27 |
+
- Release: v3 (2026-04-16)
|
| 28 |
+
- Base model: BAAI/bge-m3
|
| 29 |
+
- Embedding dimension: 1024
|
| 30 |
+
- Max sequence length: 128
|
| 31 |
+
- Similarity: cosine
|
| 32 |
+
|
| 33 |
+
The model is optimized for queries generated from IFC element metadata and maps them to KBOB-like material labels for downstream environmental impact workflows.
|
| 34 |
+
|
| 35 |
+
## Intended Use
|
| 36 |
+
|
| 37 |
+
- IFC-to-material retrieval in building and infrastructure datasets.
|
| 38 |
+
- Candidate generation before manual validation in LCA pipelines.
|
| 39 |
+
- Semantic search over construction material catalogs with domain-specific wording.
|
| 40 |
+
|
| 41 |
+
## Out-of-Scope Use
|
| 42 |
+
|
| 43 |
+
- Legal, compliance, or procurement decisions without human review.
|
| 44 |
+
- Safety-critical engineering sign-off.
|
| 45 |
+
- Use as a standalone source of truth for environmental declarations.
|
| 46 |
+
|
| 47 |
+
## Responsible Use
|
| 48 |
+
|
| 49 |
+
- Keep a human-in-the-loop for final material assignment.
|
| 50 |
+
- Validate results against project context, standards, and local regulations.
|
| 51 |
+
- Contact: sbert-lca@pm.me
|
| 52 |
+
|
| 53 |
+
## Training Data
|
| 54 |
+
|
| 55 |
+
The v3 run used project-internal data artifacts and generated pair files.
|
| 56 |
+
|
| 57 |
+
- Query source file: Training/query_generation/generated_queries/generated_queries.txt
|
| 58 |
+
- Expected mapping file: Training/query_generation/generated_queries/mapping_generated_queries.txt
|
| 59 |
+
- Pair file used for training: Training/outputs/phase12/random_preselected_pairs_generated_queries-mapping_generated_querie-bge-m3-e2-b32-lr2e-05-d0p1-s42-d1-f8c0ccef.jsonl
|
| 60 |
+
- Hard-negative strategy: fallback mode with random_preselected selection, up to 2 hard negatives per record
|
| 61 |
+
|
| 62 |
+
Train/dev counts from run metadata:
|
| 63 |
+
|
| 64 |
+
- Total pairs: 16386
|
| 65 |
+
- Train pairs: 14748
|
| 66 |
+
- Dev pairs: 1638
|
| 67 |
+
|
| 68 |
+
## Evaluation Data
|
| 69 |
+
|
| 70 |
+
Evaluation artifacts for this release:
|
| 71 |
+
|
| 72 |
+
- eval/normal_queries/summary_eval-bge-m3-ifc-kbob-finetuned_model-1d06a0d7_queries-b9bc9eb9_no-reranker-7521044b.csv
|
| 73 |
+
- eval/normal_queries/details_eval-bge-m3-ifc-kbob-finetuned_model-1d06a0d7_queries-b9bc9eb9_no-reranker-7521044b.csv
|
| 74 |
+
|
| 75 |
+
Evaluation query count: 389
|
| 76 |
+
|
| 77 |
+
## Evaluation Results
|
| 78 |
+
|
| 79 |
+
The following results mirror the full evaluation summary in the main project README for the v3 model.
|
| 80 |
+
|
| 81 |
+
### Core metrics by query set
|
| 82 |
+
|
| 83 |
+
| Queries | Cases | Hit@1 | Hit@10 | Hit@20 | Hit@30 | Hit@50 | MRR@10 | MAP@10 | nDCG@10 | Recall@10 |
|
| 84 |
+
| --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: |
|
| 85 |
+
| Normal | 389 | 97.43% | 99.49% | 99.74% | 99.74% | 100.00% | 0.984 | 0.932 | 0.954 | 0.960 |
|
| 86 |
+
| Typos | 389 | 88.43% | 94.86% | 98.20% | 98.97% | 99.49% | 0.909 | 0.844 | 0.876 | 0.890 |
|
| 87 |
+
| Missing Attribute | 389 | 75.32% | 92.80% | 96.40% | 98.20% | 98.71% | 0.803 | 0.750 | 0.794 | 0.860 |
|
| 88 |
+
| Missing + Typos | 389 | 68.12% | 88.17% | 94.34% | 96.92% | 98.46% | 0.739 | 0.682 | 0.731 | 0.805 |
|
| 89 |
+
|
| 90 |
+
95% confidence intervals (bootstrap from summary files):
|
| 91 |
+
|
| 92 |
+
| Queries | Hit@1 95% CI | Hit@10 95% CI | MRR@10 95% CI | nDCG@10 95% CI |
|
| 93 |
+
| --- | --- | --- | --- | --- |
|
| 94 |
+
| Normal | [95.37%, 98.97%] | [98.71%, 100.00%] | [0.971, 0.994] | [0.939, 0.968] |
|
| 95 |
+
| Typos | [84.83%, 91.77%] | [92.80%, 96.66%] | [0.881, 0.935] | [0.847, 0.902] |
|
| 96 |
+
| Missing Attribute | [70.69%, 79.18%] | [89.97%, 94.99%] | [0.766, 0.835] | [0.759, 0.824] |
|
| 97 |
+
| Missing + Typos | [63.36%, 72.49%] | [84.95%, 91.14%] | [0.695, 0.778] | [0.690, 0.767] |
|
| 98 |
+
|
| 99 |
+
### Query set definitions
|
| 100 |
+
|
| 101 |
+
The four query files test robustness under controlled perturbations.
|
| 102 |
+
|
| 103 |
+
| Queries | Transformation | Hard invariants |
|
| 104 |
+
| --- | --- | --- |
|
| 105 |
+
| Normal | Unchanged query (reference run) | No perturbation |
|
| 106 |
+
| Missing file | Removes one allowed token from `PredefinedType`, `Material`, `StrengthClass`, or `insitu/precast` (`Ortbeton/Fertigteil`) | `IfcEntity` is never removed |
|
| 107 |
+
| Typos file | 1 to 2 typos per line, max 1 typo per token/word | `IfcEntity` remains correct |
|
| 108 |
+
| Combined file | First remove one allowed token, then inject 1 to 2 typos into remaining allowed tokens (max 1 typo per token) | `IfcEntity` remains correct |
|
| 109 |
+
|
| 110 |
+
Summary of generated perturbation files:
|
| 111 |
+
|
| 112 |
+
| File | Changed lines | Typo distribution |
|
| 113 |
+
| --- | ---: | --- |
|
| 114 |
+
| Missing | 388 | - |
|
| 115 |
+
| Typos | 388 | 1 typo: 193, 2 typos: 195 |
|
| 116 |
+
| Missing + Typos | 388 | 1 typo: 309, 2 typos: 61 |
|
| 117 |
+
|
| 118 |
+
### Detailed interpretation
|
| 119 |
+
|
| 120 |
+
Readability note: metrics are computed on 389 evaluation cases; the perturbation table above reports changed lines in the generated query files.
|
| 121 |
+
|
| 122 |
+
Degradation versus Normal Queries:
|
| 123 |
+
|
| 124 |
+
| Queries | Delta Hit@1 | Delta Hit@10 | Delta MRR@10 | Delta nDCG@10 |
|
| 125 |
+
| --- | ---: | ---: | ---: | ---: |
|
| 126 |
+
| Typos | -9.00% | -4.63% | -0.075 | -0.078 |
|
| 127 |
+
| Missing Attribute | -22.11% | -6.69% | -0.181 | -0.160 |
|
| 128 |
+
| Missing + Typos | -29.31% | -11.32% | -0.245 | -0.223 |
|
| 129 |
+
|
| 130 |
+
Conclusion: token removal hurts more than pure typo noise; the combined perturbation is strongest, as expected.
|
| 131 |
+
|
| 132 |
+
Typos vs. Missing (direct comparison):
|
| 133 |
+
- Hit@1: Missing is 13.11 percentage points below Typos (75.32% vs 88.43%).
|
| 134 |
+
- Hit@10: Missing is 2.06 percentage points below Typos (92.80% vs 94.86%).
|
| 135 |
+
- MRR@10: Missing is 0.106 below Typos (0.803 vs 0.909).
|
| 136 |
+
- nDCG@10: Missing is 0.082 below Typos (0.794 vs 0.876).
|
| 137 |
+
|
| 138 |
+
Conclusion: missing semantic slots move correct results further down the ranking than typos.
|
| 139 |
+
|
| 140 |
+
Top-1 vs Top-10 recovery potential:
|
| 141 |
+
- Normal: Hit@10 - Hit@1 = 2.06%.
|
| 142 |
+
- Typos: Hit@10 - Hit@1 = 6.43%.
|
| 143 |
+
- Missing Attribute: Hit@10 - Hit@1 = 17.48%.
|
| 144 |
+
- Missing + Typos: Hit@10 - Hit@1 = 20.05%.
|
| 145 |
+
|
| 146 |
+
Conclusion: under perturbation, the correct material often remains in top-10 but drops from rank 1 more frequently.
|
| 147 |
+
|
| 148 |
+
Statistical separability (Hit@1 CIs):
|
| 149 |
+
- Normal vs Typos: no overlap; interval gap 3.60% (95.37% vs 91.77%).
|
| 150 |
+
- Typos vs Missing: no overlap; interval gap 5.65% (84.83% vs 79.18%).
|
| 151 |
+
- Missing vs Missing + Typos: overlap 1.80% (70.69% to 72.49%).
|
| 152 |
+
|
| 153 |
+
Conclusion: the first two degradation steps are clearly separated; the final step is smaller but still negative.
|
| 154 |
+
|
| 155 |
+
Practical implications:
|
| 156 |
+
- High automation precision depends strongly on stable `Material`, `StrengthClass`, and `CastingMethod` slots.
|
| 157 |
+
- For noisy IFC text, UI workflows should prioritize top-10 candidates and avoid relying on top-1 alone.
|
| 158 |
+
- Main improvement lever is robust semantic token extraction/preservation, more than additional typo tolerance.
|
| 159 |
+
|
| 160 |
+
## Usage (Sentence-Transformers)
|
| 161 |
+
|
| 162 |
+
Using this model becomes easy when you have [sentence-transformers](https://www.SBERT.net) installed:
|
| 163 |
+
|
| 164 |
+
```
|
| 165 |
+
pip install -U sentence-transformers
|
| 166 |
+
```
|
| 167 |
+
|
| 168 |
+
Then you can use the model like this:
|
| 169 |
+
|
| 170 |
+
```python
|
| 171 |
+
from sentence_transformers import SentenceTransformer
|
| 172 |
+
sentences = [
|
| 173 |
+
"IfcPile BORED Stahlbeton C40/50 500 INSITU",
|
| 174 |
+
"Tiefgründung Ortbetonbohrpfahl 700",
|
| 175 |
+
]
|
| 176 |
+
|
| 177 |
+
model = SentenceTransformer("Hygroskopisch/bge-m3-ifc-kbob-finetuned")
|
| 178 |
+
embeddings = model.encode(sentences)
|
| 179 |
+
print(embeddings)
|
| 180 |
+
```
|
| 181 |
+
|
| 182 |
+
Load a fixed released revision:
|
| 183 |
+
|
| 184 |
+
```python
|
| 185 |
+
from sentence_transformers import SentenceTransformer
|
| 186 |
+
|
| 187 |
+
model = SentenceTransformer(
|
| 188 |
+
"Hygroskopisch/bge-m3-ifc-kbob-finetuned",
|
| 189 |
+
revision="v3",
|
| 190 |
+
)
|
| 191 |
+
```
|
| 192 |
+
|
| 193 |
+
## Training
|
| 194 |
+
|
| 195 |
+
Core training configuration (v3):
|
| 196 |
+
|
| 197 |
+
- Epochs: 2
|
| 198 |
+
- Batch size: 32
|
| 199 |
+
- Learning rate: 2e-05
|
| 200 |
+
- Warmup ratio: 0.1
|
| 201 |
+
- FP16: true
|
| 202 |
+
- Seed: 42
|
| 203 |
+
- Device: cuda
|
| 204 |
+
- Prefix mode: no_prefix
|
| 205 |
+
|
| 206 |
+
DataLoader length: 7418
|
| 207 |
+
|
| 208 |
+
Loss:
|
| 209 |
+
|
| 210 |
+
`sentence_transformers.losses.MultipleNegativesRankingLoss.MultipleNegativesRankingLoss` with parameters:
|
| 211 |
+
```
|
| 212 |
+
{'scale': 20.0, 'similarity_fct': 'cos_sim'}
|
| 213 |
+
```
|
| 214 |
+
|
| 215 |
+
fit() parameters:
|
| 216 |
+
```
|
| 217 |
+
{
|
| 218 |
+
"epochs": 2,
|
| 219 |
+
"evaluation_steps": 0,
|
| 220 |
+
"evaluator": "__main__.CombinedHit5Mrr10Evaluator",
|
| 221 |
+
"max_grad_norm": 1,
|
| 222 |
+
"optimizer_class": "<class 'torch.optim.adamw.AdamW'>",
|
| 223 |
+
"optimizer_params": {
|
| 224 |
+
"lr": 2e-05
|
| 225 |
+
},
|
| 226 |
+
"scheduler": "WarmupLinear",
|
| 227 |
+
"steps_per_epoch": null,
|
| 228 |
+
"warmup_steps": 1484,
|
| 229 |
+
"weight_decay": 0.01
|
| 230 |
+
}
|
| 231 |
+
```
|
| 232 |
+
|
| 233 |
+
|
| 234 |
+
## Release Notes
|
| 235 |
+
|
| 236 |
+
### v3 (2026-04-16)
|
| 237 |
+
|
| 238 |
+
- Replaced previous published checkpoint with the new finetuned weights from the latest IFC/KBOB training run.
|
| 239 |
+
- Updated training data pipeline artifacts and documented exact source file names used for this release.
|
| 240 |
+
- Published baseline retrieval metrics on 389 evaluation queries (no cross-encoder reranker).
|
| 241 |
+
- Behavior change: retrieval rankings can differ from previous versions; if you require reproducibility, pin revision v3.
|
| 242 |
+
- Responsible-use contact added: sbert-lca@pm.me.
|
| 243 |
+
|
| 244 |
+
|
| 245 |
+
## Full Model Architecture
|
| 246 |
+
```
|
| 247 |
+
SentenceTransformer(
|
| 248 |
+
(0): Transformer({'max_seq_length': 128, 'do_lower_case': False}) with Transformer model: XLMRobertaModel
|
| 249 |
+
(1): Pooling({'word_embedding_dimension': 1024, 'pooling_mode_cls_token': True, 'pooling_mode_mean_tokens': False, 'pooling_mode_max_tokens': False, 'pooling_mode_mean_sqrt_len_tokens': False, 'pooling_mode_weightedmean_tokens': False, 'pooling_mode_lasttoken': False, 'include_prompt': True})
|
| 250 |
+
(2): Normalize()
|
| 251 |
+
)
|
| 252 |
+
```
|
| 253 |
+
|
| 254 |
+
## Citing & Authors
|
| 255 |
+
|
| 256 |
+
If you use this model in a report or publication, cite the project repository and this Hugging Face model page.
|
config.json
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"_name_or_path": "/mnt/nas05/data01/kbob-ai-matcher/models/bge-m3",
|
| 3 |
+
"architectures": [
|
| 4 |
+
"XLMRobertaModel"
|
| 5 |
+
],
|
| 6 |
+
"attention_probs_dropout_prob": 0.1,
|
| 7 |
+
"bos_token_id": 0,
|
| 8 |
+
"classifier_dropout": null,
|
| 9 |
+
"eos_token_id": 2,
|
| 10 |
+
"hidden_act": "gelu",
|
| 11 |
+
"hidden_dropout_prob": 0.1,
|
| 12 |
+
"hidden_size": 1024,
|
| 13 |
+
"initializer_range": 0.02,
|
| 14 |
+
"intermediate_size": 4096,
|
| 15 |
+
"layer_norm_eps": 1e-05,
|
| 16 |
+
"max_position_embeddings": 8194,
|
| 17 |
+
"model_type": "xlm-roberta",
|
| 18 |
+
"num_attention_heads": 16,
|
| 19 |
+
"num_hidden_layers": 24,
|
| 20 |
+
"output_past": true,
|
| 21 |
+
"pad_token_id": 1,
|
| 22 |
+
"position_embedding_type": "absolute",
|
| 23 |
+
"torch_dtype": "float32",
|
| 24 |
+
"transformers_version": "4.38.2",
|
| 25 |
+
"type_vocab_size": 1,
|
| 26 |
+
"use_cache": true,
|
| 27 |
+
"vocab_size": 250002
|
| 28 |
+
}
|
config_sentence_transformers.json
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"__version__": {
|
| 3 |
+
"sentence_transformers": "2.2.2",
|
| 4 |
+
"transformers": "4.33.0",
|
| 5 |
+
"pytorch": "2.1.2+cu121"
|
| 6 |
+
},
|
| 7 |
+
"prompts": {},
|
| 8 |
+
"default_prompt_name": null
|
| 9 |
+
}
|
eval/normal_queries/details_eval-bge-m3-ifc-kbob-finetuned_model-1d06a0d7_queries-b9bc9eb9_no-reranker-7521044b.csv
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
eval/normal_queries/evaluation_report_eval-bge-m3-ifc-kbob-finetuned_model-1d06a0d7_queries-b9bc9eb9_no-reranker-7521044b.md
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
## Evaluation Report
|
| 2 |
+
|
| 3 |
+
Generated: 2026-04-16 10:03:27
|
| 4 |
+
|
| 5 |
+
### Inputs
|
| 6 |
+
- Summary CSV: `summary_eval-bge-m3-ifc-kbob-finetuned_model-1d06a0d7_queries-b9bc9eb9_no-reranker-7521044b.csv`
|
| 7 |
+
- Details CSV: `details_eval-bge-m3-ifc-kbob-finetuned_model-1d06a0d7_queries-b9bc9eb9_no-reranker-7521044b.csv`
|
| 8 |
+
|
| 9 |
+
### Overview
|
| 10 |
+

|
| 11 |
+
|
| 12 |
+
### Leaderboard
|
| 13 |
+
|
| 14 |
+
#### Baseline (Bi-Encoder)
|
| 15 |
+
|
| 16 |
+
| Rank | Model | Hit@1 | Hit@10 | Hit@20 | Hit@30 | Hit@50 | MRR@10 | MAP@10 | nDCG@10 | Recall@10 | Avg expected score | Hit@1 95% CI | Hit@10 95% CI | MRR@10 95% CI | nDCG@10 95% CI | Top1 errors |
|
| 17 |
+
|---:|---|---:|---:|---:|---:|---:|---:|---:|---:|---:|---:|---|---|---|---|---:|
|
| 18 |
+
| 1 | models\\Hygroskopisch\\bge-m3-ifc-kbob-finetuned | 97.43% | 99.49% | 99.74% | 99.74% | 100.00% | 0.984 | 0.932 | 0.954 | 0.960 | 0.911 | [0.954, 0.990] | [0.987, 1.000] | [0.971, 0.994] | [0.939, 0.968] | 10 |
|
| 19 |
+
|
| 20 |
+
#### Reranked (Bi-Encoder + Cross-Encoder)
|
| 21 |
+
|
| 22 |
+
| Rank | Model | Cross-Encoder | Hit@1 | Hit@10 | Hit@20 | Hit@30 | Hit@50 | MRR@10 | MAP@10 | nDCG@10 | Recall@10 | Avg expected score | Hit@1 95% CI | Hit@10 95% CI | MRR@10 95% CI | nDCG@10 95% CI | Top1 errors |
|
| 23 |
+
|---:|---|---|---:|---:|---:|---:|---:|---:|---:|---:|---:|---:|---|---|---|---|---:|
|
| 24 |
+
|
| 25 |
+
Anzahl Queries: 389
|
| 26 |
+
|
| 27 |
+
### Hardest Queries (Baseline)
|
| 28 |
+
Queries mit den meisten Top1-Fehlern in der Baseline:
|
| 29 |
+
|
| 30 |
+
- (1 Fehler) IfcCovering MEMBRANE Abdichtung
|
| 31 |
+
- (1 Fehler) IfcPavement FLEXIBLE Polymermodifiziertes Bitumen
|
| 32 |
+
- (1 Fehler) IfcPile BORED Beton C20/25 insitu
|
| 33 |
+
- (1 Fehler) IfcPile BORED Stahlbeton C20/25 insitu
|
| 34 |
+
- (1 Fehler) IfcPile COHESION Beton C20/25 insitu
|
eval/normal_queries/overview_eval-bge-m3-ifc-kbob-finetuned_model-1d06a0d7_queries-b9bc9eb9_no-reranker-7521044b.svg
ADDED
|
|
eval/normal_queries/summary_eval-bge-m3-ifc-kbob-finetuned_model-1d06a0d7_queries-b9bc9eb9_no-reranker-7521044b.csv
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
|
|
|
|
|
|
|
| 1 |
+
model,pipeline_variant,cross_encoder_model,cases,hit@1,hit@10,hit@20,hit@30,hit@50,mrr,map@10,ndcg@10,recall@10,avg_expected_score,hit@1_ci_low,hit@1_ci_high,hit@10_ci_low,hit@10_ci_high,mrr@10_ci_low,mrr@10_ci_high,ndcg@10_ci_low,ndcg@10_ci_high
|
| 2 |
+
models\\Hygroskopisch\\bge-m3-ifc-kbob-finetuned,baseline,-,389,0.974293,0.994859,0.997429,0.997429,1.000000,0.984147,0.932194,0.954325,0.959956,0.910825,0.953728,0.989717,0.987147,1.000000,0.971069,0.993573,0.939483,0.967920
|
eval/queries_missing+typos/details_eval-bge-m3-ifc-kbob-finetuned-missing-queries_typos_model-1d06a0d7_queries_missing_typo-ba9d4d3a_no-reranker-7521044b.csv
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
eval/queries_missing+typos/evaluation_report_eval-bge-m3-ifc-kbob-finetuned-missing-queries_typos_model-1d06a0d7_queries_missing_typo-ba9d4d3a_no-reranker-7521044b.md
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
## Evaluation Report
|
| 2 |
+
|
| 3 |
+
Generated: 2026-04-16 11:14:26
|
| 4 |
+
|
| 5 |
+
### Inputs
|
| 6 |
+
- Summary CSV: `summary_eval-bge-m3-ifc-kbob-finetuned-missing-queries_typos_model-1d06a0d7_queries_missing_typo-ba9d4d3a_no-reranker-7521044b.csv`
|
| 7 |
+
- Details CSV: `details_eval-bge-m3-ifc-kbob-finetuned-missing-queries_typos_model-1d06a0d7_queries_missing_typo-ba9d4d3a_no-reranker-7521044b.csv`
|
| 8 |
+
|
| 9 |
+
### Overview
|
| 10 |
+

|
| 11 |
+
|
| 12 |
+
### Leaderboard
|
| 13 |
+
|
| 14 |
+
#### Baseline (Bi-Encoder)
|
| 15 |
+
|
| 16 |
+
| Rank | Model | Hit@1 | Hit@10 | Hit@20 | Hit@30 | Hit@50 | MRR@10 | MAP@10 | nDCG@10 | Recall@10 | Avg expected score | Hit@1 95% CI | Hit@10 95% CI | MRR@10 95% CI | nDCG@10 95% CI | Top1 errors |
|
| 17 |
+
|---:|---|---:|---:|---:|---:|---:|---:|---:|---:|---:|---:|---|---|---|---|---:|
|
| 18 |
+
| 1 | models\\Hygroskopisch\\bge-m3-ifc-kbob-finetuned | 68.12% | 88.17% | 94.34% | 96.92% | 98.46% | 0.739 | 0.682 | 0.731 | 0.805 | 0.837 | [0.634, 0.725] | [0.850, 0.911] | [0.695, 0.778] | [0.690, 0.767] | 124 |
|
| 19 |
+
|
| 20 |
+
#### Reranked (Bi-Encoder + Cross-Encoder)
|
| 21 |
+
|
| 22 |
+
| Rank | Model | Cross-Encoder | Hit@1 | Hit@10 | Hit@20 | Hit@30 | Hit@50 | MRR@10 | MAP@10 | nDCG@10 | Recall@10 | Avg expected score | Hit@1 95% CI | Hit@10 95% CI | MRR@10 95% CI | nDCG@10 95% CI | Top1 errors |
|
| 23 |
+
|---:|---|---|---:|---:|---:|---:|---:|---:|---:|---:|---:|---:|---|---|---|---|---:|
|
| 24 |
+
|
| 25 |
+
Anzahl Queries: 389
|
| 26 |
+
|
| 27 |
+
### Hardest Queries (Baseline)
|
| 28 |
+
Queries mit den meisten Top1-Fehlern in der Baseline:
|
| 29 |
+
|
| 30 |
+
- (2 Fehler) IfcTendonConduit COPULER
|
| 31 |
+
- (2 Fehler) IfcBuildingElementPart Sathl
|
| 32 |
+
- (2 Fehler) IfcBuildingElementProxy RIAL
|
| 33 |
+
- (1 Fehler) IfcBearing CYLINDRIVAL
|
| 34 |
+
- (1 Fehler) IfcBearing YCLINDRICAL
|
eval/queries_missing+typos/overview_eval-bge-m3-ifc-kbob-finetuned-missing-queries_typos_model-1d06a0d7_queries_missing_typo-ba9d4d3a_no-reranker-7521044b.svg
ADDED
|
|
eval/queries_missing+typos/summary_eval-bge-m3-ifc-kbob-finetuned-missing-queries_typos_model-1d06a0d7_queries_missing_typo-ba9d4d3a_no-reranker-7521044b.csv
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
|
|
|
|
|
|
|
| 1 |
+
model,pipeline_variant,cross_encoder_model,cases,hit@1,hit@10,hit@20,hit@30,hit@50,mrr,map@10,ndcg@10,recall@10,avg_expected_score,hit@1_ci_low,hit@1_ci_high,hit@10_ci_low,hit@10_ci_high,mrr@10_ci_low,mrr@10_ci_high,ndcg@10_ci_low,ndcg@10_ci_high
|
| 2 |
+
models\\Hygroskopisch\\bge-m3-ifc-kbob-finetuned,baseline,-,389,0.681234,0.881748,0.943445,0.969152,0.984576,0.739290,0.682471,0.730620,0.804584,0.836972,0.633612,0.724936,0.849550,0.911375,0.694833,0.777858,0.690443,0.766578
|
eval/queries_missing/details_eval-bge-m3-ifc-kbob-finetuned-missing-queries_model-1d06a0d7_queries_missing-a91a834f_no-reranker-7521044b.csv
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
eval/queries_missing/evaluation_report_eval-bge-m3-ifc-kbob-finetuned-missing-queries_model-1d06a0d7_queries_missing-a91a834f_no-reranker-7521044b.md
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
## Evaluation Report
|
| 2 |
+
|
| 3 |
+
Generated: 2026-04-16 11:04:03
|
| 4 |
+
|
| 5 |
+
### Inputs
|
| 6 |
+
- Summary CSV: `summary_eval-bge-m3-ifc-kbob-finetuned-missing-queries_model-1d06a0d7_queries_missing-a91a834f_no-reranker-7521044b.csv`
|
| 7 |
+
- Details CSV: `details_eval-bge-m3-ifc-kbob-finetuned-missing-queries_model-1d06a0d7_queries_missing-a91a834f_no-reranker-7521044b.csv`
|
| 8 |
+
|
| 9 |
+
### Overview
|
| 10 |
+

|
| 11 |
+
|
| 12 |
+
### Leaderboard
|
| 13 |
+
|
| 14 |
+
#### Baseline (Bi-Encoder)
|
| 15 |
+
|
| 16 |
+
| Rank | Model | Hit@1 | Hit@10 | Hit@20 | Hit@30 | Hit@50 | MRR@10 | MAP@10 | nDCG@10 | Recall@10 | Avg expected score | Hit@1 95% CI | Hit@10 95% CI | MRR@10 95% CI | nDCG@10 95% CI | Top1 errors |
|
| 17 |
+
|---:|---|---:|---:|---:|---:|---:|---:|---:|---:|---:|---:|---|---|---|---|---:|
|
| 18 |
+
| 1 | models\\Hygroskopisch\\bge-m3-ifc-kbob-finetuned | 75.32% | 92.80% | 96.40% | 98.20% | 98.71% | 0.803 | 0.750 | 0.794 | 0.860 | 0.867 | [0.707, 0.792] | [0.900, 0.950] | [0.766, 0.835] | [0.759, 0.824] | 96 |
|
| 19 |
+
|
| 20 |
+
#### Reranked (Bi-Encoder + Cross-Encoder)
|
| 21 |
+
|
| 22 |
+
| Rank | Model | Cross-Encoder | Hit@1 | Hit@10 | Hit@20 | Hit@30 | Hit@50 | MRR@10 | MAP@10 | nDCG@10 | Recall@10 | Avg expected score | Hit@1 95% CI | Hit@10 95% CI | MRR@10 95% CI | nDCG@10 95% CI | Top1 errors |
|
| 23 |
+
|---:|---|---|---:|---:|---:|---:|---:|---:|---:|---:|---:|---:|---|---|---|---|---:|
|
| 24 |
+
|
| 25 |
+
Anzahl Queries: 389
|
| 26 |
+
|
| 27 |
+
### Hardest Queries (Baseline)
|
| 28 |
+
Queries mit den meisten Top1-Fehlern in der Baseline:
|
| 29 |
+
|
| 30 |
+
- (6 Fehler) IfcBuildingElementPart TrackElement
|
| 31 |
+
- (6 Fehler) IfcRailing HANDRAIL
|
| 32 |
+
- (5 Fehler) IfcRailing GUARDRAIL
|
| 33 |
+
- (4 Fehler) IfcBuildingElementProxy Stahl
|
| 34 |
+
- (2 Fehler) IfcBearing CYLINDRICAL
|
eval/queries_missing/overview_eval-bge-m3-ifc-kbob-finetuned-missing-queries_model-1d06a0d7_queries_missing-a91a834f_no-reranker-7521044b.svg
ADDED
|
|
eval/queries_missing/summary_eval-bge-m3-ifc-kbob-finetuned-missing-queries_model-1d06a0d7_queries_missing-a91a834f_no-reranker-7521044b.csv
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
|
|
|
|
|
|
|
| 1 |
+
model,pipeline_variant,cross_encoder_model,cases,hit@1,hit@10,hit@20,hit@30,hit@50,mrr,map@10,ndcg@10,recall@10,avg_expected_score,hit@1_ci_low,hit@1_ci_high,hit@10_ci_low,hit@10_ci_high,mrr@10_ci_low,mrr@10_ci_high,ndcg@10_ci_low,ndcg@10_ci_high
|
| 2 |
+
models\\Hygroskopisch\\bge-m3-ifc-kbob-finetuned,baseline,-,389,0.753213,0.928021,0.964010,0.982005,0.987147,0.803195,0.749533,0.793588,0.860224,0.867081,0.706941,0.791774,0.899743,0.949936,0.766433,0.835491,0.758573,0.823939
|
eval/queries_typos/details_eval-bge-m3-ifc-kbob-finetuned-typos_model-1d06a0d7_queries_typos-ec28a584_no-reranker-7521044b.csv
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
eval/queries_typos/evaluation_report_eval-bge-m3-ifc-kbob-finetuned-typos_model-1d06a0d7_queries_typos-ec28a584_no-reranker-7521044b.md
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
## Evaluation Report
|
| 2 |
+
|
| 3 |
+
Generated: 2026-04-16 11:08:54
|
| 4 |
+
|
| 5 |
+
### Inputs
|
| 6 |
+
- Summary CSV: `summary_eval-bge-m3-ifc-kbob-finetuned-typos_model-1d06a0d7_queries_typos-ec28a584_no-reranker-7521044b.csv`
|
| 7 |
+
- Details CSV: `details_eval-bge-m3-ifc-kbob-finetuned-typos_model-1d06a0d7_queries_typos-ec28a584_no-reranker-7521044b.csv`
|
| 8 |
+
|
| 9 |
+
### Overview
|
| 10 |
+

|
| 11 |
+
|
| 12 |
+
### Leaderboard
|
| 13 |
+
|
| 14 |
+
#### Baseline (Bi-Encoder)
|
| 15 |
+
|
| 16 |
+
| Rank | Model | Hit@1 | Hit@10 | Hit@20 | Hit@30 | Hit@50 | MRR@10 | MAP@10 | nDCG@10 | Recall@10 | Avg expected score | Hit@1 95% CI | Hit@10 95% CI | MRR@10 95% CI | nDCG@10 95% CI | Top1 errors |
|
| 17 |
+
|---:|---|---:|---:|---:|---:|---:|---:|---:|---:|---:|---:|---|---|---|---|---:|
|
| 18 |
+
| 1 | models\\Hygroskopisch\\bge-m3-ifc-kbob-finetuned | 88.43% | 94.86% | 98.20% | 98.97% | 99.49% | 0.909 | 0.844 | 0.876 | 0.890 | 0.880 | [0.848, 0.918] | [0.928, 0.967] | [0.881, 0.935] | [0.847, 0.902] | 45 |
|
| 19 |
+
|
| 20 |
+
#### Reranked (Bi-Encoder + Cross-Encoder)
|
| 21 |
+
|
| 22 |
+
| Rank | Model | Cross-Encoder | Hit@1 | Hit@10 | Hit@20 | Hit@30 | Hit@50 | MRR@10 | MAP@10 | nDCG@10 | Recall@10 | Avg expected score | Hit@1 95% CI | Hit@10 95% CI | MRR@10 95% CI | nDCG@10 95% CI | Top1 errors |
|
| 23 |
+
|---:|---|---|---:|---:|---:|---:|---:|---:|---:|---:|---:|---:|---|---|---|---|---:|
|
| 24 |
+
|
| 25 |
+
Anzahl Queries: 389
|
| 26 |
+
|
| 27 |
+
### Hardest Queries (Baseline)
|
| 28 |
+
Queries mit den meisten Top1-Fehlern in der Baseline:
|
| 29 |
+
|
| 30 |
+
- (1 Fehler) IfcCourse ARMOUR5 Gestedin
|
| 31 |
+
- (1 Fehler) IfcCourse PAVEENT Asühalt
|
| 32 |
+
- (1 Fehler) IfcCovering MESMBRANE Sbdichtung
|
| 33 |
+
- (1 Fehler) IfcCovering WRYPPING Kunssttoff
|
| 34 |
+
- (1 Fehler) IfcMember CHORD Hokz
|
eval/queries_typos/overview_eval-bge-m3-ifc-kbob-finetuned-typos_model-1d06a0d7_queries_typos-ec28a584_no-reranker-7521044b.svg
ADDED
|
|
eval/queries_typos/summary_eval-bge-m3-ifc-kbob-finetuned-typos_model-1d06a0d7_queries_typos-ec28a584_no-reranker-7521044b.csv
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
|
|
|
|
|
|
|
| 1 |
+
model,pipeline_variant,cross_encoder_model,cases,hit@1,hit@10,hit@20,hit@30,hit@50,mrr,map@10,ndcg@10,recall@10,avg_expected_score,hit@1_ci_low,hit@1_ci_high,hit@10_ci_low,hit@10_ci_high,mrr@10_ci_low,mrr@10_ci_high,ndcg@10_ci_low,ndcg@10_ci_high
|
| 2 |
+
models\\Hygroskopisch\\bge-m3-ifc-kbob-finetuned,baseline,-,389,0.884319,0.948586,0.982005,0.989717,0.994859,0.909083,0.844199,0.875710,0.889752,0.880119,0.848329,0.917738,0.928021,0.966581,0.880868,0.934868,0.847480,0.901832
|
model.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:cf267a3d7f35ef54739d18b8ef5e682120e3b045467217b30f03d92a7cbf0f4a
|
| 3 |
+
size 2271064456
|
modules.json
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
[
|
| 2 |
+
{
|
| 3 |
+
"idx": 0,
|
| 4 |
+
"name": "0",
|
| 5 |
+
"path": "",
|
| 6 |
+
"type": "sentence_transformers.models.Transformer"
|
| 7 |
+
},
|
| 8 |
+
{
|
| 9 |
+
"idx": 1,
|
| 10 |
+
"name": "1",
|
| 11 |
+
"path": "1_Pooling",
|
| 12 |
+
"type": "sentence_transformers.models.Pooling"
|
| 13 |
+
},
|
| 14 |
+
{
|
| 15 |
+
"idx": 2,
|
| 16 |
+
"name": "2",
|
| 17 |
+
"path": "2_Normalize",
|
| 18 |
+
"type": "sentence_transformers.models.Normalize"
|
| 19 |
+
}
|
| 20 |
+
]
|
run_metadata.json
ADDED
|
@@ -0,0 +1,52 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"run_id": "generated_queries-mapping_generated_querie-bge-m3-e2-b32-lr2e-05-d0p1-s42-d1-f8c0ccef",
|
| 3 |
+
"rule_hash": "88814a6f2add361886c1919c0904b93a7afd0152",
|
| 4 |
+
"train_file": "Training/outputs/phase12/random_preselected_pairs_generated_queries-mapping_generated_querie-bge-m3-e2-b32-lr2e-05-d0p1-s42-d1-f8c0ccef.jsonl",
|
| 5 |
+
"base_model": "BAAI/bge-m3",
|
| 6 |
+
"output_dir": "models/Hygroskopisch/new/model",
|
| 7 |
+
"prefix_mode": "no_prefix",
|
| 8 |
+
"source_of_prefix_setting": "dense_only_bge_m3_default",
|
| 9 |
+
"dense_only_bge_m3_default_applied": true,
|
| 10 |
+
"legacy_prefix_experiment_active": false,
|
| 11 |
+
"device": "cuda",
|
| 12 |
+
"epochs": 2,
|
| 13 |
+
"batch_size": 32,
|
| 14 |
+
"learning_rate": 2e-05,
|
| 15 |
+
"warmup_ratio": 0.1,
|
| 16 |
+
"max_length": 128,
|
| 17 |
+
"dev_ratio": 0.1,
|
| 18 |
+
"seed": 42,
|
| 19 |
+
"fp16": true,
|
| 20 |
+
"hard_negative_mode": "fallback",
|
| 21 |
+
"hard_negative_selection": "random_preselected",
|
| 22 |
+
"num_hard_negatives": 2,
|
| 23 |
+
"model_selection_metric": "hit5_mrr10",
|
| 24 |
+
"hard_negative_stats": {
|
| 25 |
+
"records_total": 14748,
|
| 26 |
+
"dropped_non_positive_weight": 0,
|
| 27 |
+
"records_after_mode": 14748,
|
| 28 |
+
"records_with_hard_negatives": 14748,
|
| 29 |
+
"examples_total": 29496,
|
| 30 |
+
"examples_per_record_avg": 2.0,
|
| 31 |
+
"dropped_no_hard_negatives": 0,
|
| 32 |
+
"fallback_negatives_used": 0,
|
| 33 |
+
"fallback_fill_count": 0,
|
| 34 |
+
"dropped_unusable": 0,
|
| 35 |
+
"use_hard_negatives": 1,
|
| 36 |
+
"num_hard_negatives_requested": 2,
|
| 37 |
+
"renormalized_weight_applied": 14748,
|
| 38 |
+
"preselected_used": 29496,
|
| 39 |
+
"preselected_used_count": 29496,
|
| 40 |
+
"preselected_missing_runtime_fallback": 0,
|
| 41 |
+
"preselected_conflicts_with_positives": 0
|
| 42 |
+
},
|
| 43 |
+
"sampler_mode": "UniquePositiveBatchSampler",
|
| 44 |
+
"sampler_query_positive_union_aware": true,
|
| 45 |
+
"train_queries_with_multiple_positives": 3226,
|
| 46 |
+
"save_each_epoch": false,
|
| 47 |
+
"steps_per_epoch": 7418,
|
| 48 |
+
"total_pairs": 16386,
|
| 49 |
+
"train_pairs": 14748,
|
| 50 |
+
"dev_pairs": 1638,
|
| 51 |
+
"epoch_checkpoints": []
|
| 52 |
+
}
|
sentence_bert_config.json
ADDED
|
@@ -0,0 +1,4 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"max_seq_length": 128,
|
| 3 |
+
"do_lower_case": false
|
| 4 |
+
}
|
special_tokens_map.json
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"bos_token": {
|
| 3 |
+
"content": "<s>",
|
| 4 |
+
"lstrip": false,
|
| 5 |
+
"normalized": false,
|
| 6 |
+
"rstrip": false,
|
| 7 |
+
"single_word": false
|
| 8 |
+
},
|
| 9 |
+
"cls_token": {
|
| 10 |
+
"content": "<s>",
|
| 11 |
+
"lstrip": false,
|
| 12 |
+
"normalized": false,
|
| 13 |
+
"rstrip": false,
|
| 14 |
+
"single_word": false
|
| 15 |
+
},
|
| 16 |
+
"eos_token": {
|
| 17 |
+
"content": "</s>",
|
| 18 |
+
"lstrip": false,
|
| 19 |
+
"normalized": false,
|
| 20 |
+
"rstrip": false,
|
| 21 |
+
"single_word": false
|
| 22 |
+
},
|
| 23 |
+
"mask_token": {
|
| 24 |
+
"content": "<mask>",
|
| 25 |
+
"lstrip": true,
|
| 26 |
+
"normalized": false,
|
| 27 |
+
"rstrip": false,
|
| 28 |
+
"single_word": false
|
| 29 |
+
},
|
| 30 |
+
"pad_token": {
|
| 31 |
+
"content": "<pad>",
|
| 32 |
+
"lstrip": false,
|
| 33 |
+
"normalized": false,
|
| 34 |
+
"rstrip": false,
|
| 35 |
+
"single_word": false
|
| 36 |
+
},
|
| 37 |
+
"sep_token": {
|
| 38 |
+
"content": "</s>",
|
| 39 |
+
"lstrip": false,
|
| 40 |
+
"normalized": false,
|
| 41 |
+
"rstrip": false,
|
| 42 |
+
"single_word": false
|
| 43 |
+
},
|
| 44 |
+
"unk_token": {
|
| 45 |
+
"content": "<unk>",
|
| 46 |
+
"lstrip": false,
|
| 47 |
+
"normalized": false,
|
| 48 |
+
"rstrip": false,
|
| 49 |
+
"single_word": false
|
| 50 |
+
}
|
| 51 |
+
}
|
tokenizer.json
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:d2174406fd56fd8d5b49b5a7bc51c2a8a7986ceacaed6ad9f3ee57fbc799b84a
|
| 3 |
+
size 17083074
|
tokenizer_config.json
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"added_tokens_decoder": {
|
| 3 |
+
"0": {
|
| 4 |
+
"content": "<s>",
|
| 5 |
+
"lstrip": false,
|
| 6 |
+
"normalized": false,
|
| 7 |
+
"rstrip": false,
|
| 8 |
+
"single_word": false,
|
| 9 |
+
"special": true
|
| 10 |
+
},
|
| 11 |
+
"1": {
|
| 12 |
+
"content": "<pad>",
|
| 13 |
+
"lstrip": false,
|
| 14 |
+
"normalized": false,
|
| 15 |
+
"rstrip": false,
|
| 16 |
+
"single_word": false,
|
| 17 |
+
"special": true
|
| 18 |
+
},
|
| 19 |
+
"2": {
|
| 20 |
+
"content": "</s>",
|
| 21 |
+
"lstrip": false,
|
| 22 |
+
"normalized": false,
|
| 23 |
+
"rstrip": false,
|
| 24 |
+
"single_word": false,
|
| 25 |
+
"special": true
|
| 26 |
+
},
|
| 27 |
+
"3": {
|
| 28 |
+
"content": "<unk>",
|
| 29 |
+
"lstrip": false,
|
| 30 |
+
"normalized": false,
|
| 31 |
+
"rstrip": false,
|
| 32 |
+
"single_word": false,
|
| 33 |
+
"special": true
|
| 34 |
+
},
|
| 35 |
+
"250001": {
|
| 36 |
+
"content": "<mask>",
|
| 37 |
+
"lstrip": true,
|
| 38 |
+
"normalized": false,
|
| 39 |
+
"rstrip": false,
|
| 40 |
+
"single_word": false,
|
| 41 |
+
"special": true
|
| 42 |
+
}
|
| 43 |
+
},
|
| 44 |
+
"bos_token": "<s>",
|
| 45 |
+
"clean_up_tokenization_spaces": true,
|
| 46 |
+
"cls_token": "<s>",
|
| 47 |
+
"eos_token": "</s>",
|
| 48 |
+
"mask_token": "<mask>",
|
| 49 |
+
"model_max_length": 8192,
|
| 50 |
+
"pad_token": "<pad>",
|
| 51 |
+
"sep_token": "</s>",
|
| 52 |
+
"sp_model_kwargs": {},
|
| 53 |
+
"tokenizer_class": "XLMRobertaTokenizer",
|
| 54 |
+
"unk_token": "<unk>"
|
| 55 |
+
}
|