General Introduction
Local File Organizer is an AI-powered local file management tool designed to help users organize and categorize files on their computers. The tool leverages advanced AI models such as Llama3.2 3B and Llava v1.6 to intelligently scan, reorganize, and categorize files via the Nexa SDK, ensuring user privacy while providing an efficient file management experience.
Simply put, Local File Organizer scans the folders you specify, and based on the content of the files, automatically labels, categorizes, and generates new file names for them, and also puts them in the corresponding folders.
There is no need for an internet connection throughout, all processing is done on your own device.
As soon as you enter two paths, one is the path of the folder you need to organize and the other is the path of the folder where you want to save the organized files, AI will start working.
Function List
- Document scanning: Automatically scans all files in the specified directory.
- content analysis: Analyze the content of documents using linguistic models and visual linguistic models.
- Classification of documents: Categorize documents according to content, date and type.
- file renaming: Generate relevant descriptions and filenames.
- Privacy: All operations are done locally without the need for an Internet connection.
- Multiple file support: Support text, image, PDF, Excel, PPT, CSV and other file formats.
- Real-time progress bar: Displays the real-time progress of file analysis.
- silent mode: Save all logs to a text file to reduce operational noise.
- dry run mode: Check the sorting results before committing changes.
Using Help
Installation 🛠
For SDK installation and modeling related questions, please refer to the here are Posted.
1. Install Python
Before installing the local file organizer, make sure Python is installed on your system; we recommend Python 3.12 or later.
You can download Python from the official website.
Follow the installation instructions for your operating system.
2. Cloning the code base
Use Git to clone this codebase to your local machine:
git clone https://github.com/QiuYannnn/Local-File-Organizer.git
Or download the code base as a ZIP file and extract it to your desired location.
3. Setting up the Python environment
Create a file named local_file_organizer
s new Conda environment, using Python 3.12:
conda create --name local_file_organizer python=3.12
Activate the environment:
conda activate local_file_organizer
4. Installation of the Nexa SDK ️
CPU Installation
To install the CPU version of the Nexa SDK, run:
pip install nexaai --prefer-binary --index-url https://nexaai.github.io/nexa-sdk/whl/cpu --extra-index-url https://pypi.org/simple --no- cache-dir
GPU Installation (Metal - macOS)
To install the version of the GPU that supports Metal (macOS), run:
CMAKE_ARGS="-DGGML_METAL=ON -DSD_METAL=ON" pip install nexaai --prefer-binary --index-url https://nexaai.github.io/nexa-sdk/whl/metal -- extra-index-url https://pypi.org/simple --no-cache-dir
About Support CUDA cap (a poem) AMD GPUs For detailed installation instructions for the Nexa SDK, see the main README for the mounting sectionThe
5. Installation of dependencies
- Make sure you are in the project directory:
cd path/to/Local-File-Organizer
commander-in-chief (military)
path/to/Local-File-Organizer
Replace with the actual path where you cloned or extracted the item. - Install the required dependencies:
pip install -r requirements.txt
Attention: If you have problems with any of the packages, install them separately:
pip install nexa Pillow pytesseract PyMuPDF python-docx
After activating the environment and installing the dependencies, run the script using the following command:
6. Run the script 🎉
python main.py
Usage Process
- Specify the input directory: After running the program, enter the path of the folder to be organized, for example:
/home/user/documents/input_files
- Specify the output directory: Enter the path to the folder where the organized files are stored, or press Enter to use the default path:
/home/user/documents/organized_folder
- View Progress: The program displays the file path loading time and directory tree so that the user can view the progress of file analysis in real time.
- File classification and renaming: The program generates relevant descriptions, folder names and file names based on the contents of the file and displays them in the terminal.
- Finish sorting: After organizing, users can view the categorized files in the specified output directory.
Advanced Features
- silent mode: Add when running the program
---silent
parameter to save all logs to a text file:python main.py --silent
- dry run mode: Add when running the program
--dry-run
parameter to check the sorting results without committing changes:python main.py --dry-run
- Changing the model: Users can change the AI model used via the CLI:
python main.py --model Llama3.2