Kamus Error
Error yang paling sering ditemui dalam pekerjaan AI Engineering, apa artinya, dan cara mengatasinya.
Error yang paling sering ditemui, apa artinya, dan cara mengatasinya tanpa harus membuka Stack Overflow.
ModuleNotFoundError: No module named 'X'
Python
Artinya
Python tidak menemukan library yang diimpor. Bisa karena library belum terinstal, atau terinstal di environment yang berbeda dari yang sedang aktif.
Cara Diagnosis
Cek apakah virtual environment aktif (which python harus menunjuk ke dalam folder venv/). Jalankan pip list untuk melihat apa yang terinstal.
source venv/bin/activate. Install library: pip install nama-library. Jika masih gagal, cek apakah nama import berbeda dari nama package.KeyError: 'NAMA_KEY'
Python
Artinya
Kode mencoba mengakses kunci dari dictionary atau environment yang tidak ada. Paling sering terjadi ketika os.environ['API_KEY'] dipanggil tapi variabel belum di-set.
Cara Diagnosis
Print dictionary yang diakses untuk melihat kunci apa yang sebenarnya ada. Untuk env var: print(os.environ.keys()).
os.getenv('KEY') yang mengembalikan None jika tidak ada (tidak crash). Pastikan file .env sudah di-load dengan load_dotenv().TypeError: argument of type 'NoneType' is not iterable
Python
Artinya
Variabel yang diharapkan berisi list atau string ternyata bernilai None. Sering terjadi ketika fungsi mengembalikan None pada kasus tertentu yang tidak ditangani.
Cara Diagnosis
Tambahkan print() untuk memeriksa nilai variabel sebelum baris yang error. Cari fungsi yang seharusnya mengembalikan nilai tapi mungkin mengembalikan None.
if hasil is None: return []. Pastikan semua branch di fungsi mengembalikan nilai, bukan hanya branch utama.HTTP 401 Unauthorized
API
Artinya
API key tidak valid, expired, atau tidak disertakan dalam request. Server menolak request karena tidak bisa memverifikasi identitas pemanggil.
Cara Diagnosis
Print API key yang digunakan (hati-hati jangan commit ke git). Periksa apakah format header sudah benar, beberapa API butuh prefix Bearer, yang lain tidak.
HTTP 429 Too Many Requests
API
Artinya
Terlalu banyak request dalam waktu singkat, rate limit tercapai. Setiap provider LLM dan vector database memiliki batas request per menit atau per hari.
Cara Diagnosis
Periksa header response, biasanya ada Retry-After yang menunjukkan berapa detik harus menunggu. Cek dashboard provider untuk melihat usage saat ini.
time.sleep() atau exponential backoff. Implementasikan caching (Bab 19) untuk mengurangi jumlah request. Pertimbangkan upgrade tier jika sering terkena limit.HTTP 422 Unprocessable Entity
API / FastAPI
Artinya
Request diterima tapi isinya tidak sesuai dengan skema yang diharapkan. Di FastAPI, ini berarti Pydantic menolak input karena tipe data atau constraint yang tidak terpenuhi.
Cara Diagnosis
Baca body response, FastAPI mengembalikan detail field mana yang bermasalah dan mengapa. Ini adalah error yang paling informatif karena pesan error-nya sangat spesifik.
docker: Error response from daemon: port is already allocated
Docker
Artinya
Port yang ingin dibuka oleh container sudah digunakan oleh container atau proses lain. Docker tidak bisa membuka dua proses di port yang sama.
Cara Diagnosis
docker ps untuk melihat container yang mungkin masih berjalan menggunakan port tersebut. lsof -i :8000 untuk melihat proses non-Docker yang menggunakan port tersebut.
docker stop <id>. Atau ganti port mapping: -p 8001:8000 agar port lokal berbeda dari yang sudah digunakan.exec format error / no matching manifest for linux/amd64
Docker
Artinya
Image dibangun untuk arsitektur yang berbeda dari tempat ia dijalankan. Paling sering terjadi ketika image dibangun di Mac M1/M2 (ARM) lalu dijalankan di server cloud (AMD64).
Cara Diagnosis
Periksa arsitektur image: docker inspect nama-image | grep Architecture. Jika menunjukkan arm64 tapi server butuh amd64, image perlu di-rebuild.
docker buildx build --platform linux/amd64 -t nama-image .. Atau tambahkan FROM --platform=linux/amd64 di baris pertama Dockerfile.