درخواست هوش مصنوعی هیبریدی با Firebase AI Logic، درخواست هوش مصنوعی ترکیبی با Firebase AI Logic، درخواست هوش مصنوعی ترکیبی با Firebase AI Logic، درخواست هوش مصنوعی ترکیبی با Firebase AI Logic

منتشر شده: ۲۰ مه ۲۰۲۵

برای برآورده کردن نیازهای کاربرانتان، صرف نظر از پلتفرم یا سخت‌افزاری که استفاده می‌کنند، می‌توانید با استفاده از Firebase AI Logic برای Prompt API داخلی، یک پشتیبان ابری ایجاد کنید.

یک تجربه ترکیبی هوش مصنوعی بسازید

هوش مصنوعی داخلی مزایای متعددی دارد که مهمترین آنها عبارتند از:

  • پردازش محلی داده‌های حساس: اگر با داده‌های حساس کار می‌کنید، می‌توانید با رمزگذاری سرتاسری، ویژگی‌های هوش مصنوعی را به کاربران ارائه دهید.
  • استفاده آفلاین از هوش مصنوعی: کاربران شما می‌توانند به ویژگی‌های هوش مصنوعی دسترسی داشته باشند، حتی زمانی که آفلاین هستند یا اتصالشان قطع شده است.

اگرچه این مزایا در مورد برنامه‌های ابری صدق نمی‌کند، اما می‌توانید برای کسانی که به هوش مصنوعی داخلی دسترسی ندارند، یک تجربه یکپارچه را تضمین کنید.

شروع کار با فایربیس

  1. یک پروژه Firebase ایجاد کنید و برنامه وب خود را ثبت کنید.
  2. برای ادامه تنظیمات برنامه وب خود ، مستندات Firebase JavaScript SDK را مطالعه کنید.

پروژه‌های Firebase یک پروژه Google Cloud با پیکربندی‌ها و سرویس‌های مخصوص Firebase ایجاد می‌کنند. درباره Google Cloud و Firebase بیشتر بدانید.

SDK را نصب کنید

این گردش کار از npm استفاده می‌کند و به module bundlers یا ابزارهای چارچوب جاوا اسکریپت نیاز دارد. Firebase AI Logic برای کار با module bundlers بهینه شده است تا کدهای بلااستفاده را حذف کرده و اندازه SDK را کاهش دهد.

npm install firebase

پس از نصب، Firebase را در برنامه خود مقداردهی اولیه کنید .

از منطق هوش مصنوعی فایربیس استفاده کنید

پس از نصب و راه‌اندازی اولیه Firebase، یکی از دو گزینه Gemini Developer API یا Gemini API را انتخاب کنید، سپس یک نمونه را راه‌اندازی و ایجاد کنید .

پس از مقداردهی اولیه، می‌توانید مدل را با ورودی متنی یا چندوجهی فعال کنید.

پیام‌های متنی

شما می‌توانید از متن ساده برای دستورالعمل‌های خود به مدل استفاده کنید. برای مثال، می‌توانید از مدل بخواهید که برای شما یک جوک تعریف کند.

شما چند گزینه برای نحوه‌ی مسیریابی درخواست دارید:

  • با تنظیم mode 'prefer_on_device' در تابع getGenerativeModel() ، می‌توانید به طور پیش‌فرض از هوش مصنوعی داخلی در صورت موجود بودن استفاده کنید. اگر مدل داخلی در دسترس نباشد، درخواست به طور یکپارچه برای استفاده از مدل ابری (در صورت آنلاین بودن) به عقب برمی‌گردد.

  • با تنظیم mode 'prefer_in_cloud' در تابع getGenerativeModel() ، وقتی آنلاین هستید، به طور پیش‌فرض از مدل ابری استفاده کنید. اگر آفلاین باشید، درخواست به طور یکپارچه به عقب برمی‌گردد تا در صورت امکان از هوش مصنوعی داخلی استفاده کند.

