File size: 4,031 Bytes
4bf8f67 31938eb |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 |
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()
|