Mascode01/PantunGen
0
1---2license: mit3title: PantunGen4sdk: docker5emoji: ๐6colorFrom: blue7colorTo: blue8pinned: false9short_description: Proyek akhir matkul NLP10---11 12# PantunGen: Pembangkit Pantun Berbasis AI13 14PantunGen adalah aplikasi web modern untuk menghasilkan pantun tematik secara otomatis menggunakan kecerdasan buatan. Aplikasi ini dibangun dengan prinsip *clean code* menggunakan FastAPI sebagai backend dan Vanilla HTML/CSS/JS sebagai frontend, memastikan kode yang ringan, cepat, dan mudah dipelihara tanpa framework frontend berat.15 16## Fitur Utama17- **Desain Modern & Responsif:** Antarmuka pengguna yang minimalis, profesional, dan ramah pengguna di berbagai perangkat.18- **Generator Interaktif:** Pembangkit pantun dengan pengaturan tema dan gaya bahasa, lengkap dengan animasi dan umpan balik sistem (loading, toast).19- **Analisis Metrik:** Visualisasi performa model (BLEU, ROUGE, dll) secara interaktif menggunakan grafik.20 21## Struktur Proyek22- `main.py`: Entry point server FastAPI, mengatur routing halaman dan endpoint API.23- `templates/`: Kumpulan file HTML berbasis Jinja2.24- `static/css/`: Gaya visual murni tanpa framework tambahan.25- `static/js/`: Skrip interaktivitas frontend murni (termasuk pemanggilan API dengan `fetch`).26 27## Persyaratan Sistem28- Python 3.9 atau lebih baru.29 30## Cara Instalasi311. Clone repositori ini atau ekstrak folder proyek.322. Buka terminal/command prompt di direktori root proyek ini.333. (Opsional namun disarankan) Buat dan aktifkan virtual environment:34 ```bash35 python -m venv venv36 # Di Windows:37 venv\Scripts\activate38 # Di macOS/Linux:39 source venv/bin/activate40 ```414. Instal semua dependensi:42 ```bash43 pip install -r requirements.txt44 ```45 46## Cara Menjalankan Aplikasi471. Pastikan Anda berada di root direktori proyek.482. Jalankan server FastAPI menggunakan Uvicorn:49 ```bash50 python main.py51 # ATAU52 uvicorn main:app --reload53 ```543. Buka browser dan akses `http://localhost:8000`.55 56## Dokumentasi API57FastAPI secara otomatis menghasilkan dokumentasi API interaktif. Anda dapat mengaksesnya di:58- **Swagger UI:** `http://localhost:8000/docs`59- **ReDoc:** `http://localhost:8000/redoc`60 61## Integrasi Model (Untuk Pengembang)62Fungsi pembangkitan pantun saat ini berada pada tahap *mock*. Untuk mengintegrasikan model NLP hasil *fine-tuning* Anda:631. Buka `main.py`.642. Cari fungsi `@app.post("/api/generate")`.653. Ganti bagian implementasi mock dengan logika inferensi model Anda.664. Pastikan untuk mengembalikan format objek JSON sesuai dengan kelas `PantunResponse`.67# P r o j e c t _ N L P 68