llvm-project/clang-tools-extra/clangd/unittests/decision_forest_model
Utkarsh Saxena 985deba931 Revert "Temporarily Revert "[clangd] Add Random Forest runtime for code completion.""
We intend to replace heuristics based code completion ranking with a Decision Forest Model.

This patch introduces a format for representing the model and an inference runtime that is code-generated at build time.
- Forest.json contains all the trees as an array of trees.
- Features.json describes the features to be used.
- Codegen file takes the above two files and generates CompletionModel containing Feature struct and corresponding Evaluate function.
   The Evaluate function maps a feature to a real number describing the relevance of this candidate.
- The codegen is part of build system and these files are generated at build time.
- Proposes a way to test the generated runtime using a test model.
  - Replicates the model structure in unittests.
  - unittest tests both the test model (for correct tree traversal) and the real model (for sanity).

This reverts commit 549e55b3d5.
2020-09-19 10:54:04 +02:00
..
CategoricalFeature.h Revert "Temporarily Revert "[clangd] Add Random Forest runtime for code completion."" 2020-09-19 10:54:04 +02:00
features.json Revert "Temporarily Revert "[clangd] Add Random Forest runtime for code completion."" 2020-09-19 10:54:04 +02:00
forest.json Revert "Temporarily Revert "[clangd] Add Random Forest runtime for code completion."" 2020-09-19 10:54:04 +02:00