Edit model card

CodeTIDAL5

We present CodeTIDAL5, a model for type inference on untyped TypeScript / JavaScript!
The model was introduced as part of the paper

Learning Type Inference for Enhanced Dataflow Analysis
Lukas Seidel, Sedick David Baker Effendi, Xavier Pinho, Konrad Rieck, Brink van der Merwe and Fabian Yamaguchi
ESORICS 2023

From the abstract:
We propose CodeTIDAL5, a Transformer-based model trained to reliably predict type annotations. For effective result retrieval and re-integration, we extract usage slices from a program’s code property graph.
Comparing our approach against recent neural type inference systems, our model outperforms the current state-of-the-art by 7.85% on the ManyTypes4TypeScript benchmark, achieving 71.27% accuracy overall.

Intended Use

The model was designed for use with the code analysis platform Joern.
As part of the paper, we devise a system which seemlessly integrates type inference recommendations from the CodeTIDAL5 model in Joern's Code Property Graphs (CPGs) for enriched context information, aiming at improved taint tracking and dataflow analysis.

An implementation of this approach can be found in the paper's artifact repository:
https://github.com/joernio/joernti-codetidal5

Downloads last month
13
Inference Examples
This model does not have enough activity to be deployed to Inference API (serverless) yet. Increase its social visibility and check back later, or deploy to Inference Endpoints (dedicated) instead.

Dataset used to train joernio/codetidal5