|
|
import gradio as gr |
|
|
import os |
|
|
os.environ["KERAS_BACKEND"] = "tensorflow" |
|
|
import keras |
|
|
import keras_nlp |
|
|
import utils |
|
|
|
|
|
from deep_translator import GoogleTranslator |
|
|
|
|
|
css = """ |
|
|
html, body { |
|
|
margin: 0; |
|
|
padding: 0; |
|
|
height: 100%; |
|
|
overflow: hidden; |
|
|
} |
|
|
body::before { |
|
|
content: ''; |
|
|
position: fixed; |
|
|
top: 0; |
|
|
left: 0; |
|
|
width: 100vw; |
|
|
height: 100vh; |
|
|
background-image: url('https://stsci-opo.org/STScI-01J5E849R5W27ZZ2C3QAE9ET75.png'); |
|
|
background-size: cover; |
|
|
background-repeat: no-repeat; |
|
|
opacity: 0.35; |
|
|
background-position: center; |
|
|
z-index: -1; |
|
|
} |
|
|
.gradio-container { |
|
|
display: flex; |
|
|
justify-content: center; |
|
|
align-items: center; |
|
|
height: 100vh; |
|
|
} |
|
|
""" |
|
|
|
|
|
gemma_lm = keras_nlp.models.CausalLM.from_preset("hf://sultan-hassan/CosmoGemma_2b_en") |
|
|
chat = utils.ChatState(gemma_lm) |
|
|
|
|
|
def launch(message): |
|
|
try: |
|
|
|
|
|
message_en = GoogleTranslator(source='auto', target='en').translate(message) |
|
|
|
|
|
|
|
|
response_en = chat.send_message(message_en) |
|
|
|
|
|
|
|
|
response_kk = GoogleTranslator(source='en', target='kk').translate(response_en) |
|
|
|
|
|
return response_kk |
|
|
except Exception as e: |
|
|
return f"Аударма немесе модельде қате орын алды: {str(e)}" |
|
|
|
|
|
examples = [ |
|
|
'Космологиядағы негізгі зерттеу әдістері қандай?', |
|
|
'Инфляциялық модельдерде қандай байланыстар инфляция параметрлерін болжауға әсер етеді?', |
|
|
'Астрономиядағы сигналдағы артық қуаттың себебі неде болуы мүмкін?', |
|
|
] |
|
|
|
|
|
iface = gr.Interface(launch, |
|
|
inputs="text", |
|
|
outputs="text", |
|
|
examples=examples, |
|
|
css=css, |
|
|
title="CosmoGemma қазақша сөйлейді 👋", |
|
|
description="CosmoGemma моделін қазақша сұрақтармен пайдаланыңыз, жауаптарды қазақша алыңыз.") |
|
|
|
|
|
iface.launch() |
|
|
|