كيفية إعادة تسمية الملفات تلقائيًا في Google Drive باستخدام Apps Script وAI
يمكنك إعادة تسمية الملفات بسرعة في Google Drive باستخدام Apps Script وGoogle Gemini AI. سيقوم البرنامج النصي تلقائيًا بإعادة تسمية الملفات باسم وصفي بناءً على محتوى الصورة.
هل لديك ملفات صور في Google Drive بأسماء عامة مثل IMG_123456.jpg
أو Screenshot.png
التي لا تقدم أي سياق حول موضوع الصورة؟ ألن يكون رائعًا لو كان لديك مساعد يمكنه النظر إلى هذه الصور واقتراح أسماء ملفات وصفية للصور تلقائيًا؟
إعادة تسمية الملفات في Google Drive باستخدام الذكاء الاصطناعي
حسنًا، يمكنك استخدام Gemini AI من Google وGoogle Apps Script لإعادة تسمية ملفاتك تلقائيًا في Google Drive بشكل مجمّع باستخدام اسم وصفي يعتمد على محتوى الصورة.
يستخدم المثال التالي Gemini AI من Google ولكن يمكن تكييف الخطوات بسهولة مع OpenAI’s GPT-4 Vision أو نماذج الذكاء الاصطناعي الأخرى.
للبدء، افتح script.new
لإنشاء برنامج Google Script جديد ونسخ ولصق مقتطفات التعليمات البرمجية التالية في المحرر. قد ترغب أيضًا في تمكين Advanced Drive API من محرر Google Script ضمن قائمة الموارد.
1. احصل على قائمة الملفات الموجودة في مجلد
الخطوة الأولى هي الحصول على قائمة الملفات الموجودة في المجلد. سوف نستخدم Drive.Files.list
طريقة للحصول على قائمة الملفات في مجلد. يحتوي استعلام البحث على mimeType
لتصفية النتائج وإرجاع ملفات Drive التي هي تنسيقات صور يدعمها Google Gemini AI فقط.
const getFilesInFolder = (folderId) => {
const mimeTypes = ['image/png', 'image/jpeg', 'image/webp'];
const { files = [] } = Drive.Files.list({
q: `'${folderId}' in parents and (${mimeTypes.map((type) => `mimeType='${type}'`).join(' or ')})`,
fields: 'files(id,thumbnailLink,mimeType)',
pageSize: 10,
});
return files;
};
2. احصل على الصورة المصغرة للملف باسم Base64
الملفات التي تم إرجاعها بواسطة Drive.Files.list
تحتوي الطريقة على thumbnailLink
الخاصية التي تشير إلى الصورة المصغرة للملف. سوف نستخدم خدمة UrlFetchApp لجلب الصورة المصغرة وتحويلها إلى سلسلة مشفرة Base64.
const getFileAsBase64 = (thumbnailLink) => {
const blob = UrlFetchApp.fetch(thumbnailLink).getBlob();
const base64 = Utilities.base64Encode(blob.getBytes());
return base64;
};
3. احصل على اسم الملف المقترح من Google Gemini AI
سنستخدم Google Gemini API لتحليل المحتوى المرئي للصورة واقتراح اسم ملف وصفي للصورة. تبدو المطالبة النصية لدينا كما يلي:
تحليل محتوى الصورة واقتراح اسم ملف وصفي موجز في 5-15 كلمة دون تقديم أي شرح أو نص إضافي. استخدم المسافات لأسماء الملفات بدلاً من الشرطة السفلية.
ستحتاج إلى مفتاح API الذي يمكنك إنشاؤه من Google AI Studio.
const getSuggestedFilename = (base64, fileMimeType) => {
try {
const text = `Analyze the image content and propose a concise, descriptive filename in 5-15 words without providing any explanation or additional text. Use spaces instead of underscores.`;
const apiUrl = `https://generativelanguage.googleapis.com/v1beta/models/gemini-pro-vision:generateContent?key=${GEMINI_API_KEY}`;
const inlineData = {
mimeType: fileMimeType,
data: base64,
};
const response = UrlFetchApp.fetch(apiUrl, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
payload: JSON.stringify({
contents: [{ parts: [{ inlineData }, { text }] }],
}),
});
const data = JSON.parse(response);
return data.candidates[0].content.parts[0].text.trim();
} catch (f) {
return null;
}
};
4. إعادة تسمية الملفات تلقائيًا في Google Drive
الخطوة الأخيرة هي تجميع كل القطع معًا. سنحصل على قائمة الملفات الموجودة في مجلد، ونحضر الصورة المصغرة لكل ملف، ونحلل محتوى الصورة باستخدام Google Gemini AI، ونعيد تسمية الملف في Google Drive باسم الملف المقترح.
const renameFilesInGoogleDrive = () => {
const folderId = 'Put your folder ID here';
const files = getFilesInFolder(folderId);
files.forEach((file) => {
const { id, thumbnailLink, mimeType } = file;
const base64 = getFileAsBase64(thumbnailLink);
const name = getSuggestedFilename(base64, mimeType);
Drive.Files.update({ name }, id);
});
};
تحتوي برامج Google النصية على حد زمني للتنفيذ مدته 6 دقائق، ولكن يمكنك إعداد مشغل محرك زمني بحيث يتم تشغيل البرنامج النصي تلقائيًا في فترة زمنية محددة (على سبيل المثال، كل 10 دقائق). يمكنك أيضًا توسيع البرنامج النصي لنقل الملفات إلى مجلد مختلف بعد إعادة تسميتها حتى لا تتم معالجتها مرة أخرى.
كود المصدر الكامل متاح على جيثب
اكتشاف المزيد من مرابع التكنولوجيا
اشترك للحصول على أحدث التدوينات المرسلة إلى بريدك الإلكتروني.