0Pricing
Learn AI with Python · Pelajaran

Dasar-Dasar FastAPI untuk Insinyur Pembelajaran Mesin

Aplikasi FastAPI, titik akhir GET/POST, parameter jalur dan kueri, serta async def dibandingkan dengan def untuk inferensi pembelajaran mesin.

Dasar-Dasar FastAPI untuk Insinyur Pembelajaran Mesin adalah pelajaran Learn AI with Python gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Learn AI with Python, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Learn AI with Python mencakup 4 pelajaran total.

Mengapa FastAPI untuk Pembelajaran Mesin?

FastAPI adalah kerangka kerja web Python modern yang ideal untuk menyajikan model: cepat, menghasilkan dokumentasi interaktif secara otomatis, dan memvalidasi permintaan dengan petunjuk tipe. FastAPI telah menjadi cara standar untuk membungkus model di balik API HTTP.

Membuat Aplikasi

Inisialisasikan aplikasi FastAPI; objek app ini menyimpan semua rute Anda.

from fastapi import FastAPI

app = FastAPI(title="Model Serving API")

Titik Akhir GET /health

Pemeriksaan kesehatan memungkinkan penyeimbang beban dan orkestrator memastikan bahwa layanan masih aktif. Pemeriksaan ini mengembalikan status sederhana tanpa menjalankan pekerjaan berat.

@app.get("/health")
def health():
    return {"status": "ok"}

Titik Akhir POST /predict

Prediksi memerlukan data masukan, sehingga menggunakan POST dengan isi permintaan. Fungsi menerima muatan yang telah diurai dan mengembalikan keluaran model.

@app.post("/predict")
def predict(features: list[float]):
    result = model.predict([features])
    return {"prediction": result[0]}

GET vs POST

  • GET: mengambil data, tanpa isi permintaan, digunakan untuk pemeriksaan kesehatan dan pembacaan sederhana.
  • POST: mengirim data dalam isi permintaan, digunakan untuk prediksi ketika Anda mengirimkan fitur.

Menjalankan dengan uvicorn

uvicorn adalah server ASGI yang menjalankan FastAPI. Jalankan dari kode atau baris perintah.

import uvicorn

if __name__ == "__main__":
    uvicorn.run(app, host="0.0.0.0", port=8000)

Peluncuran melalui Baris Perintah

Biasanya, Anda meluncurkannya melalui CLI dengan mengarahkan uvicorn ke modul dan objek aplikasi. --reload memulai ulang secara otomatis ketika kode berubah selama pengembangan.

# terminal
uvicorn main:app --host 0.0.0.0 --port 8000 --reload

Dokumentasi Interaktif Gratis

FastAPI menghasilkan Swagger UI di /docs dan ReDoc di /redoc secara otomatis dari petunjuk tipe Anda, sehingga Anda dapat menguji titik akhir di peramban tanpa kode tambahan.

async def untuk Pekerjaan Terikat IO

Gunakan async def untuk titik akhir yang menunggu IO (basis data, API eksternal, pembacaan berkas). Asinkron memungkinkan server menangani permintaan lain selama menunggu, sehingga meningkatkan throughput.

@app.get("/external")
async def fetch():
    data = await call_remote_service()
    return data

sync def untuk Inferensi Terikat CPU

Model predict biasanya terikat CPU. Definisikan titik akhir tersebut dengan sync def biasa; FastAPI menjalankannya dalam kumpulan utas agar tidak memblokir loop peristiwa. Menggunakan async untuk pekerjaan yang berat bagi CPU justru akan membekukan server.

@app.post("/predict")
def predict(features: list[float]):
    # CPU-bound inference -> sync def
    return {"prediction": model.predict([features])[0]}

Memilih async vs sync

  • async def: terikat IO, menunggu jaringan atau disk.
  • sync def: inferensi model yang terikat CPU, berjalan dalam kumpulan utas.

Memilih yang tepat menjaga server tetap responsif saat menerima beban.

Pemeriksaan Singkat

Uji pemahaman dasar Anda tentang FastAPI.

Ringkasan

Anda membangun layanan FastAPI: membuat app, menambahkan GET /health dan POST /predict, menjalankannya dengan uvicorn, serta mempelajari penggunaan async def untuk inferensi yang terikat IO dan sync def untuk inferensi yang terikat CPU. Berikutnya: skema permintaan/respons Pydantic.

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Dasar-Dasar FastAPI untuk Insinyur Pembelajaran Mesin” gratis?

Ya — teks lengkap “Dasar-Dasar FastAPI untuk Insinyur Pembelajaran Mesin” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Learn AI with Python, upgrade ke CoddyKit PRO. Kursus Learn AI with Python mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Dasar-Dasar FastAPI untuk Insinyur Pembelajaran Mesin”?

Aplikasi FastAPI, titik akhir GET/POST, parameter jalur dan kueri, serta async def dibandingkan dengan def untuk inferensi pembelajaran mesin. Kamu berlatih Learn AI with Python dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Learn AI with Python?

Tidak diperlukan pengalaman sebelumnya. Learn AI with Python di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.

Berapa lama pelajaran “Dasar-Dasar FastAPI untuk Insinyur Pembelajaran Mesin” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Learn AI with Python ini?

Ya. Setiap pelajaran Learn AI with Python menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Dasar-Dasar FastAPI untuk Insinyur Pembelajaran Mesin
  2. Skema Pydantic untuk Permintaan dan Respons
  3. Memuat dan Menyajikan Model Pembelajaran Mesin
  4. Mengemas API Model dengan Docker
← Kembali ke Learn AI with Python