https://github.com/spignelon/cleverterm
CleverTerm is a prototype LSTM model trained on bash history, capable of generating suggestions for the next Linux command based on previous user input. The project is licensed under GPL v3 and uses bash history data from various sources, including Kaggle datasets and GitHub repositories.
https://github.com/spignelon/cleverterm
artificial-intelligence autocomplete autosuggestions lstm lstm-model machine-learning terminal text-prediction
Last synced: 2 months ago
JSON representation
CleverTerm is a prototype LSTM model trained on bash history, capable of generating suggestions for the next Linux command based on previous user input. The project is licensed under GPL v3 and uses bash history data from various sources, including Kaggle datasets and GitHub repositories.
- Host: GitHub
- URL: https://github.com/spignelon/cleverterm
- Owner: spignelon
- License: gpl-3.0
- Created: 2023-03-28T13:47:38.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2023-05-09T07:00:37.000Z (about 2 years ago)
- Last Synced: 2025-01-18T15:34:36.051Z (4 months ago)
- Topics: artificial-intelligence, autocomplete, autosuggestions, lstm, lstm-model, machine-learning, terminal, text-prediction
- Language: Jupyter Notebook
- Homepage:
- Size: 1.44 MB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# CleverTerm
CleverTerm is a prototype project that utilizes a LSTM model trained on bash history to suggest the next word in a command line interface. The project is unreleased and is currently in its alpha version.
## Model Summary
```
Model: "sequential"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
embedding (Embedding) (None, None, 14) 347858
lstm (LSTM) (None, None, 100) 46000
lstm_1 (LSTM) (None, 100) 80400
dense (Dense) (None, 100) 10100
dense_1 (Dense) (None, 24847) 2509547
=================================================================
Total params: 2,993,905
Trainable params: 2,993,905
Non-trainable params: 0
_________________________________________________________________
```
The model was trained using TensorFlow and has a total of 2,993,905 parameters, all of which are trainable.## Usage
The trained model can be found at https://github.com/spignelon/CleverTerm/releases/download/v0.0.1-alpha/cleverterm_model.h5. More information about the project, including the code used to train the model, can be found in the following Jupyter notebook: https://github.com/spignelon/CleverTerm/blob/main/CleverTerm%20LSTM.ipynb.## Data Source
The bash history data used to train the model was taken from [this Kaggle dataset](https://www.kaggle.com/datasets/thuyngandao/bashlogs), as well as various .bash_history files uploaded to GitHub and GitHub gists.## Future Development
At the moment, CleverTerm is an experimental project and its future development is uncertain. However, we may continue working on it in the future to improve its accuracy and functionality.## License
This project is licensed under the GNU General Public License v3.0