Spaces:
Sleeping
Sleeping
| # ✅ تحميل المكتبات | |
| from transformers import pipeline, AutoModelForCausalLM, AutoTokenizer | |
| from diffusers import StableDiffusionPipeline | |
| import gradio as gr | |
| import torch | |
| from PIL import Image | |
| from speechbrain.pretrained import EncoderASR # تم التعديل هنا | |
| # ✅ تحميل نموذج المحادثة (GPT-like) | |
| chat_model = pipeline("text-generation", model="akhooli/gpt2-small-arabic") | |
| # ✅ تحميل نموذج توليد الصور (Stable Diffusion) | |
| image_pipe = StableDiffusionPipeline.from_pretrained("stabilityai/stable-diffusion-xl-base-1.0") | |
| image_pipe.to("cuda" if torch.cuda.is_available() else "cpu") | |
| # ✅ تحميل نموذج تحليل الصور (ResNet) | |
| vision_pipe = pipeline("image-classification", model="microsoft/resnet-50") | |
| # ✅ تحميل نموذج استخراج النصوص (OCR) | |
| ocr_pipe = pipeline("image-to-text", model="microsoft/trocr-base-printed") | |
| # ✅ تحميل نموذج تحويل الكلام إلى نص (STT) | |
| asr_pipe = EncoderASR.from_hparams(source="speechbrain/asr-wav2vec2-commonvoice-ar", savedir="pretrained_models/asr-wav2vec2-commonvoice-ar") # تم التعديل هنا | |
| # ✅ دالة المحادثة | |
| def chat(user_input): | |
| response = chat_model(user_input, max_length=100)[0]['generated_text'] | |
| return response | |
| # ✅ دالة توليد الصور | |
| def generate_image(prompt): | |
| image = image_pipe(prompt).images[0] | |
| return image | |
| # ✅ دالة تحليل الصور | |
| def analyze_image(image): | |
| result = vision_pipe(image) | |
| return [{"label": r["label"], "score": r["score"]} for r in result] | |
| # ✅ دالة استخراج النصوص من الصور | |
| def extract_text(image): | |
| text = ocr_pipe(image)[0]['generated_text'] | |
| return text | |
| # ✅ دالة تحويل الكلام إلى نص | |
| def speech_to_text(audio_file): | |
| text = asr_pipe.transcribe_file(audio_file) | |
| return text | |
| # ✅ إنشاء واجهة Gradio | |
| with gr.Blocks(title="الذكاء الاصطناعي المتكامل") as app: | |
| gr.Markdown("# نظام ذكاء اصطناعي متكامل 🚀") | |
| with gr.Tab("💬 الدردشة"): | |
| chat_input = gr.Textbox(label="اكتب رسالتك...") | |
| chat_output = gr.Textbox(label="الرد") | |
| chat_btn = gr.Button("إرسال") | |
| chat_btn.click(chat, inputs=chat_input, outputs=chat_output) | |
| with gr.Tab("🎨 توليد الصور"): | |
| image_prompt = gr.Textbox(label="وصف الصورة") | |
| image_output = gr.Image(label="الصورة المولدة") | |
| image_btn = gr.Button("توليد") | |
| image_btn.click(generate_image, inputs=image_prompt, outputs=image_output) | |
| with gr.Tab("🔍 تحليل الصور"): | |
| image_input = gr.Image(type="pil", label="الصورة المدخلة") | |
| analysis_output = gr.JSON(label="نتيجة التحليل") | |
| analyze_btn = gr.Button("حلل") | |
| analyze_btn.click(analyze_image, inputs=image_input, outputs=analysis_output) | |
| with gr.Tab("📜 استخراج النصوص"): | |
| ocr_input = gr.Image(type="pil", label="الصورة المدخلة") | |
| ocr_output = gr.Textbox(label="النص المستخرج") | |
| ocr_btn = gr.Button("استخرج النص") | |
| ocr_btn.click(extract_text, inputs=ocr_input, outputs=ocr_output) | |
| with gr.Tab("🎙️ تحويل الكلام إلى نص"): | |
| stt_input = gr.Audio(type="filepath", label="الصوت المدخل") | |
| stt_output = gr.Textbox(label="النص المستخرج") | |
| stt_btn = gr.Button("حول الكلام إلى نص") | |
| stt_btn.click(speech_to_text, inputs=stt_input, outputs=stt_output) | |
| # ✅ تشغيل التطبيق | |
| app.launch(debug=True) |