Table of Contents
ALAA (Arch Linux AI Assistant) is an innovative open-source chatbot designed to assist users with various aspects of Arch Linux, a popular and advanced Linux distribution known for its simplicity, customization, and user-centric approach. Developed as a proof-of-concept, ALAA aims to bridge the gap between the powerful capabilities of open-source software and the demand for customer support typically associated with proprietary alternatives.
The primary purpose of ALAA is to offer Arch Linux users a reliable and responsive virtual assistant that can help them navigate through the intricacies of the operating system. Unlike traditional customer support, which may not be feasible for many open-source projects, ALAA leverages cutting-edge language models, such as OpenAI's GPT-3.5, integrated with the Hugging Face framework, to provide intelligent and context-aware responses to users' queries.
The inspiration behind ALAA stems from the recognition that open-source projects often lack dedicated customer support channels due to their volunteer-driven nature. Consequently, some users may opt for proprietary software with customer support, even if it means sacrificing the benefits of open-source solutions. ALAA seeks to challenge this trade-off by offering a feature-rich and knowledgeable chatbot that can rival the support offered by proprietary alternatives.

First I use "archPDf_VectorStore.py" to create "Arch_Index" vector database using "FAISS" and "Instructor" as embedding tool (How that Worked is shown in the image above)

Then in app.py I import the vectorDatabase and create whole chat UI using stremlit and use OpenAI (ChatOpenAI) to get response using the vector database and embedding. (How that Worked is shown in the image above)
To install the ALAA Chat App, please follow these steps:
- Clone the repository to your local machine.
- Install the required dependencies by running the following command:
pip install -r requirements.txt - Obtain an API key from OpenAI and add it to the
.envfile in the project directory.
To use the ALAA Chat App, follow these steps:
-
Ensure that you have installed the required dependencies and added the OpenAI API key to the
.envfile. -
Run the
app.pyfile using the Streamlit CLI. Execute the following command:streamlit run app.py -
The application will launch in your default web browser, displaying the user interface.
-
Ask questions in natural language about Arch Linux using the chat interface.
- Creating and using better Arch wiki PDF (We Used arch.pdf (which was automatically created) instead of Arch_Linux_Wiki_The_distribution.pdf(which was manully created))
- Making it completely free (I didn't use LLMs that are free and opensource they need to be finetuned to give good enough results and to do that i will need a far better machine)
- Making Other ChatBot that are available for other distros and opensource projects
- Gentoo
- Garuda Linux
- Bedrock Linux
- More
See the open issues for a full list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Distributed under the AGPLv3. See LICENSE.txt for more information.
Copyright (C) 2023 Saurabh Singh Tanwar
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published
by the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
Saurabh Singh Tanwar - @twitter_handle - saurabhstanwar@gmail.com
Project Link: https://github.com/ssinghtanwar/ALAA
