Turk_Mitai / app.py
AlihanAyverdi's picture
Update app.py
7b20552 verified
raw
history blame
1.81 kB
import os
import google.generativeai as genai
import gradio as gr
from dotenv import load_dotenv
# .env dosyasını yükleyin
load_dotenv(dotenv_path='.env', override=True)
# API anahtarını ayarlayın
genai.configure(api_key=os.getenv("GEMINI_API_KEY"))
# System instruction tanımlama
system_instruction = """Sen Türk mitolojisini çok iyi bilen bir yapay zeka asistanısın ve adın bundan sonra Kam. Sana bu konuda soru soranlara bu konu hakkında derinlemesine bilgi vermeni istiyorum. Bunun dışındaki konulara girmemek."""
def generate_text(prompt, model_name):
if not model_name:
return "Modeli Kontrol Ediniz"
try:
# Sistem talimatını prompt'a ekleyin
full_prompt = f"{system_instruction}\n\n{prompt}"
model = genai.GenerativeModel(model_name=model_name)
response = model.generate_content(full_prompt)
return response.text
except Exception as e:
return f"Hata Oluştu. Hata Kodu: {str(e)}"
# gradio arayüzü
with gr.Blocks() as demo:
gr.Markdown("# Geminichat")
gr.Markdown('Gemini\'ye sorular sorun')
with gr.Accordion("Modeller", open=False):
select_model = gr.Dropdown(
['gemini-1.5-flash', 'gemini-exp-1114', 'gemini-1.5-pro'],
label="Modeller",
value="gemini-1.5-pro"
)
with gr.Row():
text_input = gr.Textbox(label="Sorunuzu yazın.", placeholder="Enter tuşuna basarak gönderebilirsiniz")
with gr.Row():
btn = gr.Button("Sor")
with gr.Row():
text_output = gr.Textbox(label="Yanıtlar:")
btn.click(fn=generate_text, inputs=[text_input, select_model], outputs=text_output)
text_input.submit(fn=generate_text, inputs=[text_input, select_model], outputs=text_output)
demo.launch()