Spaces:
Paused
Paused
rick
commited on
update demorrha
Browse files
app.py
CHANGED
|
@@ -108,8 +108,13 @@ class GlobalSystemPrompts:
|
|
| 108 |
def linguascribe():
|
| 109 |
SYSTEM_PROMPT = f"{lire_fichier('linguascribe.prompt')}"
|
| 110 |
return SYSTEM_PROMPT
|
| 111 |
-
|
|
|
|
|
|
|
|
|
|
| 112 |
def set_mode_translation(from_lang ,dest_lang):
|
|
|
|
|
|
|
| 113 |
SYSTEM_PROMPT=GlobalSystemPrompts.linguascribe()
|
| 114 |
OP_PROMPT = f"Translate({from_lang} to {dest_lang})"
|
| 115 |
return {
|
|
@@ -119,6 +124,30 @@ def set_mode_translation(from_lang ,dest_lang):
|
|
| 119 |
|
| 120 |
SUPPORTED_LANGUAGES=["Afrikaans", "Arabic", "Armenian", "Azerbaijani", "Belarusian", "Bosnian", "Bulgarian", "Catalan", "Chinese", "Croatian", "Czech", "Danish", "Dutch", "English", "Estonian", "Finnish", "French", "Galician", "German", "Greek", "Hebrew", "Hindi", "Hungarian", "Icelandic", "Indonesian", "Italian", "Japanese", "Kannada", "Kazakh", "Korean", "Latvian", "Lithuanian", "Macedonian", "Malay", "Marathi", "Maori", "Nepali", "Norwegian", "Persian", "Polish", "Portuguese", "Romanian", "Russian", "Serbian", "Slovak", "Slovenian", "Spanish", "Swahili", "Swedish", "Tagalog", "Tamil", "Thai", "Turkish", "Ukrainian", "Urdu", "Vietnamese", "Welsh"]
|
| 121 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 122 |
def main():
|
| 123 |
st.title("------- DEMORRHA -------")
|
| 124 |
|
|
@@ -129,10 +158,11 @@ def main():
|
|
| 129 |
if "process_mode" not in st.session_state:
|
| 130 |
st.session_state["process_mode"] = "translation"
|
| 131 |
|
| 132 |
-
|
|
|
|
|
|
|
| 133 |
if "translation" == st.session_state["process_mode"]:
|
| 134 |
-
|
| 135 |
-
#set_mode_translation()
|
| 136 |
|
| 137 |
# Initialisation de l'historique des messages avec le prompt système
|
| 138 |
if "messages" not in st.session_state:
|
|
@@ -176,14 +206,15 @@ def main():
|
|
| 176 |
|
| 177 |
# Sélection de la langue de destination
|
| 178 |
def on_language_change():
|
| 179 |
-
st.session_state.target_language = st.session_state.language_selector
|
| 180 |
|
| 181 |
st.selectbox(
|
| 182 |
label="Choisissez la langue de destination",
|
| 183 |
options=tuple(SUPPORTED_LANGUAGES),
|
| 184 |
placeholder="Sélectionnez une langue",
|
| 185 |
key="language_selector",
|
| 186 |
-
on_change=on_language_change
|
|
|
|
| 187 |
)
|
| 188 |
|
| 189 |
if __name__ == "__main__":
|
|
|
|
| 108 |
def linguascribe():
|
| 109 |
SYSTEM_PROMPT = f"{lire_fichier('linguascribe.prompt')}"
|
| 110 |
return SYSTEM_PROMPT
|
| 111 |
+
|
| 112 |
+
SYSTEM_PROMPT=""
|
| 113 |
+
OP_PROMPT=""
|
| 114 |
+
|
| 115 |
def set_mode_translation(from_lang ,dest_lang):
|
| 116 |
+
global SYSTEM_PROMPT
|
| 117 |
+
global OP_PROMPT
|
| 118 |
SYSTEM_PROMPT=GlobalSystemPrompts.linguascribe()
|
| 119 |
OP_PROMPT = f"Translate({from_lang} to {dest_lang})"
|
| 120 |
return {
|
|
|
|
| 124 |
|
| 125 |
SUPPORTED_LANGUAGES=["Afrikaans", "Arabic", "Armenian", "Azerbaijani", "Belarusian", "Bosnian", "Bulgarian", "Catalan", "Chinese", "Croatian", "Czech", "Danish", "Dutch", "English", "Estonian", "Finnish", "French", "Galician", "German", "Greek", "Hebrew", "Hindi", "Hungarian", "Icelandic", "Indonesian", "Italian", "Japanese", "Kannada", "Kazakh", "Korean", "Latvian", "Lithuanian", "Macedonian", "Malay", "Marathi", "Maori", "Nepali", "Norwegian", "Persian", "Polish", "Portuguese", "Romanian", "Russian", "Serbian", "Slovak", "Slovenian", "Spanish", "Swahili", "Swedish", "Tagalog", "Tamil", "Thai", "Turkish", "Ukrainian", "Urdu", "Vietnamese", "Welsh"]
|
| 126 |
|
| 127 |
+
def convert_language_name_to_iso6391(language_name):
|
| 128 |
+
# Dictionnaire de correspondance entre les noms de langues et les codes ISO 639-1
|
| 129 |
+
language_to_iso = {
|
| 130 |
+
"Afrikaans": "af", "Arabic": "ar", "Armenian": "hy", "Azerbaijani": "az",
|
| 131 |
+
"Belarusian": "be", "Bosnian": "bs", "Bulgarian": "bg", "Catalan": "ca",
|
| 132 |
+
"Chinese": "zh", "Croatian": "hr", "Czech": "cs", "Danish": "da",
|
| 133 |
+
"Dutch": "nl", "English": "en", "Estonian": "et", "Finnish": "fi",
|
| 134 |
+
"French": "fr", "Galician": "gl", "German": "de", "Greek": "el",
|
| 135 |
+
"Hebrew": "he", "Hindi": "hi", "Hungarian": "hu", "Icelandic": "is",
|
| 136 |
+
"Indonesian": "id", "Italian": "it", "Japanese": "ja", "Kannada": "kn",
|
| 137 |
+
"Kazakh": "kk", "Korean": "ko", "Latvian": "lv", "Lithuanian": "lt",
|
| 138 |
+
"Macedonian": "mk", "Malay": "ms", "Marathi": "mr", "Maori": "mi",
|
| 139 |
+
"Nepali": "ne", "Norwegian": "no", "Persian": "fa", "Polish": "pl",
|
| 140 |
+
"Portuguese": "pt", "Romanian": "ro", "Russian": "ru", "Serbian": "sr",
|
| 141 |
+
"Slovak": "sk", "Slovenian": "sl", "Spanish": "es", "Swahili": "sw",
|
| 142 |
+
"Swedish": "sv", "Tagalog": "tl", "Tamil": "ta", "Thai": "th",
|
| 143 |
+
"Turkish": "tr", "Ukrainian": "uk", "Urdu": "ur", "Vietnamese": "vi",
|
| 144 |
+
"Welsh": "cy"
|
| 145 |
+
}
|
| 146 |
+
|
| 147 |
+
# Retourne le code ISO 639-1 correspondant au nom de la langue
|
| 148 |
+
return language_to_iso.get(language_name, "en") # Par défaut, retourne 'en' si la langue n'est pas trouvée
|
| 149 |
+
|
| 150 |
+
|
| 151 |
def main():
|
| 152 |
st.title("------- DEMORRHA -------")
|
| 153 |
|
|
|
|
| 158 |
if "process_mode" not in st.session_state:
|
| 159 |
st.session_state["process_mode"] = "translation"
|
| 160 |
|
| 161 |
+
if "target_language" not in st.session_state:
|
| 162 |
+
st.session_state.target_language = "en"
|
| 163 |
+
|
| 164 |
if "translation" == st.session_state["process_mode"]:
|
| 165 |
+
set_mode_translation(from_lang=st.session_state.language_detected, dest_lang=st.session_state.target_language)
|
|
|
|
| 166 |
|
| 167 |
# Initialisation de l'historique des messages avec le prompt système
|
| 168 |
if "messages" not in st.session_state:
|
|
|
|
| 206 |
|
| 207 |
# Sélection de la langue de destination
|
| 208 |
def on_language_change():
|
| 209 |
+
st.session_state.target_language = convert_language_name_to_iso6391(st.session_state.language_selector)
|
| 210 |
|
| 211 |
st.selectbox(
|
| 212 |
label="Choisissez la langue de destination",
|
| 213 |
options=tuple(SUPPORTED_LANGUAGES),
|
| 214 |
placeholder="Sélectionnez une langue",
|
| 215 |
key="language_selector",
|
| 216 |
+
on_change=on_language_change,
|
| 217 |
+
index=SUPPORTED_LANGUAGES.index("English")
|
| 218 |
)
|
| 219 |
|
| 220 |
if __name__ == "__main__":
|