Ideas
Follow


MATLAB is looking forward to having an intelligent AI programming assistant similar to GitHub Copilot

cui,xingxing on 5 Nov 2024 (Edited on 5 Nov 2024)
Latest activity Reply by cui,xingxing on 11 Dec 2024 at 1:04

In the past two years, large language models have brought us significant changes, leading to the emergence of programming tools such as GitHub Copilot, Tabnine, Kite, CodeGPT, Replit, Cursor, and many others. Most of these tools support code writing by providing auto-completion, prompts, and suggestions, and they can be easily integrated with various IDEs.
As far as I know, aside from the MATLAB-VSCode/MatGPT plugin, MATLAB lacks such AI assistant plugins for its native MATLAB-Desktop, although it can leverage other third-party plugins for intelligent programming assistance. There is hope for a native tool of this kind to be built-in.
Thomas
Thomas on 21 Nov 2024 (Edited on 21 Nov 2024)
In the meantime, I've been using Cursor IDE (an AI forward fork of VS Code) with the Matlab VS Code extension made by Mathworks. I'm able to pick my LLM from ChatGPT or Claude. The Matlab extension makes it possible to execute code from the Cursor IDE. There is still missing functionality with Cursor + Matlab extension that a native Matlab IDE with AI would enable. E.g. a native implementation would give the LLM info about the dimensions and class of each variable in the workspace, and access to the command history, etc. I have a workaround for this where every error and warning get written to a log file, and a script that writes the size and class of all workspace variables to a text file. Then these text files are readible by Cursor. This lets me say simply to Cursor: "debug the error using the log files"
Also, it is somewhat remarkable how well ChatGPT and Claude write Matlab given that these LLM probably received little to no post-training directly on Matlab since executing Matlab isn't opensource. Mathworks could take pre-trained LLM and teach it to debug Matlab with closed-loop reinforcement learning or do other post-training so that the LLM provides helpful suggestions.
cui,xingxing
cui,xingxing on 11 Dec 2024 at 1:04
If there were a version similar to the ChatGPT o1(plugin) just released by OpenAI, it would be great. It essentially uses reinforcement-driven learning and chain-of-thought reasoning for inference. MathWorks could train a similar pre-trained model or make some fine-tuning specific to its products.
Walter Roberson
Walter Roberson on 5 Nov 2024
I have heard rumours that something along this line is being worked on. Not sure when it will arrive.
Toshiaki Takeuchi
Toshiaki Takeuchi on 5 Nov 2024
I am with you on this and this post shows that MathWorks has been actively looking into this space. It's promising!
cui,xingxing
cui,xingxing on 5 Nov 2024
Yes, I have read this blog, but these methods do not have deep integration with the MATLAB IDE, such as AI code completion directly while writing code in the editor.
Toshiaki Takeuchi
Toshiaki Takeuchi on 5 Nov 2024 (Edited on 5 Nov 2024)
Speaking of the IDE, have you tried the New Desktop Beta?
Getting this finished is a key priority and it will enable a lof of new features.
cui,xingxing
cui,xingxing on 6 Nov 2024 (Edited on 6 Nov 2024)
I've tried New Desktop Beta several times since this new desktop first launched the year before last, and it's still not perfect in many ways, and I've already mentioned my feedback several times! I also hope to integrate an AI-assisted programming assistant into the new desktop in the near future!@Toshiaki Takeuchi
Toshiaki Takeuchi
Toshiaki Takeuchi on 6 Nov 2024
Thank you for providing feedback!