Titanic / app.py
Docfile's picture
Update app.py
31938eb verified
import gradio as gr
import os
import markdown
token=os.environ.get("TOKEN")
os.environ["GOOGLE_API_KEY"] = token
from llama_index.llms.gemini import Gemini
llm = Gemini()
source_languages = ["Francais", "English", "Spanish"]
taget_languages = ['nzebi', 'Fang(ntumu)', 'gisir', 'dikota', 'yipunu', 'akele', 'Ghétsogo', 'Shimo', 'omyene_nkomi', 'isangu', 'Liwanzi']
lang_files = {'nzebi': 'Inzèbi.txt',
'gisir':'Gisir.txt',
'dikota':'dd.txt',
'yipunu':'Yipunu.txt',
'akele':'Akélé.txt',
'Ghétsogo':'Ghétsogo.txt',
'Shimo':'Shimo.txt',
'omyene_nkomi':'Omyènè_Nkomi.txt',
'isangu':'Isangu.txt',
'Liwanzi':'Liwanzi.txt',
'Fang(ntumu)':'Fang(ntumu).txt'}
safe = [
{
"category": "HARM_CATEGORY_HARASSMENT",
"threshold": "BLOCK_NONE",
},
{
"category": "HARM_CATEGORY_HATE_SPEECH",
"threshold": "BLOCK_NONE",
},
{
"category": "HARM_CATEGORY_SEXUALLY_EXPLICIT",
"threshold": "BLOCK_NONE",
},
{
"category": "HARM_CATEGORY_DANGEROUS_CONTENT",
"threshold": "BLOCK_NONE",
},
]
def main_fang(query):
return "En maintenance "
"""
GOOGLE_API_KEY = token # add your GOOGLE API key here
os.environ["GOOGLE_API_KEY"] = GOOGLE_API_KEY
#rom llama_index.llms import Gemini
"""
async def translatee(input_text, source, target):
targett = "dikota"
chemin_fichier = lang_files[targett]
with open(chemin_fichier, 'r', encoding='utf-8') as fichier:
contenu_langue_arrivee = fichier.read()
#tt = f" le texte ci haut est un ensemble de mot francais- {target}. en te basant uniquement sur ca. dis moi comment dire {input_text} en {target}"
tt = f"""
contexte : {contenu_langue_arrivee}
Utillisez les éléments de contexte suivants pour répondre à la question à la fin. Si vous ne connaissez pas la réponse,traduissez ce que vous pouvez et reecriver les autre comme ca , n'essayez pas d'inventer une réponse. Je veux que tu agisses comme un traducteur {source}-{target}. Je parle en {source} et tu traduis en {target} en te basant sur le contexte. Je ne veux aucune explication. Juste la réponse. Traduit ca < {input_text} >"""
#print(tt)
#response = model.generate_content(tt,safety_settings=safe)
#print(tt)
response = await llm.acomplete(tt,safety_settings=safe)
print(input_text)
print(f"{target}")
#result = model.generate_content(tt, safety_settings={'HARASSMENT':'block_none'})
#rint(result.text)
#print(result.parts)
#textet = result.parts[0].text
#print(textet.texte)
print(response)
return response
with gr.Blocks() as demo:
gr.HTML("""<html>
<head>
<style>
h1 {
text-align: center;
}
</style>
</head>
<body>
<h1>BOMA LANGUE </h1>
</body>
</html>""")
with gr.Row():
with gr.Column():
source_language_dropdown = gr.Dropdown(choices=source_languages,
value="Auto Detect",
label="Source Language")
input_textbox = gr.Textbox(lines=5, placeholder="Enter text to translate", label="Input Text")
with gr.Column():
target_language_dropdown = gr.Dropdown(choices=taget_languages,
value="English",
label="Target Language")
translated_textbox = gr.Textbox(lines=5, placeholder="", label="Translated Text")
btn = gr.Button("Translate")
btn.click(translatee, inputs=[input_textbox,
source_language_dropdown,
target_language_dropdown],
outputs=translated_textbox)
if __name__ == "__main__":
demo.launch()