mirror of
https://github.com/ParisNeo/lollms-webui.git
synced 2024-12-18 20:17:50 +00:00
upgrades
This commit is contained in:
parent
bd56719618
commit
b910d254e7
@ -2012,16 +2012,23 @@ class LoLLMsAPI(LollmsApplication):
|
|||||||
self.prepare_reception(client_id)
|
self.prepare_reception(client_id)
|
||||||
self.generating = True
|
self.generating = True
|
||||||
self.connections[client_id]["processing"]=True
|
self.connections[client_id]["processing"]=True
|
||||||
self.generate(
|
try:
|
||||||
self.discussion_messages,
|
self.generate(
|
||||||
self.current_message,
|
self.discussion_messages,
|
||||||
n_predict = self.config.ctx_size-len(tokens)-1,
|
self.current_message,
|
||||||
client_id=client_id,
|
n_predict = self.config.ctx_size-len(tokens)-1,
|
||||||
callback=partial(self.process_chunk,client_id = client_id)
|
client_id=client_id,
|
||||||
)
|
callback=partial(self.process_chunk,client_id = client_id)
|
||||||
print()
|
)
|
||||||
print("## Done Generation ##")
|
print()
|
||||||
print()
|
ASCIIColors.success("## Done Generation ##")
|
||||||
|
print()
|
||||||
|
except Exception as ex:
|
||||||
|
trace_exception(ex)
|
||||||
|
print()
|
||||||
|
ASCIIColors.error("## Generation Error ##")
|
||||||
|
print()
|
||||||
|
|
||||||
self.cancel_gen = False
|
self.cancel_gen = False
|
||||||
|
|
||||||
# Send final message
|
# Send final message
|
||||||
|
6
app.py
6
app.py
@ -1011,7 +1011,8 @@ try:
|
|||||||
try:
|
try:
|
||||||
self.model = None
|
self.model = None
|
||||||
for per in self.mounted_personalities:
|
for per in self.mounted_personalities:
|
||||||
per.model = None
|
if per is not None:
|
||||||
|
per.model = None
|
||||||
self.model = self.binding.build_model()
|
self.model = self.binding.build_model()
|
||||||
if self.model is not None:
|
if self.model is not None:
|
||||||
ASCIIColors.yellow("New model OK")
|
ASCIIColors.yellow("New model OK")
|
||||||
@ -1638,7 +1639,6 @@ try:
|
|||||||
self.config.binding_name = data['name']
|
self.config.binding_name = data['name']
|
||||||
self.binding = BindingBuilder().build_binding(self.config, self.lollms_paths, InstallOption.FORCE_INSTALL, lollmsCom=self)
|
self.binding = BindingBuilder().build_binding(self.config, self.lollms_paths, InstallOption.FORCE_INSTALL, lollmsCom=self)
|
||||||
self.success("Binding installed successfully")
|
self.success("Binding installed successfully")
|
||||||
self.InfoMessage("Please reboot the application so that the binding installation can be taken into consideration")
|
|
||||||
del self.binding
|
del self.binding
|
||||||
self.binding = None
|
self.binding = None
|
||||||
self.config.binding_name = old_bn
|
self.config.binding_name = old_bn
|
||||||
@ -1671,12 +1671,12 @@ try:
|
|||||||
self.config.binding_name = data['name']
|
self.config.binding_name = data['name']
|
||||||
self.binding = BindingBuilder().build_binding(self.config, self.lollms_paths, InstallOption.FORCE_INSTALL, lollmsCom=self)
|
self.binding = BindingBuilder().build_binding(self.config, self.lollms_paths, InstallOption.FORCE_INSTALL, lollmsCom=self)
|
||||||
self.success("Binding reinstalled successfully")
|
self.success("Binding reinstalled successfully")
|
||||||
self.InfoMessage("Please reboot the application so that the binding installation can be taken into consideration")
|
|
||||||
self.config.binding_name = old_bn
|
self.config.binding_name = old_bn
|
||||||
self.binding = BindingBuilder().build_binding(self.config, self.lollms_paths, lollmsCom=self)
|
self.binding = BindingBuilder().build_binding(self.config, self.lollms_paths, lollmsCom=self)
|
||||||
self.model = self.binding.build_model()
|
self.model = self.binding.build_model()
|
||||||
for per in self.mounted_personalities:
|
for per in self.mounted_personalities:
|
||||||
per.model = self.model
|
per.model = self.model
|
||||||
|
|
||||||
return jsonify({"status": True})
|
return jsonify({"status": True})
|
||||||
except Exception as ex:
|
except Exception as ex:
|
||||||
ASCIIColors.error(f"Couldn't build binding: [{ex}]")
|
ASCIIColors.error(f"Couldn't build binding: [{ex}]")
|
||||||
|
@ -9,11 +9,31 @@ select the install mode (Cuda, rocm or cpu)
|
|||||||
wait
|
wait
|
||||||
Run the app
|
Run the app
|
||||||
Choose the personal data folder
|
Choose the personal data folder
|
||||||
Install a binding
|
Install a binding then Reboot the app
|
||||||
Reboot the app
|
|
||||||
Select the binding
|
Select the binding
|
||||||
Install a model
|
Install a model
|
||||||
Select a model
|
Select a model
|
||||||
|
|
||||||
|
And now you are ready to rock
|
||||||
|
|
||||||
|
Let me show you how I do it:
|
||||||
|
|
||||||
|
Start by opening the lollms web user interface link that you can find in the description. Then go to the latest release page and download the installer suited for your platform. Make sure you put it into a path with no spaces and inside an empty folder as it will fill out the folder with the install files.
|
||||||
|
|
||||||
|
Now execute the installer. As it says, make sure the path you are using is not very long and without spaces as conda may have bugs with paths that contains spaces.
|
||||||
|
|
||||||
|
Now press enter to continue.
|
||||||
|
|
||||||
|
Select the right configuration. if you have an nvisia gpu, select option a. if you have a Rocm compatible GPU like AMD GPUs press B. If you have no GPU or want to use remote generation, then select C.
|
||||||
|
|
||||||
|
Now just wait
|
||||||
|
|
||||||
|
Once the installation is done, close the installation script and go back to the install folder.
|
||||||
|
run the win_run.bat file and wait for the program to run for the first time.
|
||||||
|
Some additional libraries may need to be installed the first time you run it.
|
||||||
|
|
||||||
|
|
||||||
|
The first time you run the app, you will need to specify a folder where to put your personal data. Make sure the disk containing this folder is big enough as it will hold your models as well as the personas outputs and your discussion databases. The default folder is a folder called lollms under your documents folder. Just press enter if it is ok or type another path then press enter.
|
||||||
|
|
||||||
|
Now lollms is installed, but there is no binding installed nor a model. To do this, go to settings tab, select binding s zoo and install a binding depending on your preferences. Here I am using a GPU and want local generation, so I will select Hugging face to use full sized models, GPTQ quantized models or AWQ quantized models. The installation may take some while, you can look at the install details in the console window.
|
||||||
|
|
||||||
Start by opening the lollms web user interface link that you can find in the description. Then go to the latest release page and download the
|
|
@ -1 +1 @@
|
|||||||
Subproject commit 62a8af9c3b22d2a1b70d7657164e70ced86d16c8
|
Subproject commit 9acdc3e9cd7880451b57e290d08c2957347766bb
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
BIN
web/dist/disconnected.mp3
vendored
Normal file
BIN
web/dist/disconnected.mp3
vendored
Normal file
Binary file not shown.
4
web/dist/index.html
vendored
4
web/dist/index.html
vendored
@ -6,8 +6,8 @@
|
|||||||
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
<title>LoLLMS WebUI - Welcome</title>
|
<title>LoLLMS WebUI - Welcome</title>
|
||||||
<script type="module" crossorigin src="/assets/index-24f00053.js"></script>
|
<script type="module" crossorigin src="/assets/index-3aea4c30.js"></script>
|
||||||
<link rel="stylesheet" href="/assets/index-80a485ca.css">
|
<link rel="stylesheet" href="/assets/index-a331d591.css">
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="app"></div>
|
<div id="app"></div>
|
||||||
|
BIN
web/dist/rebooting.mp3
vendored
Normal file
BIN
web/dist/rebooting.mp3
vendored
Normal file
Binary file not shown.
BIN
web/public/disconnected.mp3
Normal file
BIN
web/public/disconnected.mp3
Normal file
Binary file not shown.
BIN
web/public/rebooting.mp3
Normal file
BIN
web/public/rebooting.mp3
Normal file
Binary file not shown.
@ -35,8 +35,8 @@
|
|||||||
<div v-if="!isConnected" title="Connection status: Not connected" class="text-red-500 cursor-pointer">
|
<div v-if="!isConnected" title="Connection status: Not connected" class="text-red-500 cursor-pointer">
|
||||||
<i data-feather="zap-off"></i>
|
<i data-feather="zap-off"></i>
|
||||||
</div>
|
</div>
|
||||||
<a href="#" @click="refreshPage">
|
<a href="#" @click="restartProgram">
|
||||||
<div class="text-2xl hover:text-primary duration-150" title="refresh page">
|
<div class="text-2xl hover:text-primary duration-150" title="restart program">
|
||||||
<i data-feather="refresh-ccw"></i>
|
<i data-feather="refresh-ccw"></i>
|
||||||
</div>
|
</div>
|
||||||
</a>
|
</a>
|
||||||
@ -135,6 +135,7 @@ export default {
|
|||||||
watch:{
|
watch:{
|
||||||
isConnected(){
|
isConnected(){
|
||||||
if (!this.isConnected){
|
if (!this.isConnected){
|
||||||
|
this.disconnected_audio.play()
|
||||||
this.$store.state.toast.showToast("Server suddenly disconnected. Please reboot the server", 410, false)
|
this.$store.state.toast.showToast("Server suddenly disconnected. Please reboot the server", 410, false)
|
||||||
}
|
}
|
||||||
nextTick(() => {
|
nextTick(() => {
|
||||||
@ -145,6 +146,8 @@ export default {
|
|||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
rebooting_the_tool_audio: new Audio("rebooting.mp3"),
|
||||||
|
disconnected_audio: new Audio("disconnected.mp3"),
|
||||||
database_selectorDialogVisible:false,
|
database_selectorDialogVisible:false,
|
||||||
progress_visibility:false,
|
progress_visibility:false,
|
||||||
progress_value:0,
|
progress_value:0,
|
||||||
@ -176,11 +179,16 @@ export default {
|
|||||||
this.systemTheme = window.matchMedia("prefers-color-scheme: dark").matches;
|
this.systemTheme = window.matchMedia("prefers-color-scheme: dark").matches;
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
async refreshPage(event) {
|
restartProgram(event) {
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
|
this.$store.state.api_get_req('restart_program')
|
||||||
|
this.rebooting_the_tool_audio.play()
|
||||||
|
this.$store.state.toast.showToast("Rebooting the app. Please wait...", 410, false)
|
||||||
|
//self.$store.state.toast.showToast("Rebooting the app. Please wait...", 50, true);
|
||||||
console.log("this.$store.state.api_get_req",this.$store.state.api_get_req)
|
console.log("this.$store.state.api_get_req",this.$store.state.api_get_req)
|
||||||
await this.$store.state.api_get_req('restart_program')
|
setTimeout(()=>{
|
||||||
window.close();
|
window.close();
|
||||||
|
},2000)
|
||||||
},
|
},
|
||||||
handleOk(inputText) {
|
handleOk(inputText) {
|
||||||
console.log("Input text:", inputText);
|
console.log("Input text:", inputText);
|
||||||
|
@ -2615,8 +2615,14 @@ export default {
|
|||||||
this.isLoading = false
|
this.isLoading = false
|
||||||
console.log('install_binding', res)
|
console.log('install_binding', res)
|
||||||
if (res.data.status) {
|
if (res.data.status) {
|
||||||
this.$store.state.toast.showToast("Installed binding successfully!", 4, true)
|
this.$store.state.toast.showToast("Binding installed successfully!", 4, true)
|
||||||
this.update_binding(binding_object.binding.folder);
|
this.update_binding(binding_object.binding.folder);
|
||||||
|
this.$store.state.api_get_req('restart_program')
|
||||||
|
this.$store.state.toast.showToast("Rebooting the app. Please wait...", 410, false)
|
||||||
|
console.log("this.$store.state.api_get_req",this.$store.state.api_get_req)
|
||||||
|
setTimeout(()=>{
|
||||||
|
window.close();
|
||||||
|
},2000)
|
||||||
} else {
|
} else {
|
||||||
this.$store.state.toast.showToast("Could not reinstall binding", 4, false)
|
this.$store.state.toast.showToast("Could not reinstall binding", 4, false)
|
||||||
}
|
}
|
||||||
@ -2684,7 +2690,13 @@ export default {
|
|||||||
this.isLoading = false
|
this.isLoading = false
|
||||||
console.log('reinstall_binding', res)
|
console.log('reinstall_binding', res)
|
||||||
if (res.data.status) {
|
if (res.data.status) {
|
||||||
this.$store.state.toast.showToast("Reinstalled binding successfully!", 4, true)
|
this.$store.state.toast.showToast("Binding reinstalled successfully!", 4, true)
|
||||||
|
this.$store.state.api_get_req('restart_program')
|
||||||
|
this.$store.state.toast.showToast("Rebooting the app. Please wait...", 410, false)
|
||||||
|
console.log("this.$store.state.api_get_req",this.$store.state.api_get_req)
|
||||||
|
setTimeout(()=>{
|
||||||
|
window.close();
|
||||||
|
},2000)
|
||||||
} else {
|
} else {
|
||||||
this.$store.state.toast.showToast("Could not reinstall binding", 4, false)
|
this.$store.state.toast.showToast("Could not reinstall binding", 4, false)
|
||||||
}
|
}
|
||||||
|
@ -1 +1 @@
|
|||||||
Subproject commit aba4e0d739f02cbce2569da19b6a1f7714d3807c
|
Subproject commit d1d90b57585ec74647de8e5e4ed6a62282a46032
|
Loading…
Reference in New Issue
Block a user