model description and paper/repo links
Browse files
README.md
CHANGED
|
@@ -8,4 +8,28 @@ library_name: transformers
|
|
| 8 |
pipeline_tag: text2text-generation
|
| 9 |
tags:
|
| 10 |
- code
|
| 11 |
-
---
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 8 |
pipeline_tag: text2text-generation
|
| 9 |
tags:
|
| 10 |
- code
|
| 11 |
+
---
|
| 12 |
+
|
| 13 |
+
# CodeTIDAL5
|
| 14 |
+
|
| 15 |
+
We present CodeTIDAL5, a model for type inference on untyped TypeScript / JavaScript!
|
| 16 |
+
The model was introduced as part of the paper
|
| 17 |
+
|
| 18 |
+
[_Learning Type Inference for Enhanced Dataflow Analysis_](https://davidbakereffendi.github.io/assets/pdf/preprint_6676_ESORICS23.pdf)
|
| 19 |
+
Lukas Seidel, Sedick David Baker Effendi, Xavier Pinho, Konrad Rieck, Brink van der Merwe and Fabian Yamaguchi
|
| 20 |
+
ESORICS 2023
|
| 21 |
+
|
| 22 |
+
From the abstract:
|
| 23 |
+
We propose CodeTIDAL5, a Transformer-based model trained to reliably
|
| 24 |
+
predict type annotations. For effective result retrieval and re-integration,
|
| 25 |
+
we extract usage slices from a program’s code property graph.
|
| 26 |
+
Comparing our approach against recent neural type inference systems, our
|
| 27 |
+
model outperforms the current state-of-the-art by 7.85% on the ManyTypes4TypeScript benchmark, achieving 71.27% accuracy overall.
|
| 28 |
+
|
| 29 |
+
## Intended Use
|
| 30 |
+
The model was designed for use with the code analysis platform [Joern](https://github.com/joernio/joern).
|
| 31 |
+
As part of the paper, we devise a system which seemlessly integrates type inference recommendations from the CodeTIDAL5 model in Joern's
|
| 32 |
+
Code Property Graphs (CPGs) for enriched context information, aiming at improved taint tracking and dataflow analysis.
|
| 33 |
+
|
| 34 |
+
An implementation of this approach can be found in the paper's artifact repository:
|
| 35 |
+
https://github.com/joernio/joernti-codetidal5
|