Relatescript هي لغة تعريفية مصممة لتبسيط إنشاء مطالبات منظمة ومتسقة لنماذج اللغة الكبيرة (LLMs). تقدم هذه الورقة بناء جملة Relatescript ، وتسليط الضوء على أساسها في المنطق العلائقي والمسند. من خلال التركيز على العلاقات والظروف والسياق ، يربط الجسور الفجوة بين تعبير اللغة الطبيعية والدقة المطلوبة للتفاعل الفعال LLM. إنه يسهل نهجًا جديدًا للهندسة المطالبة ، حيث يطور البشر و LLMS بشكل تعاوني مطالبات منظمة يمكن تعديلها بسهولة وإعادة استخدامها للمهام المتنوعة ، وتعزيز إمكانيات الموثوقية والأتمتة لسير العمل الذي يحركه LLM.
في الحقل المتطور بسرعة لنماذج اللغة الكبيرة (LLMs) ، تعتمد فعالية التفاعلات اعتمادًا كبيرًا على جودة المطالبات. غالبًا ما تفرض لغات البرمجة الضرورية التقليدية هياكل صلبة تتناقض مع طبيعة التفكير البشري الدقيق والسياق. في حين أن اللغة الطبيعية توفر مرونة لا مثيل لها للتفاعل مع LLMs ، فإنها يمكن أن تؤدي إلى الغموض والتناقض في المخرجات السريعة. لمواجهة هذه التحديات ، نقدم Relatescript ، وهي لغة ميتا مصممة خصيصًا لصياغة مطالبات منظمة. يمكّن Relatescript المستخدمين من تحديد الكيانات والعلاقات والشروط بتنسيق يمكن قراءته ودقيقًا منطقيًا. لا يُقصد من Relatescript أن تكون لغة برمجة تقليدية مع محلل منفصل ، بل كتنسيق إدخال منظم يعزز إمكانيات الفهم المتأصلة في LLMs.
يتناول Relatescript الحاجة المتزايدة لنهج أكثر منهجية وموثوقية للهندسة المطالبة. عندما تصبح LLMs متطورة بشكل متزايد ، تصبح القدرة على توضيح التعليمات المعقدة وتحديد الظروف الدقيقة أمرًا بالغ الأهمية لتسخير إمكاناتها الكاملة. يوفر Relatescript طريقة يمكن الوصول إليها وبديهية لوصف العلاقات والتبعيات بين الكيانات ، مما يتيح للمستخدمين التعبير عن منطق معقد بطريقة تتماشى عن كثب مع التفكير البشري. من خلال بناء جملة مصمم للقراءة ، تمكن Relatescript من توليد مطالبات متسقة ، مما يجعله مناسبًا بشكل خاص لبناء قوالب موجهة قابلة لإعادة الاستخدام التي يمكن تكييفها لسيناريوهات مختلفة ، وبالتالي تعزيز كفاءة وموثوقية تفاعلات LLM. كما يسمح بالجمع بين نقاط القوة في معرفة المجال البشري مع بنية الشكل المنطقي.
يؤكد بناء جملة Relatescript على بنية اللغة الطبيعية ، مما يسمح بإعلانات قابلة للقراءة من الكيانات والعلاقات والظروف. تشمل بنياتها الرئيسية:
define <Entity> as <Description>.
<Entity> is <Predicate>.
<Entity> has <Attribute> of <Value>.
relate <Entity1> and <Entity2> as <RelationType> [ if <Condition> ].
if <Condition>, then <Action>.
ensure <Goal>.
موجه مع تعليمات مركب ومنطق متعدد المستويات.
define City as "A collection of buildings and people".
Berlin is a City.
Berlin has Population of 3_500_000.
define Metropolis as "A city with more than 1_000_000 inhabitants".
if City has Population > 1_000_000,
then ensure City is a Metropolis.
السلوك المتوقع: يجب أن تدرك LLM أن برلين "متروبوليس" لأن سكانها أكبر من 1،000،000.
المزيد من العينات
يعرّف نموذج Backus-Naur الممتد التالي (EBNF) بناء جملة "ترابط":
program ::= { statement } ;
statement ::= definition | predicate | attribute | relation | condition | goal ;
definition ::= " define " entity " as " string " . " ;
predicate ::= entity " is " predicate_value " . " ;
attribute ::= entity " has " attribute_name " of " attribute_value " . " ;
relation ::= " relate " entity " and " entity " as " relation_type [ " if " condition ] " . " ;
condition ::= " if " condition_expr " , then " action " . " ;
goal ::= " ensure " goal_expr " . " ;
condition_expr ::= entity predicate_operator predicate_value
| entity attribute_operator attribute_value
| entity relation_operator entity ;
goal_expr ::= entity relation_type entity ;
action ::= " ensure " goal_expr ;
entity ::= identifier ;
predicate_value ::= identifier ;
attribute_name ::= identifier ;
attribute_value ::= identifier | number ;
relation_type ::= string ;
predicate_operator ::= " is " | " is not " ;
attribute_operator ::= " has " | " does not have " ;
relation_operator ::= " relates to " | " does not relate to " ;
identifier ::= letter { letter | digit | " _ " } ;
letter ::= " a " | " b " | " ... " | " z " ;
string ::= ' " ' { character } ' " ' ;
number ::= digit { digit } ;
character ::= lowercase-char | uppercase-char | digit | special-char ;
lowercase-char ::= " a " | " b " | " ... " | " z " ;
uppercase-char ::= " A " | " B " | " ... " | " Z " ;
special-char ::= " - " | " _ " ;
digit ::= " 0 " | " 1 " | " ... " | " 9 " ;
الهيكل الرئيسي ( program
) : يتكون برنامج (موجه) من سلسلة من statements
، كل منها يحدد جزءًا معينًا من المعلومات أو العلاقة أو البيان.
البيانات :
definition
): يحدد كيان يحمل اسمًا ووصفًا.predicate
): يعين خاصية أو حالة إلى كيان.attribute
): يربط كيان مع سمة وقيمة.relation
): تحدد العلاقة بين كيانين ، اختياريا مع شرط.condition
): يحدد حالة وعمل ناتج.goal
): يصف الهدف الذي يجب تحقيقه.condition_expr
): تحقق من العلاقات أو الخصائص بين الكيانات.goal_expr
): صف ما الذي سيتم تحقيقه.action
): تتعلق بالهدف الذي يجب تحقيقه.entity
، predicate_value
، attribute_name
، attribute_value
و relation_type
هي مكونات أساسية ممثلة بمعرفات (أسماء مثل) أو القيم (مثل الأرقام).predicate_operator
، attribute_operator
، و relation_operator
نوع العلاقات أو الشروط ، على سبيل المثال "is" ، "has" ، "تتعلق".identifier
يمثل الأسماء ويجب أن يبدأ بخطاب.string
تعني النص وهي محاطة بعلامات اقتباس. يوفر Relatescript إطارًا منظمًا يحركه المنطق ويكمل بسلاسة مناهج المطالبة القائمة على اللغة الطبيعية. في حين أن اللغة الطبيعية تتفوق في نقل الفوارق والغموض ، خاصة بالنسبة للمهام الإبداعية ، فإن Relatescript يوفر الوضوح والدقة والاتساق المنطقي-الصفات الضرورية للتفاعلات المعقدة والمتعددة الخطوات مع LLMs.
يمكن أن يقترن المرتبط بشكل فعال بمدخلات اللغة الطبيعية للجمع بين نقاط القوة في كلتا الطريقتين:
على سبيل المثال ، قد يبدأ المستخدم بمطالبة لغة طبيعية مثل:
"ساعدني في بناء نموذج مبيعات. ابدأ من خلال وضع افتراضات أساسية حول العملاء والمنتجات."
يمكن بعد ذلك دعم هذا السياق بواسطة كتلة Relatescript:
define Product as "A product for sale".
Product is available.
Product has price of 100.
Product has category of "Electronics".
define Customer as "A person who wants to buy a product".
Customer has budget of 150.
relate Customer and Product as "buys" if Product is available and Customer has budget of 150.
ensure Customer buys Product.
يسمح هذا المزيج LLMs بالاستفادة من الإعداد البديهي والغني بالسياق للغة الطبيعية مع الالتزام بالهيكل المنطقي ودقة Relatescript.
يتماشى الترابط مع تقنيات المطالبة المتقدمة لـ LLMS ، مثل:
Relatescript مثالية للمهام التي تتطلب:
ومع ذلك ، لا تزال اللغة الطبيعية متفوقة على:
يكمن الاستخدام الأكثر فعالية لـ Relatescript في تطبيقه المختلط ، حيث يعمل كملحق لمدخلات اللغة الطبيعية. يتيح هذا النهج للمستخدمين موازنة الإبداع والاتساق المنطقي ، مما يتيح LLMs التعامل مع مجموعة واسعة من المهام مع كل من الدقة والقدرة على التكيف. ندعو إلى سير عمل تكراري حيث يتم تحسين مطالبات Relatescript بشكل مستمر على أساس ردود الفعل LLM ، مما يؤدي إلى تفاعلات فعالة وموثوقة بشكل متزايد.
تقدم العديد من اللغات والأطر القدرات العلائقية أو التصريبية أو الحساسة للسياق. هنا ، نقارن Relatescript بأنظمة مماثلة.
Prolog هي لغة برمجة منطقية شائعة الاستخدام في الذكاء الاصطناعي. يستخدم الحقائق والقواعد لاستخلاص معلومات جديدة.
Datalog هو نسخة مبسطة من Prolog ، وتستخدم في استعلامات قاعدة البيانات والتفكير المنطقي.
بيانات نموذج SPARQL و RDF كرسوم بيانية لعلاقات الموضوعات الموضحة ، وغالبًا ما يكون للشبكة الدلالية.
الوصف المنطق هو لغة رسمية لتمثيل المعرفة في الأنطولوجيا.
تستخدم محركات القواعد القواعد التعريفية لاتخاذ القرارات الآلية في تطبيقات الأعمال.
if-then
، مثل ظروف وأهداف Relatescript.هيكل Relatescript مثالي لـ:
البحث العلمي :
أنظمة الذكاء الاصطناعي :
تمثيل المعرفة : كيانات النمذجة والسمات والعلاقات داخل مجال معين.
أنظمة صنع القرار : استخدام الأهداف والظروف لضبط سلوك البرنامج ديناميكيًا.
الوضوح والدقة : يتم تنظيم Relatescript بوضوح ، مع قواعد وشروط محددة. هذا يقلل من الغموض غالبًا ما يكون موجودًا في اللغة الطبيعية ويضمن أن LLM يفسر المعنى المقصود بشكل صحيح.
العلاقات والشروط الواضحة : الهيكل التعريفي لـ Relatescript مناسب بشكل خاص لصياغة الاتصالات والشروط بشكل صريح. يمكن أن يساعد ذلك في استنتاجات LLM أو تنسيق الخطوات المتسلسلة.
التفسير المخفض : نظرًا لأن Relatescript يعتمد على قواعد اللغة المنطقية ، فإن "عمل التفسير" لـ LLM غالبًا ما يكون أسهل. يتطلب فهمًا أقل سياقًا للغة نفسها ويمكنه التركيز على التعليمات.
القابلية للقوة وإمكانية الوصول : بالنسبة للعديد من المستخدمين ، فإن اللغة الطبيعية أكثر سهولة وأسهل في الاستخدام ، حيث لا تتطلب أي بنية محددة أو بناء جملة محدد. هذه ميزة عند إنشاء تعليمات LLM بواسطة غير برمجة.
المرونة والتعبير : اللغة الطبيعية أكثر مرونة بكثير ويمكن أن تنقل التعليمات المعقدة الدقيقة التي يصعب التعبير عنها في نظام منظم للغاية مثل Relatescript. ومن الأمثلة على ذلك الاستعارات أو المصطلحات الغامضة أو أوصاف السياق الشائعة في التواصل البشري.
قدرة المعالجة لـ LLMS : تم تصميم LLMs الحديثة مثل GPT-4 لفهم اللغة الطبيعية ومعالجتها في السياق. غالبًا ما تكون قادرة بالفعل على تفسير التعليمات المعقدة دون الحاجة إلى لغة رسمية. في كثير من الحالات ، تفهم LLMs اللغة الطبيعية بدقة كافية ، لذلك يوفر Relatescript مزايا أقل.
يوضح هذا المثال كيف يمكن استخدام Relatescript لنمذجة الظواهر الفيزيائية ، وتحديداً التأثير الكهروضوئي في ميكانيكا الكم.
define Planck_constant as "h = 6.62607015 × 10⁻³⁴ Js".
define Photon as "A quantum of light".
Photon has frequency of f.
Photon has energy of E.
Photon has count of N.
relate energy and frequency as "E = Planck_constant * f".
define Metal as "A metallic element".
Metal has work_function of Phi.
Metal has electron_energy of Ee.
define Electron as "An emitted electron".
Electron has kinetic_energy of Ek.
relate Photon and Metal as "interacts" if
(Photon.energy * Photon.count) >= Metal.work_function.
if Photon interacts with Metal,
then create Electron with kinetic_energy of max((Photon.energy * Photon.count) - Metal.work_function, 0).
السلوك المتوقع: نماذج النظام التأثير الكهروضوئي حيث تتفاعل الفوتونات مع سطح معدني. عندما تتجاوز إجمالي الطاقة للفوتونات الحادث وظيفة عمل المعدن ، تنبعث من الإلكترونات بالطاقة الحركية مساوية للفرق بين طاقة الفوتون الحادث ووظيفة العمل.
يعرض هذا المثال إمكانية تربطها بالتعبير عن الظواهر البدنية المعقدة بطريقة دقيقة بما يكفي لأغراض حسابية وقابلة للقراءة بما يكفي لفهم الإنسان. تسد اللغة الفجوة بين الشكلية الرياضية ووصف اللغة الطبيعية ، مما يجعلها ذات قيمة لكل من التطبيقات التعليمية والعملية في الفيزياء والمجالات العلمية الأخرى.
يجد الحكاية مكانة من قبل:
يوضح هذا المثال كيف يمكن لـ Relatescript تصميم أنظمة AI المعقدة وتفاعلاتها.
define Agent as "A learning AI agent".
Agent has state of S.
Agent has action_space of A.
Agent has reward of R.
Agent has policy of π.
define Environment as "The agent's environment".
Environment has state_space of S.
Environment has transition_function of T.
Environment has reward_function of R.
relate Agent and Environment as "interacts" through "action".
relate Environment and Agent as "responds" with "state and reward".
if Agent takes Action in Environment,
then ensure Environment updates State according to transition_function and
ensure Agent receives Reward according to reward_function.
ensure Agent maximizes expected_future_reward.
السلوك المتوقع: نماذج النظام تفاعل معامل التعلم التعزيز مع بيئته ، بما في ذلك التحولات الحكومية والإجراءات والمكافآت. يلتقط صياغة الترابط المكونات والعلاقات الأساسية لنظام التعلم التعزيز.
يوضح هذا المثال كيف يمكن استخدام Relatescript لتنظيم ومراقبة التجارب السريرية.
define Patient as "A participant in the clinical study".
Patient has id of unique_number.
Patient has age of years.
Patient has symptoms of [].
Patient has treatment_group of "A" or "B".
Patient has response_measure of value.
define Treatment as "A therapeutic intervention".
Treatment has type of "Experimental" or "Control".
Treatment has dosage of amount.
Treatment has duration of weeks.
define Outcome as "The treatment result".
Outcome has primary_endpoint of value.
Outcome has adverse_events of [].
Outcome has followup_status of state.
relate Patient and Treatment as "receives".
relate Patient and Outcome as "shows".
if Patient receives Treatment,
then ensure Outcome is monitored and
ensure adverse_events are reported within 24 hours.
# Statistical Analysis Rules
define SignificanceTest as "Statistical evaluation".
relate Treatment_A and Treatment_B as "compare" through SignificanceTest.
ensure p_value < 0.05 for "statistical significance".
السلوك المتوقع: يدير النظام تجربة سريرية من خلال تتبع المرضى والعلاجات والنتائج. إنه يضمن المراقبة السليمة للنتائج والتحليل الإحصائي لفعالية العلاج. يوفر صياغة Relatescript طريقة منظمة لتحديد وإنفاذ بروتوكولات التجارب السريرية.
توقع المبيعات بناءً على البيانات التاريخية واتجاهات السوق.
define Product as "A sellable item".
Product has name of "Smartphone".
Product has historical_sales of [100, 150, 200, 250, 300].
define Market_Trend as "An indicator of market conditions affecting sales".
Market_Trend has trend of "Increasing".
define Sales_Prediction as "An estimated future sales figure".
Sales_Prediction has value of 350 if Market_Trend has trend of "Increasing" and Product has historical_sales[-1] < 350.
relate Product and Sales_Prediction as "predicted_sales".
ensure Product predicted_sales Sales_Prediction.
السلوك المتوقع: يجب أن يتنبأ النظام بالمبيعات المستقبلية لـ "الهاتف الذكي" استنادًا إلى اتجاه السوق المتزايد وآخر مبيعات تاريخية مسجلة.
يوفر Relatescript إطارًا منظمًا ومُصنَّعًا للمهام التي تتطلب الدقة والاتساق المنطقي ، مما يجعلها أداة قوية في تطبيقات مثل تمثيل المعرفة وصنع القرار وأنظمة الذكاء الاصطناعي. يؤكد بناء الجملة على قابلية القراءة وسهولة الفهم ، مما يسمح للمستخدمين بنقل الظروف والأهداف المعقدة بطريقة صداها مع اللغة البشرية الطبيعية.
من خلال دمج الترابط مع المطالبة باللغة الطبيعية ، يمكن للمستخدمين الاستفادة من أفضل ما في العالمين - يلقيون القدرات البديهية والإبداعية للغة الطبيعية مع دقة وتكرار التفكير المنطقي. يوسع هذا النهج المختلط نطاق تطبيقات Relatescript ووضعه كأداة أساسية لتعزيز سير العمل الذي يحركه LLM ، ويمهد الطريق للتفاعلات الأكثر موثوقية وفعالية وآلية مع نماذج لغة كبيرة.
يمكن أن يتضمن العمل المستقبلي اختبار اللغة في أنظمة إدارة المعرفة في العالم الحقيقي وأنظمة إدارة المعرفة. ستركز مزيد من الأبحاث أيضًا على تحسين بناء جملة اللغة ، واستكشاف قابلية التوسع ، ومعالجة نقاط الضعف الأمنية المحتملة.
من قبل فلوريان فيشر
https://github.com/fischerf/