diff --git a/c_webui.bat b/c_webui.bat
index 6e463ff3..b4ff6c75 100644
--- a/c_webui.bat
+++ b/c_webui.bat
@@ -62,7 +62,7 @@ if %errorlevel% equ 0 (
REM Check if repository exists
if exist .git (
echo Pulling latest changes
- git pull origin main
+ git pull
) else (
if exist lollms-webui (
cd ./lollms-webui
diff --git a/c_webui.sh b/c_webui.sh
index 3c55e872..017d1180 100644
--- a/c_webui.sh
+++ b/c_webui.sh
@@ -58,7 +58,7 @@ if ping -q -c 1 google.com >/dev/null 2>&1; then
# Check if repository exists
if [[ -d .git ]] ;then
echo "Pulling latest changes"
- git pull origin main
+ git pull
else
if [[ -d lollms-webui ]] ;then
cd lollms-webui
diff --git a/web/src/components/ModelEntry.vue b/web/src/components/ModelEntry.vue
index a02bc594..98df7d6b 100644
--- a/web/src/components/ModelEntry.vue
+++ b/web/src/components/ModelEntry.vue
@@ -2,7 +2,7 @@
+ {{ addModel.url }}
+
+
@@ -1108,6 +1115,7 @@ export default {
searchPersonalityInProgress: false,
addModel: {},
modelDownlaodInProgress: false,
+ uploadData: [],
}
},
@@ -1354,10 +1362,10 @@ export default {
const modelEntry = this.addModel
- const keys = Object.keys(this.addModel)
- if (keys.includes('url')) {
- return
- }
+ // const keys = Object.keys(this.addModel)
+ // if (keys.includes('url')) {
+ // return
+ // }
this.modelDownlaodInProgress = false
this.addModel = {}
this.$refs.toast.showToast("Model installation aborted", 4, false)
@@ -1446,6 +1454,7 @@ export default {
if (response.status && response.progress <= 100) {
console.log(`Progress`, response);
this.addModel = response
+ this.addModel.url = path
// this.addModel.progress = response.progress
// this.addModel.speed = response.speed
// this.addModel.total_size = response.total_size
@@ -1454,13 +1463,13 @@ export default {
this.modelDownlaodInProgress = true
if (this.addModel.progress == 100) {
- this.modelDownlaodInProgress = true
+ this.modelDownlaodInProgress = false
console.log("Received succeeded")
socket.off('install_progress', progressListener);
console.log("Installed successfully")
// Update the isInstalled property of the corresponding model
-
+ this.addModel = {}
this.$refs.toast.showToast("Model:\n" + this.addModel.model_name + "\ninstalled!", 4, true)
this.api_get_req("disk_usage").then(response => {
this.diskUsage = response
@@ -1487,6 +1496,75 @@ export default {
socket.emit('install_model', { path: path });
console.log("Started installation, please wait");
},
+ uploadLocalModel() {
+
+
+ if (this.uploadData.length == 0) {
+
+ this.$refs.toast.showToast("No files to upload", 4, false)
+ return
+ }
+ let path = this.addModel.url;
+
+ this.addModel.progress = 0;
+ console.log("installing...");
+ console.log("value ", this.addModel.url);
+ this.modelDownlaodInProgress = true
+ // Use an arrow function for progressListener
+ const progressListener = (response) => {
+ console.log("received something");
+ if (response.status && response.progress <= 100) {
+ console.log(`Progress`, response);
+ this.addModel = response
+ this.addModel.url = path
+ // this.addModel.progress = response.progress
+ // this.addModel.speed = response.speed
+ // this.addModel.total_size = response.total_size
+ // this.addModel.downloaded_size = response.downloaded_size
+ // this.addModel.start_time = response.start_time
+ this.modelDownlaodInProgress = true
+ if (this.addModel.progress == 100) {
+
+ this.modelDownlaodInProgress = false
+
+ console.log("Received succeeded")
+ socket.off('progress', progressListener);
+ console.log("Installed successfully")
+ // Update the isInstalled property of the corresponding model
+ this.addModel = {}
+ this.$refs.toast.showToast("Model:\n" + this.addModel.model_name + "\ninstalled!", 4, true)
+ this.api_get_req("disk_usage").then(response => {
+ this.diskUsage = response
+ })
+ }
+ } else {
+ socket.off('progress', progressListener);
+ console.log("Install failed")
+ // Installation failed or encountered an error
+ this.modelDownlaodInProgress = false;
+
+
+ console.error('Installation failed:', response.error);
+ this.$refs.toast.showToast("Model:\n" + this.addModel.model_name + "\nfailed to install!", 4, false)
+ this.api_get_req("disk_usage").then(response => {
+ this.diskUsage = response
+ })
+ }
+ };
+
+ socket.on('progress', progressListener);
+
+
+ // socket.emit('send_file', { file: this.uploadData });
+ console.log("Started installation, please wait");
+
+
+ },
+ setFileList(event) {
+ this.uploadData = event.target.files
+ console.log('set file list', this.uploadData)
+
+ },
onUninstall(model_object) {
this.$refs.yesNoDialog.askQuestion("Are you sure you want to delete this model?\n [" + model_object.title + "]", 'Yes', 'Cancel').then(yesRes => {