Spaces:
Sleeping
Sleeping
| import autogen | |
| # النماذج التي أكدت عملها بدون إضافات المزود اليدوية | |
| MODEL_MAP = { | |
| "Analyst": "Qwen/Qwen3-Next-80B-A3B-Instruct", | |
| "StyleGuardian": "openai/gpt-oss-120b", | |
| "Architect": "deepseek-ai/DeepSeek-V3.2-Exp", | |
| "DraftWriter": "deepcogito/cogito-v2-preview-llama-405B", | |
| "Humanizer": "deepcogito/cogito-671b-v2.1", | |
| "ContinuityGuard": "meta-llama/Llama-3.3-70B-Instruct", | |
| "Psychologist": "zai-org/GLM-4.7-FP8", | |
| "Critic": "Qwen/Qwen3-235B-A22B-Thinking-2507", | |
| "Editor": "inclusionAI/Ling-1T" | |
| } | |
| def get_llm_config(model_id, user_token): | |
| return { | |
| "config_list": [ | |
| { | |
| "model": model_id, | |
| "api_key": user_token, | |
| "base_url": "https://router.huggingface.co/v1", | |
| "api_type": "openai", | |
| } | |
| ], | |
| "temperature": 0.7, | |
| "cache_seed": None, | |
| } | |
| def create_agents(user_token): | |
| # إنشاء الوكلاء المساعدين | |
| def create_asst(name, msg, model_key): | |
| return autogen.AssistantAgent( | |
| name=name, | |
| system_message=msg, | |
| llm_config=get_llm_config(MODEL_MAP[model_key], user_token) | |
| ) | |
| agents = { | |
| "analyst": create_asst("Analyst", "أنت المحلل البنيوي للنص.", "Analyst"), | |
| "style_guardian": create_asst("Style_Guardian", "أنت حارس الأسلوب الأدبي.", "StyleGuardian"), | |
| "architect": create_asst("Architect", "أنت مهندس الحبكة السردية.", "Architect"), | |
| "draft_writer": create_asst("Draft_Writer", "أنت كاتب المسودة الأولية.", "DraftWriter"), | |
| "humanizer": create_asst("Humanizer", "أنت خبير الأنسنة والتفاصيل الحسية.", "Humanizer"), | |
| "continuity_guard": create_asst("Continuity_Guard", "أنت مراقب الاستمرارية ومنطق الأحداث.", "ContinuityGuard"), | |
| "psychologist": create_asst("Psychologist", "أنت محلل الدوافع النفسية للشخصيات.", "Psychologist"), | |
| "critic": create_asst("Critic", "أنت الناقد الأدبي الصارم.", "Critic"), | |
| } | |
| # رئيس التحرير بوضع NEVER للعمل مع واجهة الويب | |
| agents["editor"] = autogen.UserProxyAgent( | |
| name="Editor_In_Chief", | |
| human_input_mode="NEVER", | |
| max_consecutive_auto_reply=15, | |
| code_execution_config=False, | |
| llm_config=get_llm_config(MODEL_MAP["Editor"], user_token), | |
| system_message="أنت رئيس التحرير المسؤول عن دمج كل مساهمات الوكلاء في نص روائي واحد متكامل." | |
| ) | |
| return agents | |