mirror of
https://github.com/ParisNeo/lollms-webui.git
synced 2025-02-20 17:22:47 +00:00
enhanced
This commit is contained in:
parent
333dcf5f53
commit
ffd799a1c8
@ -357,14 +357,20 @@ class LoLLMsAPPI(LollmsApplication):
|
||||
}, room=request.sid)
|
||||
try:
|
||||
installation_path.unlink()
|
||||
socketio.emit('install_progress',{
|
||||
'status': True,
|
||||
'error': '',
|
||||
'model_name' : model_name,
|
||||
'binding_folder' : binding_folder
|
||||
}, room=request.sid)
|
||||
except Exception as ex:
|
||||
ASCIIColors.error(f"Couldn't delete {installation_path}, please delete it manually and restart the app")
|
||||
socketio.emit('install_progress',{
|
||||
'status': True,
|
||||
'error': '',
|
||||
'model_name' : model_name,
|
||||
'binding_folder' : binding_folder
|
||||
}, room=request.sid)
|
||||
socketio.emit('install_progress',{
|
||||
'status': False,
|
||||
'error': f"Couldn't delete {installation_path}, please delete it manually and restart the app",
|
||||
'model_name' : model_name,
|
||||
'binding_folder' : binding_folder
|
||||
}, room=request.sid)
|
||||
|
||||
|
||||
@socketio.on('upload_file')
|
||||
|
130
app.py
130
app.py
@ -15,48 +15,72 @@ __copyright__ = "Copyright 2023, "
|
||||
__license__ = "Apache 2.0"
|
||||
|
||||
main_repo = "https://github.com/ParisNeo/lollms-webui.git"
|
||||
|
||||
import os
|
||||
import git
|
||||
import logging
|
||||
import argparse
|
||||
import json
|
||||
import re
|
||||
import traceback
|
||||
import sys
|
||||
from tqdm import tqdm
|
||||
import subprocess
|
||||
import signal
|
||||
from lollms.config import InstallOption
|
||||
from lollms.binding import LOLLMSConfig, BindingBuilder, LLMBinding
|
||||
from lollms.personality import AIPersonality, MSG_TYPE
|
||||
from lollms.config import BaseConfig
|
||||
from lollms.helpers import ASCIIColors, trace_exception
|
||||
from lollms.paths import LollmsPaths
|
||||
from api.db import DiscussionsDB, Discussion
|
||||
from api.helpers import compare_lists
|
||||
from flask import (
|
||||
Flask,
|
||||
Response,
|
||||
jsonify,
|
||||
render_template,
|
||||
request,
|
||||
stream_with_context,
|
||||
send_from_directory
|
||||
)
|
||||
|
||||
from flask_socketio import SocketIO, emit
|
||||
from pathlib import Path
|
||||
import yaml
|
||||
from geventwebsocket.handler import WebSocketHandler
|
||||
import logging
|
||||
import psutil
|
||||
from lollms.main_config import LOLLMSConfig
|
||||
from typing import Optional
|
||||
import gc
|
||||
import pkg_resources
|
||||
def run_update_script(args=None):
|
||||
update_script = "update_script.py"
|
||||
|
||||
# Convert Namespace object to a dictionary
|
||||
if args:
|
||||
args_dict = vars(args)
|
||||
else:
|
||||
args_dict = {}
|
||||
# Filter out any key-value pairs where the value is None
|
||||
valid_args = {key: value for key, value in args_dict.items() if value is not None}
|
||||
|
||||
# Save the arguments to a temporary file
|
||||
temp_file = "temp_args.txt"
|
||||
with open(temp_file, "w") as file:
|
||||
# Convert the valid_args dictionary to a string in the format "key1 value1 key2 value2 ..."
|
||||
arg_string = " ".join([f"--{key} {value}" for key, value in valid_args.items()])
|
||||
file.write(arg_string)
|
||||
|
||||
os.system(f"python {update_script}")
|
||||
sys.exit(0)
|
||||
|
||||
try:
|
||||
import git
|
||||
import logging
|
||||
import argparse
|
||||
import json
|
||||
import traceback
|
||||
import subprocess
|
||||
import signal
|
||||
from lollms.config import InstallOption
|
||||
from lollms.binding import LOLLMSConfig, BindingBuilder
|
||||
from lollms.personality import AIPersonality
|
||||
from lollms.config import BaseConfig
|
||||
from lollms.helpers import ASCIIColors, trace_exception
|
||||
from lollms.paths import LollmsPaths
|
||||
from api.db import Discussion
|
||||
from flask import (
|
||||
Flask,
|
||||
jsonify,
|
||||
render_template,
|
||||
request,
|
||||
send_from_directory
|
||||
)
|
||||
|
||||
from flask_socketio import SocketIO
|
||||
from pathlib import Path
|
||||
import yaml
|
||||
from geventwebsocket.handler import WebSocketHandler
|
||||
import logging
|
||||
import psutil
|
||||
from lollms.main_config import LOLLMSConfig
|
||||
from typing import Optional
|
||||
import gc
|
||||
import pkg_resources
|
||||
|
||||
from api.config import load_config
|
||||
from api import LoLLMsAPPI
|
||||
import shutil
|
||||
import socket
|
||||
|
||||
except:
|
||||
print("Error importing some libraries. Updating lollms...")
|
||||
run_update_script()
|
||||
|
||||
log = logging.getLogger('werkzeug')
|
||||
log.setLevel(logging.ERROR)
|
||||
@ -72,12 +96,7 @@ logging.getLogger('engineio').setLevel(logging.WARNING)
|
||||
logging.getLogger('werkzeug').setLevel(logging.ERROR)
|
||||
logging.basicConfig(level=logging.WARNING)
|
||||
|
||||
import time
|
||||
from api.config import load_config, save_config
|
||||
from api import LoLLMsAPPI
|
||||
import shutil
|
||||
import markdown
|
||||
import socket
|
||||
|
||||
|
||||
def get_ip_address():
|
||||
# Create a socket object
|
||||
@ -136,24 +155,7 @@ def run_restart_script(args):
|
||||
os.system(f"python {restart_script}")
|
||||
sys.exit(0)
|
||||
|
||||
def run_update_script(args):
|
||||
update_script = "update_script.py"
|
||||
|
||||
# Convert Namespace object to a dictionary
|
||||
args_dict = vars(args)
|
||||
|
||||
# Filter out any key-value pairs where the value is None
|
||||
valid_args = {key: value for key, value in args_dict.items() if value is not None}
|
||||
|
||||
# Save the arguments to a temporary file
|
||||
temp_file = "temp_args.txt"
|
||||
with open(temp_file, "w") as file:
|
||||
# Convert the valid_args dictionary to a string in the format "key1 value1 key2 value2 ..."
|
||||
arg_string = " ".join([f"--{key} {value}" for key, value in valid_args.items()])
|
||||
file.write(arg_string)
|
||||
|
||||
os.system(f"python {update_script}")
|
||||
sys.exit(0)
|
||||
|
||||
|
||||
class LoLLMsWebUI(LoLLMsAPPI):
|
||||
@ -1146,12 +1148,12 @@ class LoLLMsWebUI(LoLLMsAPPI):
|
||||
ASCIIColors.info("")
|
||||
ASCIIColors.info("")
|
||||
run_update_script(self.args)
|
||||
|
||||
|
||||
def get_lollms_version(self):
|
||||
version = pkg_resources.get_distribution('lollms').version
|
||||
ASCIIColors.yellow("Lollms version : "+ version)
|
||||
return jsonify({"version":version})
|
||||
|
||||
|
||||
def reload_binding(self):
|
||||
try:
|
||||
data = request.get_json()
|
||||
@ -1792,9 +1794,7 @@ if __name__ == "__main__":
|
||||
ASCIIColors.info("debug mode:true")
|
||||
else:
|
||||
ASCIIColors.info("debug mode:false")
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
url = f'http://{config["host"]}:{config["port"]}'
|
||||
if config["host"]!="localhost":
|
||||
|
Loading…
x
Reference in New Issue
Block a user