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 549e55b3.
Loading
Please sign in to comment