From 724cf8b651fcdba68cdf0dae361bc72b4745d53a Mon Sep 17 00:00:00 2001 From: Andzejs Poprockis <80409979+andzejsp@users.noreply.github.com> Date: Mon, 17 Apr 2023 17:41:37 +0300 Subject: [PATCH 1/2] Starting to work on installer/launcher oneliner --- webui.bat | 264 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 264 insertions(+) create mode 100644 webui.bat diff --git a/webui.bat b/webui.bat new file mode 100644 index 00000000..e340b713 --- /dev/null +++ b/webui.bat @@ -0,0 +1,264 @@ +@echo off + +echo HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH +echo HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH +echo HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH +echo HHHHHHHHHHHH .HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH +echo HHHHHHHHHHH. ,HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH +echo HHHHHHHHHHHHH.## HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH +echo HHHHHHHHHHHHHHHHHHH#.HHHHH/*,*,*,*,*,*,*,*,***,*,**#HHHHHHHHHHHHHHHHHHHHHHHHHHHH +echo HHHHHHHHHHHHHHHHHHHHH.*,,***,***,***,***,***,***,*******HHHHHHHHHHHHHHHHHHHHHHHH +echo HHHHHHHHHHHHHHHHHHH*,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,*,,,,,HHHHHHHHHHHHHHHHHHHHH +echo HHHHHHHHHHHHHHHHH.,,,***,***,***,***,***,***,***,***,***,***/HHHHHHHHHHHHHHHHHHH +echo HHHHHHHHHHHHHHHH*,,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*HHHHHHHHHHHHHHHHHH +echo HHHHHHHHHHHHHHH#,***,***,***,***,***,***,***,***,***,***,***,**HHHHHHHHHHHHHHHHH +echo HHHHHHHHHH..HHH,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,*#HHHHHHHHHHHHHHHH +echo HHHHHHH,,,**,/H*,***,***,***,,,*,***,***,***,**,,,**,***,***,***H,,*,***HHHHHHHH +echo HHHHHH.*,,,*,,,,,*,*,*,***#HHHHH.,,*,*,*,*,**/HHHHH.,*,*,*,*,*,*,*,*****HHHHHHHH +echo HHHHHH.*,***,*,*,***,***,.HHHHHHH/**,***,****HHHHHHH.***,***,***,*******HHHHHHHH +echo HHHHHH.,,,,,,,,,,,,,,,,,,,.HHHHH.,,,,,,,,,,,,.HHHHHH,,,,,,,,,,,,,,,,,***HHHHHHHH +echo HHHHHH.,,,,,,/H,,,**,***,***,,,*,***,***,***,**,,,,*,***,***,***H***,***HHHHHHHH +echo HHHHHHH.,,,,*.H,,,,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,***H*,,,,/HHHHHHHHH +echo HHHHHHHHHHHHHHH*,***,***,**,,***,***,***,***,***,***,***,***,**.HHHHHHHHHHHHHHHH +echo HHHHHHHHHHHHHHHH,,,,,,,,*,,#H#,,,,,*,,,*,,,,,,,,*#H*,,,,,,,,,**HHHHHHHHHHHHHHHHH +echo HHHHHHHHHHHHHHHHH,,*,***,***,**/.HHHHHHHHHHHHH#*,,,*,***,***,*HHHHHHHHHHHHHHHHHH +echo HHHHHHHHHHHHHHHHHH,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*HHHHHHHHHHHHHHHHHH +echo HHHHHHHHHHHHHHHHHH**,***,***,***,***,***,***,***,***,***,***,*.HHHHHHHHHHHHHHHHH +echo HHHHHHHHHHHHHHHHHH*,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,*HHHHHHHHHHHHHHHHH +echo HHHHHHHHHHHHHHHHHH**,***,***,*******/..HHHHHHHHH.#/*,*,,,***,***HHHHHHHHHHHHHHHH +echo HHHHHHHHHHHHHHHHH*,*,*,******#HHHHHHHHHHHHHHHHHHHHHHHHHHHH./**,,,.HHHHHHHHHHHHHH +echo HHHHHHHHHHHHHHHH.,,*,***.HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH.*#HHHHHHHHHHHH +echo HHHHHHHHHHHHHHH/,,,*.HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH +echo HHHHHHHHHHHHHH,,#HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH +echo HHHHHHHHHHHH.HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH +echo HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH +echo HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH +echo HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH + +if not exist "./gpt4all-ui" mkdir "./gpt4all-ui" +cd +if not exist "./tmp" mkdir "./tmp" + +REM Check if Git is installed +echo "Checking for git..." +where git >nul 2>&1 +if %ERRORLEVEL% EQU 0 ( + goto GIT_CHECKED +) else ( + goto GIT_INSTALL +) +:GIT_FINISH + +REM Check if Git is installed +:GIT_CHECKED +echo "Git is installed." +goto GIT_SKIP + +:GIT_INSTALL +echo. +choice /C YN /M "Do you want to download and install Git?" +if errorlevel 2 goto GIT_CANCEL +if errorlevel 1 goto GIT_INSTALL_2 + +:GIT_INSTALL_2 +echo "Git is not installed. Installing Git..." +powershell.exe -Command "Start-Process https://git-scm.com/download/win -Wait" +goto GIT_SKIP + +:GIT_CANCEL +echo. +echo Git download cancelled. +echo Please install Git and try again. +pause +exit /b 1 + +:GIT_SKIP + +echo Cloning repository... +git clone https://github.com/nomic-ai/gpt4all-ui.git . + +REM Check if Python is installed +set /p="Checking for python..." nul 2>&1 +if %ERRORLEVEL% EQU 0 ( + goto PYTHON_CHECKED +) else ( + goto PYTHON_INSTALL +) +:PYTHON_CHECKED +echo "Python is installed." +goto PYTHON_SKIP + +:PYTHON_INSTALL +echo. +choice /C YN /M "Do you want to download and install python?" +if errorlevel 2 goto PYTHON_CANCEL +if errorlevel 1 goto PYTHON_INSTALL_2 + +:PYTHON_INSTALL_2 +REM Download Python installer +echo Downloading Python installer... +powershell -Command "Invoke-WebRequest -Uri 'https://www.python.org/ftp/python/3.10.0/python-3.10.0-amd64.exe' -OutFile 'tmp/python.exe'" +REM Install Python +echo Installing Python... +tmp/python.exe /quiet /norestart + +:PYTHON_CANCEL +echo Please install python and try again. +pause +exit /b 1 + +:PYTHON_SKIP + + +REM Check if pip is installed +set /p="Checking for pip..." nul 2>&1 +if %ERRORLEVEL% EQU 0 ( + goto PIP_CHECKED +) else ( + goto PIP_INSTALL +) +:PIP_CHECKED +echo "Pip is installed." +goto PIP_SKIP + +:PIP_INSTALL +echo. +choice /C YN /M "Do you want to download and install pip?" +if errorlevel 2 goto PIP_CANCEL +if errorlevel 1 goto PIP_INSTALL_2 + +:PIP_INSTALL_2 +REM Download get-pip.py +echo Downloading get-pip.py... +powershell -Command "Invoke-WebRequest -Uri 'https://bootstrap.pypa.io/get-pip.py' -OutFile 'tmp/get-pip.py'" +REM Install pip +echo Installing pip... +python tmp/get-pip.py + +:PIP_CANCEL +echo Please install pip and try again. +pause +exit /b 1 + +:PIP_SKIP + +REM Upgrading pip setuptools and wheel +echo Updating pip setuptools and wheel +python -m pip install --upgrade pip setuptools wheel + + +REM Check if pip is installed +set /p="Checking for virtual environment..." nul 2>&1 +if %ERRORLEVEL% EQU 0 ( + goto VENV_CHECKED +) else ( + goto VENV_INSTALL +) +:VENV_CHECKED +echo "Virtual environment is installed." +goto VENV_SKIP + +:VENV_INSTALL +echo. +choice /C YN /M "Do you want to download and install venv?" +if errorlevel 2 goto VENV_CANCEL +if errorlevel 1 goto VENV_INSTALL_2 + +:VENV_INSTALL_2 +REM Installinv venv +echo installing venv... +pip install virtualenv + +:VENV_CANCEL +echo Please install venv and try again. +pause +exit /b 1 + +:VENV_SKIP + + +REM Create a new virtual environment +set /p="Creating virtual environment ..." nul 2>&1 +if %ERRORLEVEL% EQU 0 ( + goto VENV_CREATED +) else ( + echo Failed to create virtual environment. Please check your Python installation and try again. + pause + exit /b 1 +) + +:VENV_CREATED + +REM Activate the virtual environment +set /p="Activating virtual environment ..." Date: Tue, 18 Apr 2023 00:41:05 +0300 Subject: [PATCH 2/2] Added automatic install/launcher --- README.md | 30 ++++++++++++++++++++------- run.bat | 45 ----------------------------------------- update.bat | 51 ---------------------------------------------- webui.bat | 59 +++++++++++++++++++++++++++++++++++++++--------------- 4 files changed, 66 insertions(+), 119 deletions(-) delete mode 100644 run.bat delete mode 100644 update.bat diff --git a/README.md b/README.md index fcb14f12..7b463925 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,6 @@ Watch usage videos [Usage Videos](https://www.youtube.com/watch?v=DCBefhJUUh4&ab Watch settings videos [Usage Videos](https://www.youtube.com/watch?v=7KwR2vdt1t4&t=63s&ab_channel=ParisNeo) - ![image](https://user-images.githubusercontent.com/827993/231911545-750c8293-58e4-4fac-8b34-f5c0d57a2f7d.png) GPT4All is an exceptional language model, designed and developed by Nomic-AI, a proficient company dedicated to natural language processing. The app uses Nomic-AI's advanced library to communicate with the cutting-edge GPT4All model, which operates locally on the user's PC, ensuring seamless and efficient communication. @@ -39,20 +38,38 @@ It's worth noting that the model has recently been launched, and it's expected t # Installation and running Make sure that your CPU supports `AVX2` instruction set. Without it, this application won't run out of the box. To check your CPU features, please visit the website of your CPU manufacturer for more information and look for `Instruction set extension: AVX2`. +> **Note** +> +>Default model `gpt4all-lora-quantized-ggml.bin` is roughly 4GB in size. ## Windows 10 and 11 -### Simple: +### Automatic install + +1. Open directory on your computer where you want to download/install this application (This will create new directory: `/gpt4all-ui/`. Make sure a folder with this name does not exist in this direcotry.) +2. Press and holde `Shift` on your keyboard and `right click` with your mouse inside a folder. Select from a menu `Open Terminal` or `Open to powershell windows here` (This command can hide under `Show more options` in Windows 11). +3. Copy and paste this command and press enter: + +> **Note** +> +> This command creates new directory `/gpt4all-ui/`, downloads a file [webui.bat](https://raw.githubusercontent.com/nomic-ai/gpt4all-ui/main/webui.bat), changes current work directory to `/gpt4all-ui/` and executes webui.bat that downloads and installs everything that is needed. + +``` +mkdir gpt4all-ui & curl https://raw.githubusercontent.com/nomic-ai/gpt4all-ui/main/webui.bat -o ./gpt4all-ui/webui.bat ; pushd ./gpt4all/ ; Invoke-Expression -Command "./webui.bat" +``` +4. Follow instructions on screen until it launches webui. +5. To relaunch application double click on `webui.bat` file from Windows explorer as normal user. + +### Manual Simple install: 1. Download this repository .zip: ![image](https://user-images.githubusercontent.com/80409979/232210909-0ce3dc80-ed34-4b32-b828-e124e3df3ff1.png) 2. Extract contents into a folder. -3. Install application by double clicking on `install.bat` file from Windows Explorer as normal user. -4. Run application by double clicking on `run.bat` file from Windows Explorer as normal user to start the application. +3. Install/run application by double clicking on `webui.bat` file from Windows Explorer as normal user. -### Advanced mode: +### Manual Advanced mode: 1. Install [git](https://git-scm.com/download/win). 2. Open Terminal/PowerShell and navigate to a folder you want to clone this repository. @@ -61,8 +78,7 @@ Make sure that your CPU supports `AVX2` instruction set. Without it, this applic git clone https://github.com/nomic-ai/gpt4all-ui.git ``` -4. Install application by double clicking on `install.bat` file from Windows explorer as normal user. -5. Run application by double clicking on `run.bat` file from Windows explorer as normal user to start the application. +4. Install/run application by double clicking on `webui.bat` file from Windows explorer as normal user. ## Linux diff --git a/run.bat b/run.bat deleted file mode 100644 index 77d99f59..00000000 --- a/run.bat +++ /dev/null @@ -1,45 +0,0 @@ -echo off - -echo HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHH .HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHH. ,HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHH.## HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHHHH#.HHHHH/*,*,*,*,*,*,*,*,***,*,**#HHHHHHHHHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHHHHHH.*,,***,***,***,***,***,***,*******HHHHHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHHHH*,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,*,,,,,HHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHH.,,,***,***,***,***,***,***,***,***,***,***/HHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHH*,,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*HHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHH#,***,***,***,***,***,***,***,***,***,***,***,**HHHHHHHHHHHHHHHHH -echo HHHHHHHHHH..HHH,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,*#HHHHHHHHHHHHHHHH -echo HHHHHHH,,,**,/H*,***,***,***,,,*,***,***,***,**,,,**,***,***,***H,,*,***HHHHHHHH -echo HHHHHH.*,,,*,,,,,*,*,*,***#HHHHH.,,*,*,*,*,**/HHHHH.,*,*,*,*,*,*,*,*****HHHHHHHH -echo HHHHHH.*,***,*,*,***,***,.HHHHHHH/**,***,****HHHHHHH.***,***,***,*******HHHHHHHH -echo HHHHHH.,,,,,,,,,,,,,,,,,,,.HHHHH.,,,,,,,,,,,,.HHHHHH,,,,,,,,,,,,,,,,,***HHHHHHHH -echo HHHHHH.,,,,,,/H,,,**,***,***,,,*,***,***,***,**,,,,*,***,***,***H***,***HHHHHHHH -echo HHHHHHH.,,,,*.H,,,,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,***H*,,,,/HHHHHHHHH -echo HHHHHHHHHHHHHHH*,***,***,**,,***,***,***,***,***,***,***,***,**.HHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHH,,,,,,,,*,,#H#,,,,,*,,,*,,,,,,,,*#H*,,,,,,,,,**HHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHH,,*,***,***,**/.HHHHHHHHHHHHH#*,,,*,***,***,*HHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHHH,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*HHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHHH**,***,***,***,***,***,***,***,***,***,***,*.HHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHHH*,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,*HHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHHH**,***,***,*******/..HHHHHHHHH.#/*,*,,,***,***HHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHH*,*,*,******#HHHHHHHHHHHHHHHHHHHHHHHHHHHH./**,,,.HHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHH.,,*,***.HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH.*#HHHHHHHHHHHH -echo HHHHHHHHHHHHHHH/,,,*.HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHH,,#HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHH.HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH - -REM Activate the virtual environment -call env\Scripts\activate.bat - -REM Run the Python app -python app.py %* -set app_result=%errorlevel% - -pause >nul diff --git a/update.bat b/update.bat deleted file mode 100644 index 9b57b687..00000000 --- a/update.bat +++ /dev/null @@ -1,51 +0,0 @@ -echo off - -echo HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHH .HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHH. ,HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHH.## HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHHHH#.HHHHH/*,*,*,*,*,*,*,*,***,*,**#HHHHHHHHHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHHHHHH.*,,***,***,***,***,***,***,*******HHHHHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHHHH*,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,*,,,,,HHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHH.,,,***,***,***,***,***,***,***,***,***,***/HHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHH*,,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*HHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHH#,***,***,***,***,***,***,***,***,***,***,***,**HHHHHHHHHHHHHHHHH -echo HHHHHHHHHH..HHH,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,*#HHHHHHHHHHHHHHHH -echo HHHHHHH,,,**,/H*,***,***,***,,,*,***,***,***,**,,,**,***,***,***H,,*,***HHHHHHHH -echo HHHHHH.*,,,*,,,,,*,*,*,***#HHHHH.,,*,*,*,*,**/HHHHH.,*,*,*,*,*,*,*,*****HHHHHHHH -echo HHHHHH.*,***,*,*,***,***,.HHHHHHH/**,***,****HHHHHHH.***,***,***,*******HHHHHHHH -echo HHHHHH.,,,,,,,,,,,,,,,,,,,.HHHHH.,,,,,,,,,,,,.HHHHHH,,,,,,,,,,,,,,,,,***HHHHHHHH -echo HHHHHH.,,,,,,/H,,,**,***,***,,,*,***,***,***,**,,,,*,***,***,***H***,***HHHHHHHH -echo HHHHHHH.,,,,*.H,,,,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,***H*,,,,/HHHHHHHHH -echo HHHHHHHHHHHHHHH*,***,***,**,,***,***,***,***,***,***,***,***,**.HHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHH,,,,,,,,*,,#H#,,,,,*,,,*,,,,,,,,*#H*,,,,,,,,,**HHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHH,,*,***,***,**/.HHHHHHHHHHHHH#*,,,*,***,***,*HHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHHH,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*HHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHHH**,***,***,***,***,***,***,***,***,***,***,*.HHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHHH*,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,*HHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHHH**,***,***,*******/..HHHHHHHHH.#/*,*,,,***,***HHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHH*,*,*,******#HHHHHHHHHHHHHHHHHHHHHHHHHHHH./**,,,.HHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHH.,,*,***.HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH.*#HHHHHHHHHHHH -echo HHHHHHHHHHHHHHH/,,,*.HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHH,,#HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHH.HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH -echo HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH - -REM Activate the virtual environment -call env\Scripts\activate.bat - -REM Pull latest version of the code -git pull - -REM Download latest personalities -if not exist tmp\personalities git clone https://github.com/ParisNeo/GPT4All_Personalities.git tmp\personalities -copy tmp\personalities\* personalities - -echo Cleaning tmp folder -rd /s /q "./tmp" - -pause diff --git a/webui.bat b/webui.bat index e340b713..530f3c8e 100644 --- a/webui.bat +++ b/webui.bat @@ -35,9 +35,8 @@ echo HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH echo HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH echo HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH -if not exist "./gpt4all-ui" mkdir "./gpt4all-ui" -cd -if not exist "./tmp" mkdir "./tmp" + + REM Check if Git is installed echo "Checking for git..." @@ -74,9 +73,32 @@ exit /b 1 :GIT_SKIP -echo Cloning repository... -git clone https://github.com/nomic-ai/gpt4all-ui.git . +REM Check if repository exists +git rev-parse --is-inside-work-tree +if errorlevel 1 goto :CLONE_REPO +if errorlevel = 0 goto :PULL_CHANGES +:PULL_CHANGES +echo Pulling latest changes +git pull origin main +goto :GET_PERSONALITIES +:CLONE_REPO +echo Cloning repository... +git init +git remote add origin https://github.com/nomic-ai/gpt4all-ui.git +git fetch +git reset origin/main +git checkout -t origin/main +git pull origin main +goto :GET_PERSONALITIES + +:GET_PERSONALITIES +REM Download latest personalities +if not exist tmp\personalities git clone https://github.com/ParisNeo/GPT4All_Personalities.git tmp\personalities +copy tmp\personalities\* personalities +goto :CHECK_PYTHON_INSTALL + +:CHECK_PYTHON_INSTALL REM Check if Python is installed set /p="Checking for python..." nul 2>&1 @@ -97,6 +119,7 @@ if errorlevel 1 goto PYTHON_INSTALL_2 :PYTHON_INSTALL_2 REM Download Python installer +if not exist "./tmp" mkdir "./tmp" echo Downloading Python installer... powershell -Command "Invoke-WebRequest -Uri 'https://www.python.org/ftp/python/3.10.0/python-3.10.0-amd64.exe' -OutFile 'tmp/python.exe'" REM Install Python @@ -110,7 +133,6 @@ exit /b 1 :PYTHON_SKIP - REM Check if pip is installed set /p="Checking for pip..." nul 2>&1 @@ -148,7 +170,6 @@ REM Upgrading pip setuptools and wheel echo Updating pip setuptools and wheel python -m pip install --upgrade pip setuptools wheel - REM Check if pip is installed set /p="Checking for virtual environment..." nul 2>&1 @@ -179,7 +200,6 @@ exit /b 1 :VENV_SKIP - REM Create a new virtual environment set /p="Creating virtual environment ..." nul 2>&1 @@ -208,11 +228,11 @@ if %ERRORLEVEL% neq 0 ( ) echo Downloading latest model -if not exist models ( - md models +if not exist \models ( + md \models ) -if not exist models/gpt4all-lora-quantized-ggml.bin ( +if not exist \models/gpt4all-lora-quantized-ggml.bin ( echo. choice /C YNB /M "The default model file (gpt4all-lora-quantized-ggml.bin) does not exist. Do you want to download it? Press B to download it with a browser (faster)." if errorlevel 3 goto DOWNLOAD_WITH_BROWSER @@ -235,7 +255,7 @@ goto :CONTINUE :MODEL_DOWNLOAD echo. echo Downloading latest model... -powershell -Command "Invoke-WebRequest -Uri 'https://huggingface.co/ParisNeo/GPT4All/resolve/main/gpt4all-lora-quantized-ggml.bin' -OutFile 'models/gpt4all-lora-quantized-ggml.bin'" +powershell -Command "Invoke-WebRequest -Uri 'https://huggingface.co/ParisNeo/GPT4All/resolve/main/gpt4all-lora-quantized-ggml.bin' -OutFile %clone_dir%'/models/gpt4all-lora-quantized-ggml.bin'" if errorlevel 1 ( echo Failed to download model. Please check your internet connection. choice /C YN /M "Do you want to try downloading again?" @@ -254,11 +274,18 @@ goto :CONTINUE :CONTINUE :END - +if exist "./tmp" ( echo Cleaning tmp folder rd /s /q "./tmp" +) echo Virtual environment created and packages installed successfully. -echo Every thing is setup. Just run run.bat -pause -exit /b 0 +echo Launching application... + +REM Run the Python app + +python app.py %* +set app_result=%errorlevel% + +pause >nul +exit /b 0 \ No newline at end of file