Flamehaven FileSearch — mesin pencarian dokumen RAG open-source yang bisa di-self-host
(github.com/flamehaven01)🔥Flamehaven FileSearch
- Flamehaven FileSearch adalah mesin pencarian semantik open-source yang bisa di-self-host yang memungkinkan siapa pun membangun sistem RAG (Retrieval-Augmented Generation) berbasis dokumen hanya dalam 5 menit.
- Dibangun di atas Python, FastAPI, dan SQLite, serta memanfaatkan Google Gemini Embedding untuk melakukan tanya jawab bahasa alami pada berbagai dokumen seperti PDF/DOCX/TXT/MD.
Kenapa dibuat?
- Sebagian besar implementasi RAG open-source berjalan baik di lingkungan Colab atau Jupyter, tetapi ketika benar-benar dipasang dan dioperasikan di server, strukturnya sering terlalu rumit atau kurang stabil.
- Flamehaven FileSearch dirancang dengan tujuan "stack RAG ringan yang benar-benar berjalan", agar peneliti, startup, dan pengembang individu dapat langsung bereksperimen dengan pencarian semantik menggunakan data mereka sendiri.
Kenapa perlu diperhatikan?
- Otonomi penuh: tidak bergantung pada server eksternal atau cloud, dan semua data disimpan secara lokal.
- Struktur berfokus pada pengembang: Python SDK + REST API, dengan dokumentasi Swagger berbasis FastAPI yang disediakan otomatis.
- Distribusi paket PyPI: bisa langsung dipasang dari PyPI — instalasi penuh otomatis hanya dengan satu baris
pip install flamehaven-filesearch[api]. - Langsung jalan: setelah instalasi, server bisa langsung dijalankan dengan perintah
flamehaven-api, dan API dapat diuji di browser melalui/docs. - Ekstensibilitas: penyimpanan SQLite, arsitektur plugin, dan dukungan deployment Docker.
- Ramah untuk pendidikan/riset: menggunakan Gemini embedding, ideal untuk praktik pencarian semantik berbasis LLM terbaru.
Apa saja isinya? (sorotan)
-
Python SDK:
from flamehaven_filesearch import FlamehavenFileSearch→ menyediakan seluruh fungsi untuk unggah dokumen / pencarian / manajemen store.
-
REST API: endpoint
/upload,/search,/stores+ Swagger UI. -
Dukungan Docker:
docker run -e GEMINI_API_KEY=... -p 8000:8000 flamehaven/filesearch:latest -
Struktur:
core(engine)/api(FastAPI)/data(SQLite)/examples/docs
Coba cepat
1️⃣ Paket PyPI
Flamehaven FileSearch dapat langsung diinstal melalui PyPI.
Cek versi terbaru: https://pypi.org/project/flamehaven-filesearch
pip install flamehaven-filesearch[api]
2️⃣ Instalasi
pip install flamehaven-filesearch[api]
export GEMINI_API_KEY="your-google-gemini-key"
flamehaven-api
3️⃣ Unggah dokumen & pencarian
curl -X POST "http://localhost:8000/upload" -F "file=@handbook.pdf"
curl "http://localhost:8000/search?q=vacation+policy"
4️⃣ Contoh penggunaan SDK
from flamehaven_filesearch import FlamehavenFileSearch
fs = FlamehavenFileSearch()
fs.upload_file("handbook.pdf")
print(fs.search("vacation policy")["answer"])
Performa & spesifikasi
- Lingkungan: Ubuntu 22.04 / 2vCPU / 4GB RAM / SSD
- Unggah PDF 10MB → sekitar 5 detik
- Rata-rata respons pencarian → 2 detik (saat mengutip 5 sumber)
- Hapus/buat store → di bawah 1 detik
- Overhead penyimpanan → sekitar 5% dari ukuran dokumen
Roadmap
- v1.1 : caching dan manajemen kuota
- v1.2 : pencarian batch + streaming WebSocket
- v2.0 : dukungan dokumen multibahasa, dashboard analitik
- Ke depan : integrasi vector DB Pinecone/Weaviate, OCR, store kolaboratif
Lisensi
- MIT License (sepenuhnya open-source)
🛡️ Pengumuman keamanan GitHub dan akun Flamehaven
Baru-baru ini, upaya login mencurigakan terdeteksi pada akun GitHub Flamehaven (akun ini), sehingga akun tersebut berada dalam status ditangguhkan. Saat ini mereka sedang bekerja sama dengan tim keamanan GitHub untuk memeriksa masalah ini.
Akibat insiden ini, akun yang mencakup dir2md, flashrecord, crom-efficient, Arr-medic-cyp3a4, dan lainnya untuk sementara dihentikan penggunaannya.
Kami dengan tulus meminta maaf atas ketidaknyamanan yang dialami para pengguna, dan mohon pengertiannya sampai pemeriksaan keamanan selesai dilakukan.
4 komentar
Saya merilis Flamehaven FileSearch v1.2.0 kemarin. Versi ini berfokus pada transformasi seluruh layanan dari “API publik” menjadi platform tingkat enterprise yang berpusat pada keamanan dan skalabilitas.
Perubahan utamanya adalah sebagai berikut:
Penambahan sistem autentikasi dan perizinan API
Semua endpoint yang dilindungi kini memerlukan autentikasi Bearer Token.
API Key mendukung izin yang terperinci seperti upload/pencarian/store/hapus, serta mencakup rate limit per key, audit log, dan penyimpanan hash SHA256 (tanpa menyimpan key asli).
Penambahan Admin Dashboard
Ini adalah web UI untuk membuat/menampilkan/mencabut API Key, melihat statistik permintaan, distribusi penggunaan endpoint, dan lain-lain.
Sepenuhnya self-contained dengan HTML/CSS/JS tanpa dependensi eksternal.
Batch Search API
Memproses 1–100 kueri dalam satu permintaan.
Menyediakan mode eksekusi paralel/berurutan, pengurutan berbasis prioritas, isolasi error per kueri, dan metrik timing yang detail.
Redis cache backend
Ini adalah opsi cache terdistribusi untuk lingkungan multi-worker.
Memiliki latensi lookup <10ms, fallback LRU otomatis, dan efek pengurangan panggilan LLM sebesar 40–60%.
Penyediaan template deployment (Docker/Kubernetes)
Termasuk contoh Docker, Docker Compose, dan Kubernetes (ConfigMap/Secret/Deployment) sehingga bisa langsung di-deploy.
Ringkasan performa:
Cache hit: <10ms
Cache miss (panggilan LLM): ~0.5–3s
Batch Search (10 item): ~2–5s
GitHub: https://github.com/flamehaven01/Flamehaven-Filesearch
Masukan untuk peningkatan pada desain keamanan, kegunaan API, struktur deployment, dan lainnya sangat kami sambut.
Kami juga sedang menyiapkan v1.2.1 (peningkatan autentikasi admin, Redis settings UI) dan v1.3.0 (rotasi key + OAuth2/OIDC).
Hari ini kami merilis v1.1.0.
Versi ini terutama mencakup patch kerentanan path traversal, pembaruan keamanan FastAPI/Starlette, request ID tracing, rate limit, caching (<10ms hit), serta penambahan metrik Prometheus. Dibandingkan versi sebelumnya, versi ini berjalan jauh lebih stabil.
Pembaruan kali ini juga tetap berfokus pada arsitektur yang ringan dan dapat di-self-host. Terima kasih.
Pembaruan: rilis v1.2.2
Setelah saya memposting tulisan sebelumnya, per hari ini sudah naik hingga v1.2.2.
Jika diringkas singkat, perubahan utamanya adalah:
Penguatan pengujian/stabilitas
Layanan enkripsi: round trip encrypt/decrypt berbasis kunci env + pengujian jalur invalid token
Pencarian batch: priority queue paralel, layanan yang belum diinisialisasi → 503, pemisahan exception per kueri
Cache Redis: get/set/delete/clear + pengujian ketersediaan menggunakan fake client in-memory
cache_redis.py, yang selama ini terlewat dari cakupan coverage, kini dimasukkan sebagai target coverageKesiapan layanan (Service readiness)
Saat server pertama kali dijalankan, store dasar dan dokumen fallback kecil dibuat otomatis
Meski belum mengunggah apa pun,
/searchdan/healthlangsung merespons 200→ bisa langsung dipakai untuk demo/health check CI/booting agent
Perapian sisi operasional
String versi, metadata log, label Prometheus, dan judul OpenAPI dirapikan ke v1.2.2
Redis tetap opsional, dan jika tidak ada akan otomatis fallback dengan mulus ke cache LRU in-process
Tanpa breaking change, pengguna lama bisa langsung upgrade seperti biasa.
Sedikit demi sedikit sedang dirapikan ke arah “siap langsung dipakai di operasional”.
🚀 Rilis Flamehaven Filesearch v1.2.1!
Kami merilis versi terbaru Flamehaven Filesearch v1.2.1, yang terus kami tingkatkan sejak pembaruan sebelumnya. Rilis kali ini berfokus pada penguatan keamanan, perluasan alat administrasi, dan peningkatan kemudahan operasional.
🔐 Pembaruan utama
🔺Penambahan Admin Cache Controls
Status cache kini dapat dilihat dan di-flush melalui endpoint
/api/admin/cache/statsdan/api/admin/cache/flush(khusus Admin)🔺Penguatan izin API Key
Key tanpa izin Admin akan mengembalikan 403 saat mencoba menggunakan fungsi administratif
API key baru secara default menyertakan izin admin
🔺Penerapan IAMProvider Hook
Menyiapkan struktur untuk integrasi backend OIDC/IAM di masa mendatang
🔺Perluasan Metrics
Penambahan cache,
health_status, dan placeholder prometheus untuk meningkatkan kegunaan dashboard🔺Pembaruan Frontend
Halaman Cache / Metrics kini terhubung dengan backend
Fitur input Token di halaman Upload / Admin telah dihubungkan
Perapihan halaman Landing dan Dashboard baru
🔺Penguatan pengujian
Penambahan
test_admin_cache.pyuntuk memperkenalkan pengujian API admin terkait cache🔺Pembaruan dokumentasi
Pembaruan versi README serta penguatan panduan keamanan, termasuk variabel lingkungan
FLAMEHAVEN_ENC_KEY🐛 Fixed
Pemblokiran akses (403) saat meminta fungsi admin tanpa izin Admin
🔗 GitHub: https://github.com/flamehaven01/Flamehaven-Filesearch
Versi ini juga meletakkan fondasi untuk integrasi IAM dan peningkatan dashboard yang direncanakan ke depan.