در این راهنما، یاد خواهید گرفت چگونه یک مدل یادگیری ماشین را به عنوان یک API با استفاده از FastAPI مستقر کنید. ما یک API ایجاد خواهیم کرد که گونه پنگوئن را بر اساس طول منقار و طول باله آن پیشبینی میکند.
پیشنیازها
- دانش پایه پایتون
- نصب بودن پایتون روی سیستم شما (ترجیحاً نسخه ۳.۷ یا بالاتر)
- آشنایی با مفاهیم یادگیری ماشین (اختیاری)
مرحله ۱: راهاندازی محیط
- ایجاد پوشه پروژه ترمینال خود را باز کنید و یک پوشه جدید برای پروژه خود ایجاد کنید:
دستور ایجاد پوشه پروژه - راهاندازی محیط مجازی یک محیط مجازی ایجاد و فعال کنید:
دستورات ایجاد و فعالسازی محیط مجازی - در ویندوز از دستور venv\Scripts\activate استفاده کنید.
- نصب بستههای مورد نیاز FastAPI، Uvicorn (برای اجرای برنامه) و سایر کتابخانههای لازم را نصب کنید:
دستور نصب بستههای لازم با pip
مرحله ۲: آمادهسازی مدل یادگیری ماشین
- دانلود مجموعه داده برای این مثال، از مجموعه داده پنگوئنهای پالمر استفاده خواهیم کرد. میتوانید آن را از اینجا دانلود کنید.
- ایجاد اسکریپت پایتون برای مدل فایلی به نام model.py در پوشه پروژه خود ایجاد کنید:
کد پایتون (model.py) برای آموزش و ذخیره مدل طبقهبندی پنگوئن
مرحله ۳: ایجاد برنامه FastAPI
- ایجاد فایل اصلی برنامه فایلی به نام main.py ایجاد کنید:
کد پایتون (main.py) برای ایجاد API پیشبینی با FastAPI
مرحله ۴: اجرای برنامه FastAPI
- اجرای برنامه در ترمینال خود، دستور زیر را اجرا کنید:
دستور اجرای سرور Uvicorn برای برنامه FastAPI - دسترسی به API مرورگر وب خود را باز کنید و به آدرس http://127.0.0.1:8000/docs بروید. این کار رابط کاربری Swagger UI را باز میکند، جایی که میتوانید API خود را تست کنید.
مرحله ۵: تست API
- استفاده از Swagger UI در Swagger UI، نقطه پایانی (endpoint) /predict را پیدا کنید، روی آن کلیک کرده و سپس روی «Try it out» کلیک کنید. مقادیری برای bill_length (طول منقار) و flipper_length (طول باله) وارد کنید، سپس روی «Execute» کلیک کنید. باید پاسخی حاوی گونه پیشبینی شده پنگوئن را مشاهده کنید!
بخش تست نقطه پایانی /predict در Swagger UI
وارد کردن مقادیر ورودی برای تست API
نمایش نتیجه پیشبینی شده توسط API در Swagger UI
نتیجهگیری
تبریک میگوییم! شما با موفقیت یک API یادگیری ماشین را با استفاده از FastAPI مستقر کردید. این راهنما موارد زیر را پوشش داد:
- راهاندازی محیط شما.
- آمادهسازی یک مدل یادگیری ماشین.
- ایجاد یک برنامه FastAPI.
- اجرا و تست API شما.
گامهای بعدی
- ویژگیهای پیشرفتهتر FastAPI مانند احراز هویت و یکپارچهسازی با پایگاه داده را کاوش کنید.
- با مدلهای یادگیری ماشین و مجموعههای داده مختلف آزمایش کنید.
- برای استقرار آسانتر، استفاده از Docker برای کانتینرسازی برنامه خود را در نظر بگیرید.
اگر سؤالی دارید یا به کمک بیشتری نیاز دارید، با ما تماس بگیرید!