upgraded ui

This commit is contained in:
Saifeddine ALOUI 2024-05-05 21:49:31 +02:00
parent d627defd1d
commit ad6d5202c8
6 changed files with 367 additions and 237 deletions

View File

@ -439,21 +439,22 @@ def stop_recording(data:Identification):
lollmsElfServer.info("Stopping audio capture")
text = lollmsElfServer.audio_cap.stop_recording()
ai_text = lollmsElfServer.receive_and_generate(text, client, n_predict=lollmsElfServer.config, callback= lollmsElfServer.tasks_library.sink)
if lollmsElfServer.tts and lollmsElfServer.tts.ready:
personality_audio:Path = lollmsElfServer.personality.personality_package_path/"audio"
voice=lollmsElfServer.config.xtts_current_voice
if personality_audio.exists() and len([v for v in personality_audio.iterdir()])>0:
voices_folder = personality_audio
elif voice!="main_voice":
voices_folder = lollmsElfServer.lollms_paths.custom_voices_path
else:
voices_folder = Path(__file__).parent.parent.parent/"services/xtts/voices"
language = lollmsElfServer.config.xtts_current_language# convert_language_name()
lollmsElfServer.tts.set_speaker_folder(voices_folder)
preprocessed_text= add_period(ai_text)
voice_file = [v for v in voices_folder.iterdir() if v.stem==voice and v.suffix==".wav"]
lollmsElfServer.tts.tts_to_audio(preprocessed_text, voice_file[0].name, language=language)
return preprocessed_text
# ai_text = lollmsElfServer.receive_and_generate(text, client, n_predict=lollmsElfServer.config, callback= lollmsElfServer.tasks_library.sink)
# if lollmsElfServer.tts and lollmsElfServer.tts.ready:
# personality_audio:Path = lollmsElfServer.personality.personality_package_path/"audio"
# voice=lollmsElfServer.config.xtts_current_voice
# if personality_audio.exists() and len([v for v in personality_audio.iterdir()])>0:
# voices_folder = personality_audio
# elif voice!="main_voice":
# voices_folder = lollmsElfServer.lollms_paths.custom_voices_path
# else:
# voices_folder = Path(__file__).parent.parent.parent/"services/xtts/voices"
# language = lollmsElfServer.config.xtts_current_language# convert_language_name()
# lollmsElfServer.tts.set_speaker_folder(voices_folder)
# preprocessed_text= add_period(ai_text)
# voice_file = [v for v in voices_folder.iterdir() if v.stem==voice and v.suffix==".wav"]
# lollmsElfServer.tts.tts_to_audio(preprocessed_text, voice_file[0].name, language=language)
return text

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

4
web/dist/index.html vendored
View File

@ -6,8 +6,8 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>LoLLMS WebUI - Welcome</title>
<script type="module" crossorigin src="/assets/index-a71ecc82.js"></script>
<link rel="stylesheet" href="/assets/index-a07e77b6.css">
<script type="module" crossorigin src="/assets/index-2d73a6c9.js"></script>
<link rel="stylesheet" href="/assets/index-d9263638.css">
</head>
<body>
<div id="app"></div>

View File

@ -922,7 +922,7 @@ export default {
});
}
else{
axios.get('/stop_recording').then(response => {
axios.post('/stop_recording', {client_id:this.$store.state.client_id}).then(response => {
this.is_recording = false;
this.pending = false;
console.log(response)

View File

@ -2055,6 +2055,135 @@
</div>
</td>
</tr>
<tr>
<td style="min-width: 200px;">
<label for="xtts_temperature" class="text-sm font-bold" style="margin-right: 1rem;">Temperature:</label>
</td>
<td>
<div class="flex flex-row">
<input
type="number"
id="xtts_temperature"
required
v-model.number="configFile.xtts_temperature"
@change="settingsChanged=true"
class="mt-1 px-2 py-1 border border-gray-300 rounded dark:bg-gray-600"
step="0.01"
>
</div>
</td>
</tr>
<tr>
<td style="min-width: 200px;">
<label for="xtts_length_penalty" class="text-sm font-bold" style="margin-right: 1rem;">Length Penalty:</label>
</td>
<td>
<div class="flex flex-row">
<input
type="number"
id="xtts_length_penalty"
required
v-model.number="configFile.xtts_length_penalty"
@change="settingsChanged=true"
class="mt-1 px-2 py-1 border border-gray-300 rounded dark:bg-gray-600"
step="0.1"
>
</div>
</td>
</tr>
<tr>
<td style="min-width: 200px;">
<label for="xtts_repetition_penalty" class="text-sm font-bold" style="margin-right: 1rem;">Repetition Penalty:</label>
</td>
<td>
<div class="flex flex-row">
<input
type="number"
id="xtts_repetition_penalty"
required
v-model.number="configFile.xtts_repetition_penalty"
@change="settingsChanged=true"
class="mt-1 px-2 py-1 border border-gray-300 rounded dark:bg-gray-600"
step="0.1"
>
</div>
</td>
</tr>
<tr>
<td style="min-width: 200px;">
<label for="xtts_top_k" class="text-sm font-bold" style="margin-right: 1rem;">Top K:</label>
</td>
<td>
<div class="flex flex-row">
<input
type="number"
id="xtts_top_k"
required
v-model.number="configFile.xtts_top_k"
@change="settingsChanged=true"
class="mt-1 px-2 py-1 border border-gray-300 rounded dark:bg-gray-600"
>
</div>
</td>
</tr>
<tr>
<td style="min-width: 200px;">
<label for="xtts_top_p" class="text-sm font-bold" style="margin-right: 1rem;">Top P:</label>
</td>
<td>
<div class="flex flex-row">
<input
type="number"
id="xtts_top_p"
required
v-model.number="configFile.xtts_top_p"
@change="settingsChanged=true"
class="mt-1 px-2 py-1 border border-gray-300 rounded dark:bg-gray-600"
>
</div>
</td>
</tr>
<tr>
<td style="min-width: 200px;">
<label for="xtts_speed" class="text-sm font-bold" style="margin-right: 1rem;">Speed:</label>
</td>
<td>
<div class="flex flex-row">
<input
type="number"
id="xtts_speed"
required
v-model.number="configFile.xtts_speed"
@change="settingsChanged=true"
class="mt-1 px-2 py-1 border border-gray-300 rounded dark:bg-gray-600"
step="0.1"
>
</div>
</td>
</tr>
<!-- Keeping the enable_text_splitting as is since it inherently respects the boolean data type -->
<tr>
<td style="min-width: 200px;">
<label for="enable_text_splitting" class="text-sm font-bold" style="margin-right: 1rem;">Enable Text Splitting:</label>
</td>
<td>
<div class="flex flex-row">
<input
type="checkbox"
id="enable_text_splitting"
v-model="configFile.enable_text_splitting"
@change="settingsChanged=true"
class="mt-1 px-2 py-1 border border-gray-300 rounded dark:bg-gray-600"
>
</div>
</td>
</tr>
</table>