testalpdroid / app.py
alperall's picture
Update app.py
134342e verified
raw
history blame
4.4 kB
# ... (Önceki import ve config kısımları aynı)
alp_logo = os.path.join(os.path.dirname(__file__), "alp.png")
# TÜRKÇE PROMPTLAR
DEFAULT_PROMPTS = [{
"category": "📝 Plan Yap",
"prompts": [
"İş kurma planı oluştur",
"Hedeflerim için yol haritası hazırla",
"Mülakat provası için strateji öner"
]
}, {
"category": "✍️ İçerik Üret",
"prompts": [
"Teknoloji blogu için makale taslağı oluştur",
"Şirket vizyon metni yaz",
"Satış e-postası taslağı hazırla"
]
}]
# TÜRKÇE ÖNERİLER
DEFAULT_SUGGESTIONS = [{
"label": 'Planlama',
"children": [
{"label": "İş Planı", "value": "İş kurma planı oluştur"},
{"label": "Hedef Planı", "value": "Hedeflerim için yol haritası hazırla"},
{"label": "Mülakat Stratejisi", "value": "Mülakat provası için strateji öner"}
]
}, {
"label": 'Yazım',
"children": [
{"label": "Teknoloji Makalesi", "value": "Teknoloji blogu için makale taslağı oluştur"},
{"label": "Vizyon Metni", "value": "Şirket vizyon metni yaz"},
{"label": "Satış E-postası", "value": "Satış e-postası taslağı hazırla"}
]
}]
# TÜRKÇE ARAYÜZ KODU
with gr.Blocks(css=css, fill_width=True) as demo:
state = gr.State({
"conversations_history": {},
"conversations": [],
"conversation_id": "",
"editing_message_index": -1,
})
with ms.Application(), antdx.XProvider(
theme=DEFAULT_THEME, locale='tr_TR'), ms.AutoLoading():
# SOL PANEL
with antd.Col(md=dict(flex="0 0 260px"), elem_classes="chatbot-conversations"):
with antd.Flex(vertical=True, gap="small"):
# Logo ve Başlık
with antd.Typography.Title(level=1, style={"fontSize": 24, "margin": 0}):
with antd.Flex(align="center", gap="small"):
antd.Image(alp_logo, width=32, height=32, preview=False)
ms.Span("AlpDroid AI")
# Yeni Sohbet Butonu
with antd.Button("Yeni Sohbet", block=True, icon=antd.Icon("PlusOutlined")) as add_conversation_btn
# Sohbet Geçmişi
with antdx.Conversations() as conversations:
with ms.Slot('menu.items'):
antd.Menu.Item("Sil", key="delete", danger=True, icon=antd.Icon("DeleteOutlined"))
# SAĞ PANEL
with antd.Col(flex=1, style={"height": "100%"}):
with antd.Flex(vertical=True, gap="middle"):
# Sohbet Kutusu
with antdx.Bubble.List(items=DEFAULT_CONVERSATIONS_HISTORY) as chatbot:
# Kullanıcı Mesajı
with antdx.Bubble.List.Role(role="user", placement="end"):
ms.Markdown()
with ms.Slot("footer"):
antd.Button(icon=antd.Icon("EditOutlined"))
antd.Popconfirm("Bu mesajı silmek istiyor musunuz?",
ok_button_props={"danger": True},
children=[antd.Button(icon=antd.Icon("DeleteOutlined"))]
)
# Asistan Mesajı
with antdx.Bubble.List.Role(role="assistant", placement="start"):
antd.Avatar(alp_logo)
ms.Markdown()
with ms.Slot("footer"):
antd.Button(icon=antd.Icon("SyncOutlined"))
antd.Popconfirm("Mesajı yeniden oluştur?",
children=[antd.Button(icon=antd.Icon("DeleteOutlined"))]
)
# Giriş Alanı
with antdx.Sender(placeholder="Mesaj yazın veya '/' ile komut seçin"):
with antd.Tooltip("Geçmişi Temizle"):
antd.Button(icon=antd.Icon("ClearOutlined"))
with antdx.Suggestion(items=DEFAULT_SUGGESTIONS):
antd.Input.Textarea()
# EVENT HANDLERS (Önceki koddaki olay yönetim fonksiyonları aynen kalacak)
# ... (Önceki event handler'lar buraya gelecek)
if __name__ == "__main__":
demo.launch()