From 07f5d48b09ecfd11904ea92d86bbdceef9397280 Mon Sep 17 00:00:00 2001 From: Saifeddine ALOUI Date: Sat, 3 Feb 2024 00:58:45 +0100 Subject: [PATCH] sync --- scripts/windows/win_install_exllamav2.bat | 156 ++++++++++++++++++++++ zoos/bindings_zoo | 2 +- 2 files changed, 157 insertions(+), 1 deletion(-) create mode 100644 scripts/windows/win_install_exllamav2.bat diff --git a/scripts/windows/win_install_exllamav2.bat b/scripts/windows/win_install_exllamav2.bat new file mode 100644 index 00000000..19e26ceb --- /dev/null +++ b/scripts/windows/win_install_exllamav2.bat @@ -0,0 +1,156 @@ +@echo off + +@rem This script will install miniconda and git with all dependencies for this project +@rem This enables a user to install this project without manually installing conda and git. + +echo " ___ ___ ___ ___ ___ ___ " +echo " /\__\ /\ \ /\__\ /\__\ /\__\ /\ \ " +echo " /:/ / /::\ \ /:/ / /:/ / /::| | /::\ \ " +echo " /:/ / /:/\:\ \ /:/ / /:/ / /:|:| | /:/\ \ \ " +echo " /:/ / /:/ \:\ \ /:/ / /:/ / /:/|:|__|__ _\:\~\ \ \ " +echo " /:/__/ /:/__/ \:\__\ /:/__/ /:/__/ /:/ |::::\__\ /\ \:\ \ \__\ " +echo " \:\ \ \:\ \ /:/ / \:\ \ \:\ \ \/__/~~/:/ / \:\ \:\ \/__/ " +echo " \:\ \ \:\ /:/ / \:\ \ \:\ \ /:/ / \:\ \:\__\ " +echo " \:\ \ \:\/:/ / \:\ \ \:\ \ /:/ / \:\/:/ / " +echo " \:\__\ \::/ / \:\__\ \:\__\ /:/ / \::/ / " +echo " \/__/ \/__/ \/__/ \/__/ \/__/ \/__/ " +echo V9.5 +echo ----------------- +echo By ParisNeo +echo ----------------- + +@rem workaround for broken Windows installs +set PATH=%PATH%;%SystemRoot%\system32 + +cd /D "%~dp0" + +echo "%cd%"| findstr /C:" " >nul && call :PrintBigMessage "This script relies on Miniconda which can not be silently installed under a path with spaces. Please put it in a path without spaces and try again" && goto failed +call :PrintBigMessage "WARNING: This script relies on Miniconda which will fail to install if the path is too long." +set "SPCHARMESSAGE="WARNING: Special characters were detected in the installation path!" " This can cause the installation to fail!"" +echo "%CD%"| findstr /R /C:"[!#\$%&()\*+,;<=>?@\[\]\^`{|}~]" >nul && ( + call :PrintBigMessage %SPCHARMESSAGE% +) +set SPCHARMESSAGE= + +pause +cls + +md + +@rem better isolation for virtual environment +SET "CONDA_SHLVL=" +SET PYTHONNOUSERSITE=1 +SET "PYTHONPATH=" +SET "PYTHONHOME=" +SET "TEMP=%cd%\installer_files\temp" +SET "TMP=%cd%\installer_files\temp" + +set MINICONDA_DIR=%cd%\installer_files\miniconda3 +set INSTALL_ENV_DIR=%cd%\installer_files\lollms_env +set MINICONDA_DOWNLOAD_URL=https://repo.anaconda.com/miniconda/Miniconda3-latest-Windows-x86_64.exe +set REPO_URL=https://github.com/ParisNeo/lollms-webui.git + +set "PACKAGES_TO_INSTALL=python=3.11 git pip" + +if not exist "%MINICONDA_DIR%\Scripts\conda.exe" ( + @rem download miniconda + echo Downloading Miniconda installer from %MINICONDA_DOWNLOAD_URL% + call curl -LOk "%MINICONDA_DOWNLOAD_URL%" + + @rem install miniconda + echo. && echo Installing Miniconda To "%MINICONDA_DIR%" && echo Please Wait... && echo. + start "" /W /D "%cd%" "Miniconda3-latest-Windows-x86_64.exe" /InstallationType=JustMe /NoShortcuts=1 /AddToPath=0 /RegisterPython=0 /NoRegistry=1 /S /D=%MINICONDA_DIR% || ( echo. && echo Miniconda installer not found. && goto failed ) + del /q "Miniconda3-latest-Windows-x86_64.exe" + if not exist "%MINICONDA_DIR%\Scripts\activate.bat" ( echo. && echo Miniconda install failed. && goto end ) +) + +@rem activate miniconda +call "%MINICONDA_DIR%\Scripts\activate.bat" || ( echo Miniconda hook not found. && goto end ) + + +@rem create the installer env +if not exist "%INSTALL_ENV_DIR%" ( + echo Packages to install: %PACKAGES_TO_INSTALL% + call conda create --no-shortcuts -y -k -p "%INSTALL_ENV_DIR%" %CHANNEL% %PACKAGES_TO_INSTALL% || ( echo. && echo Conda environment creation failed. && goto end ) +) + +@rem check if conda environment was actually created +if not exist "%INSTALL_ENV_DIR%\python.exe" ( echo. && echo Conda environment is empty. && goto end ) + +@rem activate installer env +call conda activate "%INSTALL_ENV_DIR%" || ( echo. && echo Conda environment activation failed. && goto end ) + +@rem install conda library +call conda install conda -y + + +@rem clone the repository +if exist lollms-webui\ ( + cd lollms-webui + git pull + git submodule update --init --recursive + cd + cd lollms_core + pip install -e . + cd .. + cd utilities\safe_store + pip install -e . + cd ..\.. +) else ( + git clone --depth 1 --recurse-submodules https://github.com/ParisNeo/lollms-webui.git + git submodule update --init --recursive + cd lollms-webui\lollms_core + pip install -e . + cd .. + cd utilities\safe_store + pip install -e . + cd ..\.. +) + +pip install -r requirements.txt + +@rem create launcher +if exist ..\win_run.bat ( + echo Win run found +) else ( + copy scripts\windows\win_run.bat ..\ +) + + +if exist ..\win_conda_session.bat ( + echo win conda session script found +) else ( + copy scripts\windows\win_conda_session.bat ..\ +) + +call python zoos/bindings_zoo/bs_exllamav2/__init__.py + + +setlocal enabledelayedexpansion + +endlocal + +goto end + +:PrintBigMessage +echo. && echo. +echo ******************************************************************* +for %%M in (%*) do echo * %%~M +echo ******************************************************************* +echo. && echo. +exit /b +goto end +:failed +echo Install failed +goto endend +:end + +echo Creating a bin dir (required for llamacpp binding) +md ../installer_files/lollms_env/bin + +@rem cd scripts\python\lollms_installer +@rem call python main.py +@rem cd .. +echo Installation complete. +:endend +pause diff --git a/zoos/bindings_zoo b/zoos/bindings_zoo index 23862b69..548e6230 160000 --- a/zoos/bindings_zoo +++ b/zoos/bindings_zoo @@ -1 +1 @@ -Subproject commit 23862b69a853d882aff461474b96d5d4b8f2b7d7 +Subproject commit 548e62304a51b165e888cd291e0325d3d2a9206d