تعمل التعليمات البرمجية مفتوحة المصدر لتطبيق Queryable، وهو تطبيق iOS، على الاستفادة من مقطع OpenAI نموذج MobileCLIP من Apple لإجراء عمليات البحث دون الاتصال بالإنترنت في ألبوم "الصور". على عكس نموذج البحث القائم على الفئة المدمج في تطبيق iOS Photos، يتيح لك Queryable استخدام عبارات اللغة الطبيعية، مثل a brown dog sitting on a bench
، للبحث في ألبومك. نظرًا لأنه غير متصل بالإنترنت، فلن تتعرض خصوصية ألبومك للخطر من قبل أي شركة، بما في ذلك Apple أو Google.
مدونة | متجر التطبيقات | الموقع | قصة | جديد
العملية هي كما يلي:
لمزيد من التفاصيل، يرجى الرجوع إلى مدونتي: قم بتشغيل CLIP على iPhone للبحث في الصور.
[2024-09-01]: يدعم الآن MobileCLIP من Apple.
يمكنك تنزيل TextEncoder_mobileCLIP_s2.mlmodelc
و ImageEncoder_mobileCLIP_s2.mlmodelc
المُصدَّرين من Google Drive. نستخدم حاليًا نموذج s2
كنموذج افتراضي، والذي يوازن بين الكفاءة والدقة.
إصدار Android (الكود) الذي تم تطويره بواسطة @greyovo، والذي يدعم اللغتين الإنجليزية والصينية. انظر التفاصيل في رقم 12.
قم بتنزيل TextEncoder_mobileCLIP_s2.mlmodelc
و ImageEncoder_mobileCLIP_s2.mlmodelc
من Google Drive. انسخ هذا الريبو، ثم ضع النماذج التي تم تنزيلها أسفل مسار CoreMLModels/
وقم بتشغيل Xcode، ومن المفترض أن يعمل.
إذا كنت تريد تشغيل Queryable فقط، فيمكنك تخطي هذه الخطوة واستخدام النموذج المُصدَّر من Google Drive مباشرة. إذا كنت ترغب في تنفيذ Queryable الذي يدعم لغتك الأم، أو القيام ببعض أعمال التكميم/التسريع النموذجية، فإليك بعض الإرشادات.
تكمن الحيلة في فصل TextEncoder
و ImageEncoder
على مستوى البنية، ثم تحميل أوزان النموذج بشكل فردي. يستخدم الاستعلام أوبن إيه آي ViT-B/32 Apple's MobileCLIP، وكتبت دفتر ملاحظات Jupyter لتوضيح كيفية فصل وتحميل وتصدير نموذج OpenAI's CLIP Core ML (إذا كنت تريد البرنامج النصي للتصدير الخاص بـ MobileCLIP، فاطلع على #issuecomment-2328024269). تحتوي نتائج التصدير الخاصة بـ Core ML الخاص بـ ImageEncoder على مستوى معين من الخطأ في الدقة، وقد تكون هناك حاجة إلى معلمات تسوية أكثر ملاءمة.
clip-vit-base-patch32
. وقد أدى هذا إلى تقليل الخطأ في الدقة في برنامج تشفير الصور بشكل كبير. لمزيد من التفاصيل راجع رقم 18. إخلاء المسؤولية: أنا لست مهندسًا محترفًا لنظام iOS، يرجى أن تسامحني على كود Swift الضعيف. يمكنك التركيز فقط على تحميل النموذج وحسابه وتخزينه وفرزه.
يمكنك تطبيق Queryable على منتجك الخاص، لكنني لا أوصي بمجرد تعديل المظهر وإدراجه في متجر التطبيقات. إذا كنت مهتمًا بتحسين جوانب معينة (مثل رقم 4، #5 , #6, #10, #11, رقم 12 )، فلا تتردد في تقديم طلب سحب (PR).
شكرا لمساهمتك :)
إذا كانت لديك أية أسئلة/اقتراحات، فإليك بعض طرق الاتصال: Discord | تويتر | رديت: ص / للاستعلام.
رخصة معهد ماساتشوستس للتكنولوجيا
حقوق الطبع والنشر (ج) 2023 لـ Ke Fang