# LibreAssist

## Overview

LibreAssist is a Open and Local Assistance program designed to help you with your personal computer needs. It is built
using C++
and utilizes the Llama.cpp framework, along with supporting Llama Models. These models are pre-trained and customized
using the EasyDeL platform, offering a wide range of functionalities tailored to various requirements.

## Features

- **C++ Llama.cpp GGML Framework**: The program is built using the C++ language and utilizes the Llama.cpp framework for
  efficient performance.
- **Llama Models**: LibreAssist includes a variety of Llama Models, including pre-trained and customized models tailored
  to specific user needs.
- **EasyDeL Platform**: The models have been trained using the EasyDeL platform, ensuring high-quality and accurate
  assistance.
- **Customized Models**: Users can access models customized for their specific needs, such as coding assistance, grammar
  correction, and more.

## Getting Started

To use LibreAssist, follow these steps:

1. Clone the LibreAssist repository from GitHub.

```shell
git clone https://github.com/erfanzar/LibreAssist.git
```

2. Install the necessary dependencies and libraries as specified in the documentation.

```shell
python -m pip install -r requirements.txt
```

3. Run the program and start utilizing the available models for your personal computer needs.


```shell
python scripts/gradio_launch.py
```

> [!TIP]
> You can use other models too but you need to make sure those model project
>  structed just like LinguaMatic Downloading and ggml Formating struct

## System Requirements

LibreAssist is designed to be lightweight and can run on a wide range of personal computers, including low-end PCs with
a minimum of 4GB of RAM and a CPU with good speed.

We hope LibreAssist proves to be a valuable tool for your personal computer needs!

## Usage

LibreAssist provides a diverse set of functionalities, including:

- Coding assistance
- Sentiment analysis
- Language translation
- Chatbots and virtual assistants
- Text summarization
- Named entity recognition
- Question answering systems
- Text classification
- Language generation
- Grammar models
- Information extraction

> [!NOTE]
> Pre-Trained Models for such usage in LibreAssist Are LinguaMatic Models which
> support Coder and Virtual Assistance Models but each one have different
> Model Usage Be Careful with using Them

## Contributing

If you would like to contribute to LibreAssist, please follow the guidelines outlined in the CONTRIBUTING.md file in the
repository.

## License

LibreAssist is licensed under the [Apache v2.0](). See the LICENSE.md file for more details.

## Support

For any questions or issues, please contact me [erfanzare810@gmail.com](erfanzare810@gmail.com).

Thank you for using LibreAssist! We hope it enhances your personal computer experience.
