QuantBridge/distilbert-energy-intelligence-multitask-v2
06
DistilBERT Energy Intelligence Multitask NER — v2
Model ID: Quantbridge/distilbert-energy-intelligence-multitask-v2
A domain-specific fine-tuned DistilBERT model for Named Entity Recognition across energy markets, financial instruments, geopolitics, corporate events, and technology. This is a broad-coverage multitask NER model designed for intelligence extraction from financial news and market commentary.
The model recognises 59 entity types (119 BIO labels including B-/I- prefixes) spanning multiple intelligence domains.
Entity Taxonomy
Financial Instruments & Markets
Financial Institutions
Macro & Policy
Energy Domain
Geopolitical
Corporate Events
Infrastructure & Supply Chain
Risk & Events
Technology
People & Organizations
Usage
from transformers import pipeline
ner = pipeline(
"token-classification",
model="Quantbridge/distilbert-energy-intelligence-multitask-v2",
aggregation_strategy="simple",
)
text = (
"The Federal Reserve held interest rates steady as Brent crude fell below $75 "
"following OPEC+ production cuts and renewed sanctions on Russian energy exports."
)
results = ner(text)
for entity in results:
print(f"{entity['word']:<35} {entity['entity_group']:<25} {entity['score']:.3f}")Example output:
Federal Reserve CENTRAL_BANK 0.961
Brent TRADING_HUB 0.954
OPEC+ REGULATORY_BODY 0.947
Russian energy exports SANCTION 0.932Load model directly
from transformers import AutoTokenizer, AutoModelForTokenClassification
import torch
model_name = "Quantbridge/distilbert-energy-intelligence-multitask-v2"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForTokenClassification.from_pretrained(model_name)
model.eval()
text = "Goldman Sachs cut its oil price forecast after OPEC+ agreed to extend output cuts."
inputs = tokenizer(text, return_tensors="pt")
with torch.no_grad():
outputs = model(**inputs)
predicted_ids = outputs.logits.argmax(dim=-1)[0]
tokens = tokenizer.convert_ids_to_tokens(inputs["input_ids"][0])
for token, label_id in zip(tokens, predicted_ids):
label = model.config.id2label[label_id.item()]
if label != "O" and not token.startswith("["):
print(f"{token.lstrip('##'):<25} {label}")Model Details
Intended Use
This model is designed for financial and energy intelligence extraction — automated NER over news feeds, earnings transcripts, regulatory filings, and geopolitical reports. It is a base model suitable for:
- Structured data extraction from unstructured financial news
- Entity linking and knowledge graph population
- Signal detection for trading and risk systems
- Geopolitical risk monitoring
Out-of-scope use
- General-purpose NER on non-financial text
- Languages other than English
- Documents with heavy technical jargon outside the financial/energy domain
Limitations
- English-only
- Optimised for news-style formal writing; may underperform on social media or informal text
- 59-label taxonomy may produce overlapping predictions for ambiguous entities (e.g. a company that is also an energy company)
- BIO scheme does not support nested entities
License
Apache 2.0 — see LICENSE.
