metadata
language:
- en
- fr
- es
- pt
tags:
- falcon3
base_model: tiiuae/Falcon3-7B-Base
license: other
license_name: falcon-llm-license
license_link: https://falconllm.tii.ae/falcon-terms-and-conditions.html
Falcon3-7B-Instruct
Falcon3 family of Open Foundation Models is a set of pretrained and instruct LLMs ranging from 1B to 10B.
This repository contains the Falcon3-7B-Instruct. It achieves state of art results (at release's time) on reasoning, language understanding, instruction following, code and mathematics tasks. Falcon3-7B-Instruct supports 4 languages (english, french, spanish, portuguese) and a context length up to 32K.
Model Details
- Architecture
- Transformer based causal decoder only architecture
- 28 decoder blocks
- Grouped query attention (GQA) for faster inference: 12 query heads and 4 KV heads
- Wider head dimension: 256
- High RoPE value to support long context understanding: 1000042
- Uses SwiGLU and RMSNorm
- 32k context length
- 131k vocab size
- Pretrained on 14 Gigatokens of datasets comprising of web, code, STEM, high quality and mutlilingual data using 2048 H100 GPU chips
- Postrained on 1.2 million samples of STEM, conversations, code, safety and function call data
- Supports EN, FR, ES, PT
- Developed by Technology Innovation Institute
- License: TII Falcon-LLM License 2.0
- Model Release Date: December 2024
Getting started
Click to expand
from transformers import AutoTokenizer, AutoModelForCausalLM
from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "tiiuae/Falcon3-7B-Instruct"
model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype="auto",
device_map="auto"]
)
tokenizer = AutoTokenizer.from_pretrained(model_name)
prompt = "How many hours in one day?"
messages = [
{"role": "system", "content": "You are a helpful friendly assistant Falcon3 from TII, try to follow instructions as much as possible."},
{"role": "user", "content": prompt}
]
text = tokenizer.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True
)
model_inputs = tokenizer([text], return_tensors="pt").to(model.device)
generated_ids = model.generate(
**model_inputs,
max_new_tokens=1024
)
generated_ids = [
output_ids[len(input_ids):] for input_ids, output_ids in zip(model_inputs.input_ids, generated_ids)
]
response = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0]
print(response)
Benchmarks
We report in the following table our internal pipeline benchmarks:
Category | Benchmark | Llama-3.1-8B-Instruct | Qwen2.5-7B-Instruct | Falcon3-7B-Instruct |
---|---|---|---|---|
General | MMLU (5-shot) | 55.9 | 72.4 | 68 |
MMLU-PRO (5-shot) | 21.8 | 35.8 | 40.7 | |
IFEval | 78.8 | 74.7 | 76.5 | |
Math | GSM8K (5-shot) | 19.2 | 33.7 | 78.8 |
GSM8k (8-shot, COT) | 79.8 | 72.7 | 80.9 | |
MATH Lvl-5 (4-shot) | 10.4 | 26 | 33.1 | |
Reasoning | Arc Challenge (25-shot) | 46.6 | 55.7 | 65.9 |
GPQA (0-shot) | 33.6 | 31.9 | 32 | |
GPQA (0-shot, COT) | 9.6 | 13.8 | 22.3 | |
MUSR (0-shot) | 38.6 | 40.7 | 46.4 | |
BBH (3-shot) | 43.7 | 53.9 | 52.4 | |
BBH (3-shot, COT) | 6.7 | 21.2 | 69.3 | |
CommonSense Understanding | PIQA (0-shot) | 78.9 | 73.7 | 78.8 |
SciQ (0-shot) | 80.2 | 50.9 | 94.7 | |
Winogrande (0-shot) | - | - | 70.4 | |
OpenbookQA (0-shot) | 46.2 | 42.4 | 45.8 | |
Instructions following | MT-Bench (avg) | 7.86 | 8.54 | 8.36 |
Alapaca (WC) | 26.57 | 31.5 | 26.13 | |
Tool use | BFCL AST (avg) | TODO | TODO | TODO |
Citation
If Falcon3 family were helpful to your work, feel free to give us a cite.
@misc{Falcon3,
title = {The Falcon 3 family of Open Models},
author = {TII Team},
month = {December},
year = {2024}
}