// Initialize the Google AI service.
const googleAI = getAI(firebaseApp);

// Create a `GenerativeModel` instance with a model that supports your use case.
const model = getGenerativeModel(googleAI, { mode: 'prefer_on_device' });

const prompt = 'Tell me a joke';

const result = await model.generateContentStream(prompt);

for await (const chunk of result.stream) {
  const chunkText = chunk.text();
  console.log(chunkText);
}
console.log('Complete response', await result.response);

اعلان‌های چندوجهی

شما همچنین می‌توانید علاوه بر متن، با تصویر یا صدا نیز درخواست دهید. می‌توانید به مدل بگویید که محتوای یک تصویر را توصیف کند یا یک فایل صوتی را رونویسی کند.

تصاویر باید به صورت یک رشته کدگذاری شده با base64 به عنوان یک شیء Firebase FileDataPart ارسال شوند، که می‌توانید این کار را با تابع کمکی fileToGenerativePart() انجام دهید.

// Converts a File object to a `FileDataPart` object.
// https://firebase.google.com/docs/reference/js/vertexai.filedatapart
async function fileToGenerativePart(file) {
    const base64EncodedDataPromise = new Promise((resolve) => {
      const reader = new FileReader();
      reader.onload = () => resolve(reader.result.split(',')[1]);
      reader.readAsDataURL(file);
    });

    return {
      inlineData: { data: await base64EncodedDataPromise, mimeType: file.type },
    };
  }

  const fileInputEl = document.querySelector('input[type=file]');

  fileInputEl.addEventListener('change', async () => {
    const prompt = 'Describe the contents of this image.';

    const imagePart = await fileToGenerativePart(fileInputEl.files[0]);

    // To generate text output, call generateContent with the text and image
    const result = await model.generateContentStream([prompt, imagePart]);

    for await (const chunk of result.stream) {
      const chunkText = chunk.text();
      console.log(chunkText);
    }
    console.log(Complete response: ', await result.response);
  });

نسخه آزمایشی

از نسخه آزمایشی Firebase AI Logic در دستگاه‌ها و مرورگرهای مختلف دیدن کنید. می‌توانید ببینید که چگونه پاسخ مدل از مدل هوش مصنوعی داخلی یا ابری حاصل می‌شود.

وقتی روی سخت‌افزار پشتیبانی‌شده در کروم اجرا می‌شود، نسخه آزمایشی از Prompt API و Gemini Nano استفاده می‌کند. فقط ۳ درخواست برای سند اصلی، فایل جاوا اسکریپت و فایل CSS ارسال می‌شود.

منطق هوش مصنوعی فایربیس که در کروم اجرا می‌شود، با استفاده از APIهای هوش مصنوعی داخلی.

وقتی در مرورگر یا سیستم عامل دیگری بدون پشتیبانی داخلی از هوش مصنوعی هستید، یک درخواست اضافی به نقطه پایانی Firebase، https://firebasevertexai.googleapis.com ، ارسال می‌شود.

منطق هوش مصنوعی فایربیس که در سافاری اجرا می‌شود، در حال ارسال درخواست به سرورهای فایربیس است.

مشارکت کنید و نظرات خود را به اشتراک بگذارید

منطق هوش مصنوعی فایربیس می‌تواند گزینه بسیار خوبی برای ادغام قابلیت‌های هوش مصنوعی در برنامه‌های وب شما باشد. با ارائه یک پشتیبان ابری در مواقعی که API Prompt در دسترس نیست، SDK دسترسی گسترده‌تر و قابلیت اطمینان ویژگی‌های هوش مصنوعی را تضمین می‌کند.

به یاد داشته باشید که برنامه‌های ابری انتظارات جدیدی را برای حریم خصوصی و عملکرد ایجاد می‌کنند، بنابراین مهم است که کاربران خود را از محل پردازش داده‌هایشان مطلع کنید.