Spaces:
Sleeping
Sleeping
File size: 3,079 Bytes
957e08d edd6878 957e08d edd6878 3a77b33 957e08d edd6878 957e08d edd6878 957e08d edd6878 957e08d edd6878 957e08d edd6878 957e08d edd6878 40400d5 dcde8db edd6878 957e08d edd6878 957e08d edd6878 957e08d edd6878 957e08d edd6878 1ff3c75 edd6878 957e08d edd6878 957e08d |
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 |
import streamlit as st
from groq import Groq
import os
# إعداد المفتاح السري من HuggingFace Secrets
GROQ_API_KEY = os.getenv("DEEPSEEK_API_KEY")
# تهيئة عميل Groq
client = Groq(api_key=GROQ_API_KEY)
# حالة الجلسة
if "corrected_sentence" not in st.session_state:
st.session_state.corrected_sentence = ""
if "chat_history" not in st.session_state:
st.session_state.chat_history = []
# عنوان التطبيق
st.title("🔧 مصحّح الجُمل ومحادثة باللغة العربية")
# 📌 القسم الأول: تصحيح الجملة
st.subheader("✍️ أدخل جملة بالعربية لتصحيحها:")
arabic_input = st.text_input("جملتك هنا:", "")
if st.button("🔍 صحّح الجملة"):
if arabic_input:
prompt = f"صحّح الجملة التالية إن كانت تحتوي على أخطاء نحوية أو لغوية، وإن كانت صحيحة فقط أعد كتابتها بشكل جميل: '{arabic_input}'"
response = client.chat.completions.create(
#model="deepseek-r1-distill-llama-70b",
model="meta-llama/llama-4-scout-17b-16e-instruct",
messages=[{"role": "user", "content": prompt}],
temperature=0.3,
max_tokens=200
)
corrected = response.choices[0].message.content.strip()
st.session_state.corrected_sentence = corrected
st.success(f"✅ الجملة المصححة:\n\n**{corrected}**")
else:
st.warning("📝 الرجاء إدخال جملة أولاً!")
# 📌 القسم الثاني: المحادثة حول الجملة المصححة
if st.session_state.corrected_sentence:
st.subheader("💬 تحاور مع الذكاء الاصطناعي حول الجملة")
for role, msg in st.session_state.chat_history:
if role == "user":
st.markdown(f"🧑💬 **أنت**: {msg}")
else:
st.markdown(f"🤖 **الذكاء الاصطناعي**: {msg}")
chat_input = st.text_input("📨 أرسل سؤالك بالعربية", key="chat_input")
if st.button("💭 أرسل"):
if chat_input:
full_prompt = f"الجملة المصححة هي: '{st.session_state.corrected_sentence}'.\n\nالمستخدم يسأل: '{chat_input}'.\n\nأجب بشكل طبيعي وبالعربية الفصحى."
chat_response = client.chat.completions.create(
model="meta-llama/llama-4-scout-17b-16e-instruct",
messages=[{"role": "user", "content": full_prompt}],
temperature=0.7,
max_tokens=300
)
reply = chat_response.choices[0].message.content.strip()
st.session_state.chat_history.append(("user", chat_input))
st.session_state.chat_history.append(("assistant", reply))
st.rerun()
# زر إعادة تعيين
if st.button("🔄 إعادة تعيين"):
st.session_state.chat_history = []
st.session_state.corrected_sentence = ""
st.rerun()
|