This section gives the minimum background needed to use FIM-PP and is adapted from Berghaus et al. (2026).
What FIM-PP Infers¶
FIM-PP is a Foundation Inference Model for marked temporal point processes. A marked temporal point process is a sequence of event times
where each event arrives at time and carries a discrete mark describing its type.
The goal is to infer the conditional intensity
which describes how likely an event of type is to occur at time given the history .
Rather than training a new neural point-process model for every dataset, FIM-PP is pretrained on a broad synthetic distribution of point processes and then used in-context on new event data.

Figure 1:FIM-PP encodes context paths and attends to them when estimating the conditional intensity of a target history.
Hawkes Processes as the Training Prior¶
The released checkpoint is trained on a broad family of Hawkes-style processes. For each mark , the conditional intensity is of the form
where
is a base intensity,
is an interaction kernel, and
determines whether the interaction is excitatory, inhibitory, or absent.
This gives FIM-PP a strong prior over interpretable point-process dynamics while still allowing the pretrained model to generalize beyond the exact synthetic processes seen during training.
Inputs and Outputs¶
The released FIM-PP checkpoint expects a context/inference split:
context_event_times,context_event_types,context_seq_lengthsinference_event_times,inference_event_types,inference_seq_lengthsintensity_evaluation_times
Given these tensors, the model returns predicted Hawkes intensity parameters together with evaluated intensity curves. If ground-truth functions are provided, it can also return target intensity values and losses for comparison.
Zero-Shot Use vs Fine-Tuning¶
Zero-shot: Use the pretrained checkpoint directly on a new dataset and inspect the predicted intensity curves or downstream next-event behavior.
Fine-tuning: Continue training the pretrained checkpoint on a target dataset using
scripts/hawkes/fim_finetune.py. This is useful when the target domain contains recurring patterns that are weakly represented by the synthetic prior.
The released checkpoint is configured for up to 22 marks.

Figure 2:Example intensity estimates from the FIM-PP paper on synthetic and real-world data.
Practical Recommendation¶
For user-facing workflows, prefer the standardized Hugging Face path:
from transformers import AutoModel
model = AutoModel.from_pretrained("FIM4Science/fim-pp", trust_remote_code=True)This is the primary path documented in the companion tutorial notebook. The lower-level fallback FIMHawkes.load_model(...) remains useful for debugging local checkpoints.
- Berghaus, D., Seifner, P., Cvejoski, K., Ojeda, C., & Sánchez, R. J. (2026). In-Context Learning of Temporal Point Processes with Foundation Inference Models. The Fourteenth International Conference on Learning Representations. https://openreview.net/forum?id=h9HwUAODFP