Spaces:
Sleeping
Sleeping
File size: 3,317 Bytes
1ac3da4 3179eab 1ac3da4 3179eab 1ac3da4 3179eab 1ac3da4 3179eab 1ac3da4 3179eab 1ac3da4 3179eab 1ac3da4 3179eab 1ac3da4 3179eab 1ac3da4 3179eab 1ac3da4 3179eab 1ac3da4 3179eab 1ac3da4 3179eab 1ac3da4 3179eab 87f99db 1ac3da4 3179eab 1ac3da4 3179eab 1ac3da4 3179eab 1ac3da4 3179eab 1ac3da4 3179eab |
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 |
import streamlit as st
from huggingface_hub import InferenceClient
import os
# الحصول على التوكن من إعدادات البيئة
API_TOKEN = os.getenv("HF_TOKEN_Mistral")
client = InferenceClient(token=API_TOKEN)
# تهيئة الحالة
if "chat_history" not in st.session_state:
st.session_state.chat_history = []
if "corrected_sentence" not in st.session_state:
st.session_state.corrected_sentence = ""
# العنوان الرئيسي
st.title("تحسين الجمل والدردشة الذكية")
# --- قسم تحسين الجملة ---
st.subheader("✍️ أدخل جملة بها أخطاء لغوية")
user_input = st.text_input("اكتب الجملة هنا:", "ذهبتو إلى الحديقه و العب.")
if st.button("🔧 صحح الجملة"):
if user_input:
prompt = f"صحح الجملة التالية من حيث النحو والإملاء وركّبها بطريقة سليمة ولغوية جميلة: '{user_input}'"
try:
response = client.text_generation(
prompt,
model="mistralai/Mixtral-8x7B-Instruct-v0.1",
max_new_tokens=100,
temperature=0.7,
)
st.session_state.corrected_sentence = response.strip()
st.success(f"✅ الجملة المصححة: {st.session_state.corrected_sentence}")
except Exception as e:
st.error(f"⚠️ حدث خطأ أثناء التصحيح: {str(e)}")
else:
st.warning("⚠️ الرجاء إدخال جملة أولاً!")
# --- قسم الدردشة ---
st.subheader("💬 ناقش الجملة المصححة")
if st.session_state.corrected_sentence:
# عرض المحادثة السابقة
for speaker, message in st.session_state.chat_history:
st.write(f"**{speaker}:** {message}")
# وظيفة إرسال الرسالة
def submit_chat():
chat_text = st.session_state.chat_input
if chat_text:
prompt = (
f"الجملة المصححة هي: '{st.session_state.corrected_sentence}'. "
f"سؤال المستخدم: '{chat_text}'. "
f"أجب باللغة العربية فقط، ولا تستخدم أي كلمة أو جملة إنجليزية. استخدم لغة عربية سليمة ومفهومة."
)
try:
response = client.text_generation(
prompt,
model="mistralai/Mixtral-8x7B-Instruct-v0.1",
max_new_tokens=150,
temperature=0.7,
)
st.session_state.chat_history.append(("🧑 المستخدم", chat_text))
st.session_state.chat_history.append(("🤖 المساعد", response.strip()))
st.session_state.chat_input = ""
except Exception as e:
st.error(f"⚠️ حدث خطأ أثناء المحادثة: {str(e)}")
# مربع إدخال الرسالة
st.text_input(
"اكتب سؤالك أو تعليقك حول الجملة المصححة (واضغط Enter):",
key="chat_input",
on_change=submit_chat,
)
else:
st.write("📌 يرجى تصحيح جملة أولاً لبدء المحادثة.")
|