AI Generative AI يلتقي بلغة برمجة جوليا
دليل شامل لمشاريع وموارد الذكاء الاصطناعى في/ل/المرتبطة بجوليا.
جوليا هي لغة ديناميكية عالية المستوى وعالية الأداء للحوسبة الفنية.
يشمل AI التوليدي الخوارزميات والنماذج التي تستفيد من التعلم الآلي على نطاق واسع لإنشاء محتوى جديد (عبر العديد من الطرائق) ، أتمتة ، فهم ، تحليل ، استخراج ، وأكثر من ذلك بكثير ، والتكيف مع مجموعة واسعة من التطبيقات تتجاوز مجرد إنشاء المحتوى.
محتويات
- مشاريع الذكاء الاصطناعى التوليدي وجوليا
- النماذج
- API SDKs
- مقدمي النموذج
- مقدمي الخدمات السحابية
- قواعد بيانات المتجهات
- DBMs للأغراض العامة مع دعم مؤشر المتجه
- حزم
- حزم JLL
- المعايير/المقارنات
- التطبيقات/المنتجات
- الدروس/التعلم
- يذكر الجدير بالملاحظة
- عمليات النشر المحلية
- AI التوليدي - الجيل السابق
- يجب أن تعرف مشاريع بيثون
- قوائم رهيبة أخرى
مشاريع الذكاء الاصطناعى التوليدي وجوليا
- منظمة Juliagenai - منظمة GitHub ومجتمع من مطوري جوليا والباحثين الذين يعملون على الذكاء الاصطناعي.
النماذج
بناء وتدريب ونشر نماذج لغة كبيرة (وطرائق أخرى) في جوليا.
- Flux.jl - Flux هي مكتبة تعلم الآلة لجوليا مرنة وتتيح بناء نماذج معقدة. ومع ذلك ، في وقت كتابة هذا التقرير ، لست على دراية بأي نماذج لغة كبيرة (LLMs) التي تم تنفيذها وتدريبها في التدفق.
- Transformers.JL-Transformers.jl هي حزمة Julia التي توفر واجهة برمجة تطبيقات عالية المستوى لاستخدام نماذج المحولات التي تم تدريبها مسبقًا. كما يسمح بتنزيل أي طرز من Hugging Face Hub مع سلسلة Macro
@hgf_str . - Pickle.JL - حزمة رائعة لتحميل أوزان Pytorch في جوليا (إذا كنت ترغب في تنفيذ النماذج بنفسك).
- bytepairencoding.jl - تنفيذ جوليا النقي لخوارزمية ترميز زوج البايت (BPE). يتم استخدامه بواسطة Transformers.jl لرمز النص.
- LLAMA2.JL - LLAMA2.JL يوفر رمزًا بسيطًا لاستدلال وتدريب نماذج اللغة المستندة إلى LLAMA2 استنادًا إلى LLAMA2.C. وهو يدعم تحميل الأوزان الكمية بتنسيق GGUF (
q4_K_S البديل). مشاريع مماثلة أخرى: languagemodels.jl - Llama.jl - Julia Interface to llama.cpp ، مكتبة C/C ++ لتشغيل نماذج اللغة محليًا. يدعم مجموعة واسعة من النماذج.
- Whisper.jl - Julia Interface to Whisper.cpp ، وهو استنتاج عالي الأداء في C/C ++ من نموذج التعرف على الكلام التلقائي لـ Openai (ASR).
API SDKs
مقدمي النموذج
الوصول إلى نماذج الذكاء الاصطناعي التوليدي عبر واجهات برمجة التطبيقات الرسمية.
- Openai.JL - غلاف جوليا الذي تم صيانته في المجتمع إلى API Openai.
مقدمي الخدمات السحابية
الوصول إلى نماذج الذكاء الاصطناعي التوليدي عبر SDKs لمقدمي الخدمات السحابية الشهيرة.
- googlecloud.jl - SDK لـ Google Cloud. هناك علاقات عامة مفتوحة لتمكين نقاط نهاية Vertex AI.
- googlegenai.jl - غلاف غير رسمي لـ Google Gemini API.
قواعد بيانات المتجهات
- Pinecone.JL - SDK لقاعدة بيانات Pinecone.io المتجهات.
DBMs للأغراض العامة مع دعم مؤشر المتجه
| اسم | عميل جوليا | أمثلة الاستخدام |
|---|
| Elasticsearch | ElasticsearchClient.JL | GPTSeachPlugin مع Elasticsearch |
| OpenSearch | ElasticsearchClient.JL | GPTSeachPlugin مع OpenSearch |
| PostgreSQL + PGVector | libpq.jl | أمثلة PGVector لجوليا |
حزم
- REPLGPT.JL - يجلب Interface chatgpt كوضع Julia Repl.
- HelpGPT.JL - استدعاء chatgpt لشرح أي أخطاء في كود جوليا.
- GenGPT3.JL - وظيفة Gen.JL التوليدي التي تلتف API Openai.
- promptingtools.jl - يساعد في التطبيقات اليومية لنماذج اللغة الكبيرة في جوليا من خلال لف واجهات برمجة التطبيقات القادمة ، وإعادة استخدام المطالبات عبر القوالب ، وتمكين الانتقال السهل بين مزودي النماذج المختلفين (على سبيل المثال ، Openai ، Ollama). (إخلاء المسئولية: أنا مؤلف هذه الحزمة.)
- llmtextanalysis.jl - الاستفادة من نماذج اللغة الكبيرة للكشف عن الموضوعات/المفاهيم/الأطياف في مجموعات المستندات الكبيرة وتقييمها وتقييمها. (إخلاء المسئولية: أنا مؤلف هذه الحزمة.)
- AIHELPME.JL - مساعدة رمز الذكاء الاصطناعى المحسّن عن طريق الاستفادة من وثائق الحزمة (الجيل المعزز للاسترجاع). يأتي معبأة مسبقًا لحزم جوليا المشتركة ، ولكن يمكن استخدامها لأي حزمة.
- AIHELPUI.JL - واجهة رسومية قائمة على الويب لـ AIHELPME.JL المبني على أعلى Stipple.JL.
- protoportal.jl-واجهة رسومية قائمة على الويب لـ promptingtools.jl مع قوالب موجهة ووظائف إضافية (تنفيذ رمز جوليا والثقل التلقائي ، والتعريف ، والضغط التلقائي ، والخطاب إلى النص). على غرار chatgpt ولكن موجه نحو جوليا.
حزم JLL
JLLs عبارة عن مكتبات ومباريات تنفيذية تم إنشاؤها مسبقًا لتثبيت المشاريع غير الجوليكية والاتصال بها بسهولة (على سبيل المثال ، C/C ++). غالبًا ما تكون الخطوة الأولى نحو حزمة جوليا مع واجهة اصطلاح.
- llama_cpp_jll.jl - حزمة JLL لـ llama.cpp ، أفضل واجهة للموديلات على غرار Llama2 الكمي.
المعايير/المقارنات
- Julia LLM Leadorboard - مقارنة بين قدرات توليد اللغة Julia لمختلف نماذج اللغة الكبيرة عبر مجموعة من المهام. قم بزيارة إذا كنت تريد المساعدة في اختيار النموذج المناسب لتطبيقك.
- Humaneval.JL - نسخة جوليا من Openai/Human -Eval. يعيد كتابة مشاكل Python الأصلية في إصدار Julia ويوفر نتائج التقييم مع العديد من LLMs أحدث.
التطبيقات/المنتجات
التطبيقات والمنتجات التي "تعمل" مع لغة جوليا.
- Github Copilot - اقتراحات متصلة ممتازة بمساعدة نماذج Openai. إنه يعمل بشكل جيد للغاية مع لغة جوليا للمهام المتكررة سطرًا واحدًا في وقت واحد ، ولكن نادراً ما تكون أجزاء التعليمات البرمجية الأكبر صحيحة.
- Codium.ai - مكون إضافي IDE أو VSCODE كبير لتحليل الكود والاقتراح وتوليد أجنحة الاختبار. على الرغم من أن الاختبارات مكتوبة أكثر بأسلوب pytest بدلاً من جوليا الاصطلاحية. لديها طبقة مجانية.
- Refort - يتم تشغيل Replit's RELE بواسطة نموذج داخلي يدعم لغة جوليا.
- Codeium - بديل مجاني لـ Github Copilot مع امتدادات لمعظم المحررين.
- المؤشر - IDE البديل يعتمد على VSCode مع إكمال والاقتراحات التي تعمل بمواد طاقة الذكاء الاصطناعي. إنه يعمل بشكل جيد مع لغة جوليا.
تطبيقات ومنتجات تابعة لجوليا باستخدام LLMS
- Juliahub Askai - Askai هو تطبيق Juliahub's Rag (الجيل المعزز للاسترجاع) يسمح للمستخدمين بطرح أسئلة حول لغة جوليا ونظامها الإيكولوجي. إنه مجاني ، لكن عليك تسجيل الدخول إلى JuliaHub لاستخدامه.
- Assistant Genie UI - Genie UI Assistant هو منشئ واجهة المستخدم GPT -4 يعمل بمساعدة مستخدمي Genie.JL على إنشاء واجهة مستخدم أسرع باستخدام اللغة الطبيعية.
- Comind - شبكة اجتماعية ، رسائل ، وواجهة LLM التي تم إنشاؤها في جوليا.
غرفة الانتظار
مشاريع جديدة لا تزال تنتظر إثبات نفسها وجمع ما يكفي من النجوم.
- FlashRank.jl - تصنيف المستندات السريعة والمحلية مع نماذج يمكن تشغيلها على أي جهاز كمبيوتر (قائم على وحدة المعالجة المركزية). استنادا إلى Python's Flashrank.
- SemanticCaches.jl - التخزين المؤقت الأكثر ذكاءً لتطبيقات Genai مع نموذج تضمين صغير - تقليل الكمون ، طلب واحد في وقت واحد.
- Spehulak.JL - منصة قابلية الملاحظة Genai لتصحيح مكالمات LLM الخاصة بك. متكاملة بالكامل مع promptingtools.jl.
لم يتم إصداره ، تجريبي ولكن وظيفي:
- Milvus.JL - تنفيذ الحد الأدنى وغير الرسمي لعميل Milvus Vectordb لجوليا.
المشاريع المؤرشفة
- GPTCodingTools.JL - أداة توليد الكود للغة Julia مع قوالب موجهة مفيدة وميزات الشفاء الذاتي (مترجم ALA Openai Code). إنه يعمل ، ولكن تم التخلي عن التنمية. (إخلاء المسئولية: أنا مؤلف هذه الحزمة.)
الدروس/التعلم
- البرنامج التعليمي لاستخدام LLMS مع Transformers.JL - برنامج تعليمي موجز حول كيفية استخدام Transformers.jl للوصول إلى LLMS من Huggingface Hub.
- بناء chatbot rag على dataframes.jl وثائق - دليل التدريب العملي - دليل عملي حول كيفية بناء chatbot rag على وثائق dataframes.jl باستخدام الحد الأدنى من التبعيات.
- Genai Mini Thks: استخراج البيانات من (.*)؟ لا تنظر إلى أبعد من ذلك! - برنامج تعليمي عن استخراج البيانات المنظم. جزء من سلسلة أكبر من البرامج التعليمية حول المهام الصغيرة التي يمكن القيام بها مع Genai.
- خرقة ثنائية صغيرة - غوص عميق ممتاز في البحث الدلالي ("R" في خرقة). يعرض أنه مع 100 سطر من جوليا ، يمكنك البحث عن قطع 15 متر (~ حجم ويكيبيديا) في <20ms.
يذكر الجدير بالملاحظة
بعض المشاريع أدناه ليست بالضرورة خاصة بالجيوليا ، ولكنها جديرة بالملاحظة في مساحة الذكاء الاصطناعى التوليدي ومثيرة للاهتمام لمطوري جوليا.
عمليات النشر المحلية
- Ollama - الخيار الأفضل لأولئك الذين يتطلعون إلى استضافة نموذج لغة كبير محليًا. ما عليك سوى بدء تشغيل الخادم وإرسال الطلبات باستخدام http.jl.
- LM Studio - تطبيق سطح المكتب لاستضافة LLMs وتفاعله محليًا. إنه خيار رائع لأولئك الذين يرغبون في استخدام LLMs دون الترميز. إنه مجاني للاستخدام الشخصي .
AI التوليدي - الجيل السابق
- GenerativeModels.jl - مكتبة مفيدة لتدريب المزيد من النماذج التقليدية مثل VAEs. إنه مبني على قمة Flux.JL.
### أدوات مساعدة مفيدة
- Stipple.JL - لبناء تطبيقات البيانات التفاعلية في جوليا النقية (جزء من النظام البيئي genie.jl). ممتاز لبناء واجهات على شبكة الإنترنت لتطبيقات Genai.
- Taro.JL - محلل قوي لأنواع مختلفة من المستندات (interop إلى Java). مفيد جدًا لبناء تطبيقات الجيل المتمثل في الاسترجاع (RAG).
يجب أن تعرف مشاريع بيثون
بيثون على الحافة الأمامية لثورة الذكاء الاصطناعي التوليدي. لحسن الحظ ، لدينا pythoncall.jl يسمح لنا بسهولة بالاتصال بجميع حزم بيثون أدناه.
- Transformers Huggingface - المكتبة الأكثر شعبية للوصول إلى LLMs والموديلات الأخرى. يمكن استخدامه في الغالب عبر Transformers.jl (انظر أعلاه).
- Langchain - أفضل خيار لبناء التطبيقات أعلى LLMS (على سبيل المثال ، السلاسل ، الوكلاء). لديها الكثير من المحولات للنماذج الشائعة وقواعد البيانات والخدمات الأخرى.
- مؤشر Llama - على غرار Langchain ولكن مع التركيز على التطبيقات التي تركز على البيانات مثل Rag.
- المدرب - إطار استخراج منظم بسيط ولكنه قوي على رأس API Openai. ممتاز لفهم قوة استدعاء الوظيفة API مع Pydantic.
- Marvin - لبنات بناء قوية لبناء تطبيقات الذكاء الاصطناعى بسرعة وفضحها عبر واجهة برمجة تطبيقات جاهزة للإنتاج.
- فتح المترجم المترجم - دع LLMS تشغيل رمز على جهاز الكمبيوتر الخاص بك (على سبيل المثال ، Python و JavaScript و Shell والمزيد). بديل محلي مفتوح المصدر لمترجم رمز Openai.
قوائم رهيبة أخرى
- AI Great Great Tenderative - قائمة رائعة لجميع الأشياء. مصدر إلهام لهذه القائمة!