A Matter of Representation: Towards Graph-Based Abstract Code Generation
Iskandar, Bedri, Tsen
Most large language models (LLMs) today excel at generating raw, sequential code with minimal abstractions and custom structures. However, there has been little work on graph-based abstract code generation, where significant logic is encapsulated in predefined nodes and execution flow is determined by edges. This is relevant for visual programming languages, and in cases where raw source code is inaccessible to users and LLM training sets. In this work, we propose and evaluate JSON representations for graphs to enable high accuracy graph-based abstract code generation. We evaluate these representations on ScratchTest, a mini-benchmark based on our custom Python re-implementation of Scratch, which tests the LLM in code graph space. Our findings demonstrate that LLMs can indeed perform the aforementioned generation task in a single pass without relying on specialized or complex pipelines, given the correct graph representations. We also show that different representations induce significantly different accuracies, highlighting the instrumental role of representations in this generation task. All in all, this work establishes the first steps towards representation learning for graph-based abstract code generation.
academic
مسألة التمثيل: نحو توليد الأكواد المجردة القائمة على الرسوم البيانية
تتفوق نماذج اللغة الكبيرة (LLMs) الحالية في توليد الأكواد الخام والمتسلسلة، لكن هناك بحث قليل جداً حول توليد الأكواد المجردة القائمة على الرسوم البيانية. يقوم الكود المجرد القائم على الرسوم البيانية بتغليف المنطق المهم في عقد معرّفة مسبقاً، مع تحديد تدفق التنفيذ من خلال الحواف. يشيع هذا الشكل من الأكواد في لغات البرمجة البصرية، وهو مهم أيضاً عندما لا يكون الكود المصدري الخام متاحاً للمستخدمين ومجموعات بيانات تدريب LLMs. تقترح هذه الورقة وتقيّم طرق التمثيل بصيغة JSON للرسوم البيانية لتحقيق توليد دقيق للأكواد المجردة القائمة على الرسوم البيانية. يقيّم المؤلفون هذه الطرق على ScratchTest، وهي مجموعة معايير صغيرة تعتمد على إعادة تطبيق Scratch بلغة Python. تكتشف الدراسة أنه تحت التمثيل الصحيح للرسوم البيانية، يمكن لـ LLMs فعلاً إكمال المهمة المذكورة أعلاه في جيل واحد، دون الاعتماد على خطوط أنابيب متخصصة أو معقدة. تؤدي طرق التمثيل المختلفة إلى دقة مختلفة بشكل كبير، مما يبرز الدور الحاسم للتمثيل في مهمة التوليد هذه.
يركز LLMs الحالي في مجال توليد الأكواد بشكل أساسي على توليد الأكواد الخام والمتسلسلة، وهي أكواد مرتبة بطريقة خطية على أساس الأسطر. ومع ذلك، تتطلب العديد من حالات التطبيق العملي توليد أكواد مجردة قائمة على الرسوم البيانية، مثل:
لغات البرمجة البصرية: Scratch و Unreal Engine Blueprints و n8n وغيرها
المكتبات والأطر عالية المستوى من التجريد: يتم تغليف تفاصيل التطبيق، ويمكن للمستخدمين فقط التعامل من خلال واجهات معرّفة مسبقاً
طرق توليد الرسوم البيانية: تركز GraphRNN و GraphGAN على توليد الرسوم البيانية العامة، وغير مناسبة للرسوم البيانية الوظيفية للأكواد
نماذج الأساس القائمة على الرسوم البيانية (GFMs): تتمتع الطرق القائمة على GNN بقابلية توسع ضعيفة، والطرق القائمة على LLM تعتمد بشكل مفرط على لغة طبيعية هشة
نماذج توليد الأكواد: موجهة بشكل أساسي للأكواد المتسلسلة، مع اختلاف كبير في قدرة الدعم لأنواع لغات وأطر مختلفة
تُظهر النماذج الثلاثة الأخرى (qwen3-32b و deepseek-r1-distill-llama-70b و llama-3.3-70b-versatile) أداءً أقل بكثير من gpt-oss-120b، مع دقة أقل وأخطاء أعلى في معظم الحالات.
تستشهد الورقة بـ 54 مرجعاً ذا صلة، تغطي توليد أكواد LLM والشبكات العصبية الرسومية ولغات البرمجة البصرية وغيرها من المجالات المهمة، مما يوفر أساساً نظرياً قوياً للبحث.
التقييم الشامل: هذا عمل رائد يحل بشكل منهجي لأول مرة مشكلة توليد الأكواد المجردة القائمة على الرسوم البيانية. على الرغم من وجود مجال للتحسين في طرق التقييم والتحليل النظري، فإن طريقة التمثيل المقترحة بسيطة وفعالة، وتضع أساساً مهماً لهذا الاتجاه البحثي الناشئ. يتمتع هذا العمل بقيمة عملية قوية ودلالة إرشادية، ومن المتوقع أن يعزز التطوير الإضافي في المجالات ذات الصلة.