Permintaan GET dan POST untuk AI

Menerapkan AI ke Produksi dengan FastAPI

Matt Eckerle

Software and Data Engineering Leader

Instruktur kita

 

Matt Eckerle

 

 

Matt Eckerle

  • Pimpinan Rekayasa Perangkat Lunak dan Data
  • Enterprise Data Manager di Inari
  • Menggunakan FastAPI untuk ML sejak 2019
Menerapkan AI ke Produksi dengan FastAPI

Ikhtisar kursus

 

 

  • Dasar FastAPI
  • Penanganan permintaan dan integrasi
  • Validasi input dan keamanan
  • Membuat dan merawat API siap produksi

 

 

Logo FastAPI

Menerapkan AI ke Produksi dengan FastAPI

Sebelum mulai

✓ Python dasar: fungsi, kelas, modul, struktur data

Logo Python

Menerapkan AI ke Produksi dengan FastAPI

Sebelum mulai

✓ Python dasar: fungsi, kelas, modul, struktur data

✓ Konsep HTTP & REST API

Logo Python dan http

Menerapkan AI ke Produksi dengan FastAPI

Sebelum mulai

✓ Python dasar: fungsi, kelas, modul, struktur data

✓ Konsep HTTP & REST API

✓ Menggunakan kerangka FastAPI

  • Menangani permintaan GET dan POST
  • Menggunakan model Pydantic

✓ Dasar Machine Learning

Logo Python, http, dan FastAPI

Menerapkan AI ke Produksi dengan FastAPI

Penjelasan permintaan GET

  • Untuk mengambil data
  • Parameter path - informasi di URL
  • Tidak mengubah status server

Sebuah menu

GET https://example.com/?item_id=1

Diagram untuk memahami permintaan GET

Menerapkan AI ke Produksi dengan FastAPI

Menerapkan GET dengan parameter path

from fastapi import FastAPI

app = FastAPI()

@app.get("/item/{item_id}")
async def read_item(item_id: int):
    return {"item_id": item_id}
  • Dekorator `@app.get` mendefinisikan endpoint.
  • {item_id} adalah parameter path.
  • Petunjuk tipe (int) untuk validasi otomatis.
Menerapkan AI ke Produksi dengan FastAPI

Penjelasan permintaan POST

  • Untuk mengirim data ke server
  • Data di body permintaan (biasanya JSON)
  • Dapat mengubah status server

Pesanan restoran

POST https://example.com

Diagram untuk memahami permintaan POST

Menerapkan AI ke Produksi dengan FastAPI

Menerapkan POST dengan data JSON

from fastapi import FastAPI
from pydantic import BaseModel

app = FastAPI()
db = {}

class Item(BaseModel): name: str price: float
@app.post("/items", status_code=201)
def create_item(item: Item): db[item.name] = item.model_dump() return {"message": f"Created {item.name}"}

 

  • Model Pydantic mendefinisikan struktur data
  • @app.post untuk endpoint POST
  • Parsing dan validasi JSON otomatis
Menerapkan AI ke Produksi dengan FastAPI

Kode status HTTP

 

  • 200 OK: Bawaan untuk sukses
  • 404 Not Found: Sumber tidak ditemukan
  • 201 Success: Objek dibuat

Kode status HTTP 200 yang menandakan permintaan berhasil

Menerapkan AI ke Produksi dengan FastAPI

Memunculkan pengecualian HTTP

from fastapi import FastAPI, HTTPException
app = FastAPI()

@app.get("/item/{item_id}")
async def read_item(item_id: int):
    if item_id == 4242: #An invalid order number
        raise HTTPException(status_code=404, detail="Item not found")
    return {"item_id": item_id}

@app.post("/items") async def create_item(item: Item): # Simulating item creation return {"message": f"Created {item.name}"}, 201
Menerapkan AI ke Produksi dengan FastAPI

Ayo berlatih!

Menerapkan AI ke Produksi dengan FastAPI

Preparing Video For Download...