Instructions to use maxint-inc/Finsight-Qwen3-14B-CPT with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use maxint-inc/Finsight-Qwen3-14B-CPT with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="maxint-inc/Finsight-Qwen3-14B-CPT") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)# pip install -U transformers accelerate # Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("maxint-inc/Finsight-Qwen3-14B-CPT") model = AutoModelForCausalLM.from_pretrained("maxint-inc/Finsight-Qwen3-14B-CPT", device_map="auto") messages = [ {"role": "user", "content": "Who are you?"}, ] inputs = tokenizer.apply_chat_template( messages, add_generation_prompt=True, tokenize=True, return_dict=True, return_tensors="pt", ).to(model.device) outputs = model.generate(**inputs, max_new_tokens=256) print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use maxint-inc/Finsight-Qwen3-14B-CPT with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "maxint-inc/Finsight-Qwen3-14B-CPT" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "maxint-inc/Finsight-Qwen3-14B-CPT", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/maxint-inc/Finsight-Qwen3-14B-CPT
- SGLang
How to use maxint-inc/Finsight-Qwen3-14B-CPT with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "maxint-inc/Finsight-Qwen3-14B-CPT" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "maxint-inc/Finsight-Qwen3-14B-CPT", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "maxint-inc/Finsight-Qwen3-14B-CPT" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "maxint-inc/Finsight-Qwen3-14B-CPT", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Docker Model Runner
How to use maxint-inc/Finsight-Qwen3-14B-CPT with Docker Model Runner:
docker model run hf.co/maxint-inc/Finsight-Qwen3-14B-CPT
Finsight — Qwen3-14B Finance (CPT only)
This is the intermediate checkpoint from the Finsight finance-adaptation of
Qwen/Qwen3-14B-Base: the model after
continued pre-training on raw finance text, but before instruction tuning.
👉 For the finished, instruction-following model, use
maxint-inc/Finsight-Qwen3-14B-CPT-SFT.
This CPT-only repo is shared for research/ablation.
⚠️ Base-style checkpoint — it has no chat template and is not instruction-tuned. It completes text; it does not follow instructions well yet.
What this stage did
We continued pre-training the base model on ~330M tokens of raw finance text so it would better understand financial language before any instruction tuning:
| Source | What it is |
|---|---|
SEC 10-K filings (anonymous-md/EDGAR_FILINGS_DATASET) |
Full annual-report text |
Financial news (ashraq/financial-news-articles) |
Market/company news |
Industry finance corpus (BAAI/IndustryCorpus_Finance) |
Long-form finance text |
Trained with QLoRA (4-bit NF4 + LoRA r=64, α=128), 800 steps (~0.2B tokens), then merged to 16-bit. Corpus decontaminated against the benchmark test sets.
Results (on the FinBen flare_* finance benchmarks)
Same samples, greedy decoding, via lm-evaluation-harness.
| Benchmark (skill) | Base | CPT (this) | Final (CPT→SFT) |
|---|---|---|---|
| FinQA — table math | 0.019 | 0.082 | 0.126 |
| ConvFinQA — multi-turn math | 0.148 | 0.146 | 0.203 |
| FPB — sentiment | 0.812 | 0.790 | 0.794 |
| Headlines — classification | 0.745 | 0.714 | 0.721 |
| NER — extraction (F1) | 0.238 | 0.150 | 0.180 |
| FiQA-SA — aspect sentiment | 0.681 | 0.319 | 0.370 |
| Average | 0.441 | 0.367 | 0.399 |
Reading this: CPT alone improved FinQA numerical reasoning (0.019 → 0.082) but lowered the average — continued pre-training on raw text sharpened reasoning while disrupting classification calibration. The following SFT stage recovers part of the gap. See the final model card for the full pipeline, datasets, benchmarks, and analysis.
Training details
- Base: Qwen/Qwen3-14B-Base (Apache-2.0)
- Method: QLoRA CPT (r=64, α=128), packed seq len 2048, effective batch 128, lr 2e-4 cosine, 800 steps, Flash-Attention 2.
- Hardware: 8× A100 SXM4 40 GB (AWS p4d.24xlarge), ~5 h.
Not financial advice. Verify all outputs.
- Downloads last month
- 7
Model tree for maxint-inc/Finsight-Qwen3-14B-CPT
Base model
Qwen/Qwen3-14B-Base