تقوم LLM-Prepare بتحويل هياكل وملفات المشروع المعقدة إلى ملف مسطح واحد أو مجموعة من الملفات المسطحة ، مما يسهل المعالجة باستخدام مطالبات التعلم في السياق (ICL).
تقوم أداة Node.js بمسح دليل المشروع بشكل متكرر على أساس الحجج المقدمة (على الأقل دليل). إنه ينشئ طريقة عرض تخطيط مبسطة تتضمن جميع الدلائل والملفات المطابقة. بالإضافة إلى ذلك ، فإنه يجمع بين طريقة عرض التخطيط هذا مع المحتوى النص المجمعة للمشروع بأكمله. بشكل افتراضي ، يتم تجريد محتوى الملف المجمعة من التعليقات والمساحة البيضاء غير الضرورية. تدعم الأداة ضغط الإخراج لتقليل استخدام الرمز المميز ويمكنه التعامل مع المشاريع الكبيرة عن طريق تقطيع الإخراج. يتم تضمين مطالبات مثال للتوجيه.
يمكّن التعلم داخل السياق (ICL) نموذجًا من أداء المهام من خلال تفسير السياق المقدم في مطالبة ، مما يلغي الحاجة إلى تدريب إضافي أو صقل.
تعرف على المزيد حول التعلم داخل السياق (ICL)
--config لتحميل ملف تكوين JSON يحتوي على وسيط ومسارات محددة مسبقًا لتضمينها. .ignore تلقائيًا لاستبعاد الملفات أو الدلائل المحددة.CREATE TABLE MYSQL استنادًا إلى محتوى CSV المقدم.fs القياسية ، مما يوفر طرقًا إضافية ودعمًا للوعد..ignore مماثلة لـ .gitignore .yargs . قبل التثبيت ، تأكد من تثبيت Node.js و NPM (مدير حزمة العقدة) على نظامك. يمكنك تنزيل وتثبيت Node.js من موقع Node.js الرسمي.
لتثبيت واستخدام LLM-Prepare ، اتبع هذه الخطوات:
استنساخ المستودع: ابدأ باستنساخ المستودع الذي يحتوي على LLM-Prepare إلى جهازك المحلي.
git clone https://github.com/samestrin/llm-prepare/انتقل إلى دليل الجذر في مشروعك وتشغيله:
npm installلإتاحة LLM-Prepare من أي مكان على نظامك ، تحتاج إلى تثبيته على مستوى العالم. يمكنك القيام بذلك باستخدام NPM.
قم بتشغيل الأمر التالي في دليل المشروع الخاص بك:
npm link سيؤدي ذلك إلى إنشاء ارتباط عالمي على البرنامج النصي الخاص بك. الآن ، يمكنك تشغيل البرنامج النصي باستخدام llm-prepare من أي مكان في المحطة الخاصة بك.
يجب أن تعمل خطوات التثبيت المقدمة كما هي لكل من منصات MacOS و Linux.
بالنسبة لنظام التشغيل Windows ، تأكد من إضافة Node.js إلى مسارك أثناء التثبيت. يجب أن يعمل الأمر npm link أيضًا في Windows PowerShell أو موجه الأوامر ، مما يتيح لك تشغيل البرنامج النصي على مستوى العالم.
لتشغيل البرنامج النصي ، تحتاج إلى توفير وسيطة إلزامية واحدة: المسار إلى دليل المشروع ( --path-name أو -p ).
سيؤدي ذلك إلى معالجة جميع الملفات في دليل المشروع المحدد ، فيما يتعلق بأي ملفات .ignore ، وإخراج المحتوى والبنية الموحدة إلى وحدة التحكم الخاصة بك. الافتراضيات نمط الملف إلى "*"
llm-prepare -p " /path/to/project "أو
llm-prepare --path " /path/to/project " سيؤدي ذلك إلى معالجة جميع ملفات JavaScript في دليل المشروع المحدد ، فيما يتعلق بأي ملفات .ignore ، وإخراج المحتوى والبنية الموحدة إلى وحدة التحكم الخاصة بك.
llm-prepare -p " /path/to/project " -f " *.js " سيؤدي ذلك إلى معالجة جميع الملفات في دليل المشروع المحدد ، فيما يتعلق بأي ملفات .ignore ، وإخراج المحتوى والبنية الموحدة إلى Output.txt .
llm-prepare -p " /path/to/project " -o " output.txt " إذا لم تقم بتحديد اسم ملف ، فسيقوم ذلك بمعالجة جميع الملفات في دليل المشروع المحدد ، فيما يتعلق بأي ملفات .ignore ، وإخراج المحتوى والبنية الموحدة إلى project.txt . يتم إنشاء اسم الملف تلقائيًا بناءً على الدليل الأعلى في متغير مسار اسم المسار.
llm-prepare -p " /path/to/project " -oيمكنك بشكل اختياري تعيين متغير بيئة LLM_PREPARE_OUTPUT_DIR . إذا تم تعيين متغير بيئة LLM_PREPARE_OUTPUT_DIR ، فسيتم كتابة ملفات الإخراج إلى هذا الدليل.
إذا كنت لا ترغب في تضمين ملفات أو أدلة محددة ، فيمكنك تحديد القواعد باستخدام- --custom-ignore-string .
llm-prepare -p " /path/to/project " -o --custom-ignore-string " *docs*,*test* " إذا كنت لا ترغب في تضمين ملفات أو دلائل محددة ، فيمكنك تحديد القواعد باستخدام --custom-ignore-filename . استخدام.
llm-prepare -p " /path/to/project " -o --custom-ignore-filename " /path/to/.ignorefile " إذا كنت لا ترغب في تضمين ملفات أو دلائل محددة ، فيمكنك تحديد القواعد باستخدام --custom-ignore-filename . استخدام.
llm-prepare -p " /path/to/project " -o --custom-ignore-filename " /path/to/.ignorefile " يمكنك استخدام ملف تكوين JSON لتحديد الوسائط والمسارات التي يجب تضمينها في المعالجة.
مثال ملف config.json :
{
"args" : {
"output-filename" : " output.txt " ,
"compress" : true
},
"include" : [ " ./src/ " , " ./lib/ " ]
}لتشغيل البرنامج النصي مع ملف التكوين:
llm-prepare -c " config.json " --help Show help [boolean]
-p, --path Path to the project directory[string] [required]
-f, --file-pattern Pattern of files to include, e.g., ' .js$ ' or
' * ' for all files [string] [default: " * " ]
-o, --output-filename Output filename [string]
-i, --include-comments Include comments ? (Default: false) [boolean]
-c, --compress Compress ? (Default: false) [boolean]
--chunk-size Maximum size (in kilobytes) of each file[number]
-s, --suppress-layout Suppress layout in output (Default: false)
[boolean]
--default-ignore Use a custom default ignore file [string]
--ignore-gitignore Ignore .gitignore file in the root of the
project directory [boolean]
--show-default-ignore Show default ignore file [boolean]
--show-prompts Show example prompts in your browser [boolean]
--custom-ignore-string Comma-separated list of ignore patterns [string]
--custom-ignore-filename Path to a file containing ignore patterns
[string]
--config Path to the config file [string]
-v, --version Display the version number [boolean]"على الرغم من أن التغلب على مجموعات البيانات الكاملة لا يزال خيارًا قويًا إذا تجاوزت البيانات طول السياق بشكل كبير ، إلا أن نتائجنا تشير إلى أن ICL طويل السياق هو بديل فعال-تداول التداول في الوقت المناسب لوقت التداول المتزايد. نظرًا لأن الفعالية والكفاءة في استخدام أطوال سياق النموذج الطويلة جدًا ، فإننا نعتقد أن السجوتات الطويلة ستكون أداة قوية للعديد من المهام".
- يمكن ل
يسمح التعلم داخل السياق (ICL) بنموذج لغة كبير (LLM) بأداء المهام من خلال تفسير السياق المقدم في المطالبة دون تدريب إضافي أو صقل. يختلف هذا النهج بشكل كبير عن الطرق السابقة حيث تم تدريب النماذج بشكل صريح على مهمة محددة باستخدام مجموعات بيانات واسعة. بدلاً من ذلك ، تقوم ICL بتعزيز قاعدة المعرفة التي تم تدريبها مسبقًا للنموذج-وهو تفاهم شامل يتراكم خلال مرحلة التدريب الواسعة الأولية.
مع زيادة حجم الرمز المميز - أو كمية البيانات التي يمكن لـ LLM معالجتها وإنشائها في حالة واحدة - بشكل كبير ، أصبحت قيمة ICL أكثر أهمية. تتيح هذه الزيادة في حجم الرمز المميز LLMs التعامل مع مدخلات ومخرجات أطول وأكثر تعقيدًا ، مما يعزز قدرتها على فهم وتوليد نص متطور.
يوجه التعلم داخل السياق (ICL) نموذجًا لغويًا كبيرًا (LLM) في أداء المهام من خلال توفير السياق ذي الصلة ضمن موجه الإدخال. تتضمن هذه المطالبات عادة أمثلة أو تعليمات أو أنماط تساعد النموذج على فهم كيفية إنشاء الاستجابات المناسبة. فيما يلي بعض الخصائص وأمثلة لمطالبات ICL:
المساهمات في هذا المشروع مرحب بها. يرجى تورك المستودع وإرسال طلب سحب مع التغييرات أو التحسينات الخاصة بك.
تم ترخيص هذا المشروع بموجب ترخيص معهد ماساتشوستس للتكنولوجيا - راجع ملف الترخيص للحصول على التفاصيل.