Inspiration
Make automation more accessible than ever. Imitate the ChatGPT revolution.
What it does
A Chatbot accepts natural language input for a command line task. Autonomously execute a series of commands to complete the task. Audit the tasks performed using a blockchain to produce an immutable, append only audit log. Retrieve task data from blockchain and visualize it using a dynamic web dashboard.
How we built it
- Asynchronous Python with Tornado for command line management
- Python Flask+HTML,CSS,JS to serve the Chatbot as a webapp
- nltk+tensorflow to train a deep learning model for understanding user input.
- gemini generative api to suggest commands for executing task.
- MultiChain to implement private and scalable blockchain.
- Node.js to act as MultiChain endpoint.
- Streamlit(Python) to implement dynamic web dashboard.
- Unix command line.
Challenges we ran into
- Python is synchronous. To make it asynchronous is challenging.
- Direct use of TF models consumes high storage space. Hence, model compression is required.
- Making web dashboard dynamic.
- To execute commands in synchronization was difficult.
- To retrieve command execution time and status was challenging.
Accomplishments that we're proud of
- Built a scalable Python web app.
- Packaged the Python webapp into a PyPi package.
- Configured the Chatbot to interface with the Python webapp for command execution.
- Successfully built a web dashboard that updates itself periodically/
What we learned
- Unix.
- Networking
- Blockchain
- Deployment patterns
What's next for Unix Command line automation
Incorporate a deep learning model that can not only suggest tasks but also interface with the command line. This will replace the user of a command line. All admin tasks will be automated.
Log in or sign up for Devpost to join the conversation.