ChatGPT's code interpreter plugin as a chrome extension
JPT let's you run your Python code right within ChatGPT. No need for ChatGPT Plus or any ChatGPT plugins!
JPT uses Pyodide, a WASM-based Python interpreter. This means that your code executes completely within your browser. The only people who get to see your code is you and OpenAI!
Features
- Run Python code
- Edit Python code, but does not persist
- Upload files for Python to access, including Python modules
- Download files created in Python
- Standard library, numpy, matplotlib, and some other packages supported
- See output from stdout
- See plots from matplotlib
How to use
1. To run Python code, ask ChatGPT to write a hello world program in Python. Then press the "Run" button. It may take a while for the first run, but subsequent runs should be faster.
2. To edit Python code, press the "Edit" button. Once you are done editing, press "Edit" again to save.
3. To upload a file, press the "Upload" button and select the file you want to upload. You can then access the file in the current directory in Python.
4. To download a file, first save the file within Python and remember the name you saved the file as. Press the "Download" button, you will be prompted to save a file. Type in the name of the file you saved earlier, including the file extension. It must match exactly or it will not download. I'm aware this is not very user-friendly and I will make a proper UI in future versions.
5. To load your own module, upload your Python file. Then load the module dynamically. You can ask ChatGPT to give you an example of how to do this.
6. To load Python packages, use micropip. For example, to import scipy, use `micropip.install("scipy")`. You may also need to import micropip. More details here: https://pyodide.org/en/stable/usage/loading-packages.html
Known Issues
- Infinite loops will freeze JPT. Requires restarting the extension
- Input is not supported
Roadmap
- Interrupt execution
- Add indicator for initialization and execution
- Support input
- Export chat as Jupyter Notebook
- Reduce extension size
Latest reviews
- (2024-02-11) numesimai scurt: The extension works as expected. If you don't see the buttons, try the extension with a new Chrome profile that will have only this extension installed, or try it with a different Chrome browser, for example Chrome Beta, Chrome Dev or Chrome Canary. The reason for this is that extensions can conflict with each other and make themselves misbehave, leading them to not work anymore. If you found that the extension works as a single extension then it must be conflicting with another extension, for this I recommend SimpleExtManager: https://chromewebstore.google.com/detail/simpleextmanager/kniehgiejgnnpgojkdhhjbgbllnfkfdk , which will allow you to easily enable/disable extensions to find the culprit for conflicting. If for example you have 100 extensions, disable the first 50 and then check if the extension works, if it's not working, disable the next 25 extensions (so 75 extensions will be disabled). If you still didn't find the culprit, always split in half the remaining extensions, and disable the first half, until you find the conflicting extension. Sometimes it can be more than 2 extensions that are conflicting.
- (2023-08-05) Rex Ion: Awesome app! Thanks Song. What else can we do next? How do we make it more powerful to run using online APIs that can process code faster, and with higher hardware like GPU?
- (2023-07-22) Hanzi Jiang: Great work!! I really like that I can edit the code that chatgpt gives me so that I can tweak it a bit or add some test cases to make sure the code actually works. Also like the upload file feature so now I can read some numbers and make some graphs, but it would be nice if it can show me what files I have uploaded. The user experience could be improved
- (2023-07-14) Haseeb Mir: Hi, Thanks for inviting me to review this Extension. This is same like RunGPT exact replica like that extensions. So i will give same review as i gave to RunGPT. This is great extension for data visualisation using Python. Here are some of suggestions. 1.The output windows doesnt clear if we edit code and run it, 2.Save Code feature is missing. 3.Add more logs to console for errors. 4.The attach file button should be available all the time. And unlike my extension "ChatGPT Code Runner" which can run 70+ different programming languages these extensions only support python which is quite disappointing. But good job for data analysis using Python.
- (2023-07-07) Süleyman Bozkurt: really great app, I wonder how to update or install new packages in