Sorry, I have posted a lot about the tab auto completion, as I love this feature so much and heavily rely on this feature in my daily coding(more than 5 hours coding every day).
I really love the speed and latency of the auto completion from Cursor. It rarely make me wait while typing, this is awesome and make me feel very smooth in the coding work, except sometimes the unexpected abort error, but it works well most of the time.
I tried the Augment Code, which is an VSCode extension. I found that the context aware of the auto completion from Augment Code is awesome. I did a lot of experiments about this point:
Open a new file, and try to write some codes, if I want to use a constant defined outside this file, the Augment Code will still make the right suggestion codes about the constant while the Cursor may not. This means that the Augment Code may inference the suggest constant code under the whole project context, while Cursor may not. But the speed of the Augment Code is not as good as Cursor, it usually makes me wait after typing something which is a little unacceptable.
Itâs a common sense that the auto completion model should have a low latency and therefore cannot inject too much context during auto completion. There is always a trade off between the accurate and latency.
But I still hope the next generation of Fusion Tab model, may consider more context to generate more project-based context aware codes. Some suggestions or thoughts about the next completion mode:
-
Is it possible to put some of the model into the developerâs local machine? This may be not realistic as the local machine may donât have enough inference resources.
-
For the codebase context awareness, is it possible for the completion model to use the indexed codebase which is only used in the chat or composer functionality now. If we do some rag works before sending the completion request, itâs difficulty to guarantee the latency of the auto completion. Therefore, it seems that we should make another way to become more codebase context awareness for the completion model while keeping a low latency.
To keep a low latency, but become more codebase context awareness, is there a way to upload the codebase to the inference server(may be not the source code, in another format), make some pro-process and constraint the code completion inference under this specific code base scope. This will consume extra resources but can be exchanged with a specific business plan.
Anyway, the auto completion model is perfect only when it has a very low latency(donât make me wait while typing codes) and also have codebase context awareness(means accurate code suggestion).