Mesin pencari gambar AI online berdasarkan model Clip dan database vektor Qdrant. Mendukung pencarian kata kunci dan pencarian gambar serupa.
中文文档
Tangkapan layar di atas mungkin berisi gambar berhak cipta dari artis berbeda, mohon jangan menggunakannya untuk tujuan lain.
Dalam kebanyakan kasus, kami menyarankan penggunaan database Qdrant untuk menyimpan metadata. Basis data Qdrant memberikan kinerja pengambilan yang efisien, skalabilitas yang fleksibel, dan keamanan data yang lebih baik.
Silakan terapkan database Qdrant sesuai dengan dokumentasi Qdrant. Disarankan untuk menggunakan Docker untuk penerapan.
Jika Anda tidak ingin menerapkan Qdrant sendiri, Anda dapat menggunakan layanan online yang disediakan oleh Qdrant.
Penyimpanan file lokal secara langsung menyimpan metadata gambar (termasuk vektor fitur, dll.) dalam database SQLite lokal. Ini hanya direkomendasikan untuk penerapan skala kecil atau penerapan pengembangan.
Penyimpanan file lokal tidak memerlukan proses penyebaran database tambahan, namun memiliki kelemahan sebagai berikut:
O(n)
. Oleh karena itu, jika skala datanya besar maka kinerja pencarian dan pengindeksan akan menurun.v1.0.0
).python -m venv .venv
. .venv/bin/activate
Jika Anda ingin menggunakan akselerasi CUDA untuk inferensi, pastikan untuk menginstal versi PyTorch yang didukung CUDA pada langkah ini. Setelah instalasi, Anda dapat menggunakan
torch.cuda.is_available()
untuk mengonfirmasi apakah CUDA tersedia.
pip install -r requirements.txt
config/
, Anda dapat mengedit default.env
secara langsung, tetapi disarankan untuk membuat file baru bernama local.env
dan mengganti konfigurasi di default.env
.python main.py
--host
untuk menentukan alamat IP yang ingin Anda ikat (defaultnya adalah 0.0.0.0) dan --port
untuk menentukan port yang ingin Anda ikat (defaultnya adalah 8000).python main.py --help
.Gambar buruh pelabuhan NekoImageGallery dibuat dan dirilis di Docker Hub, termasuk varian serval:
Tag | Keterangan | Ukuran Gambar Terbaru |
---|---|---|
edgeneko/neko-image-gallery:<version> edgeneko/neko-image-gallery:<version>-cuda edgeneko/neko-image-gallery:<version>-cuda12.1 | Mendukung inferensi GPU dengan CUDA12.1 | |
edgeneko/neko-image-gallery:<version>-cuda11.8 | Mendukung inferensi GPU dengan CUDA11.8 | |
edgeneko/neko-image-gallery:<version>-cpu | Hanya mendukung inferensi CPU |
Dimana <version>
adalah nomor versi atau versi alias dari NekoImageGallery, sebagai berikut:
Versi | Keterangan |
---|---|
latest | NekoImageGallery versi stabil terbaru |
v*.*.* / v*.* | Nomor versi spesifik (sesuai dengan tag Git) |
edge | Versi pengembangan terbaru dari NekoImageGallery, mungkin berisi fitur yang tidak stabil dan perubahan yang dapat menyebabkan gangguan |
Di setiap gambar, kami telah menggabungkan dependensi yang diperlukan, bobot model openai/clip-vit-large-patch14
, bobot model bert-base-chinese
, dan model easy-paddle-ocr
untuk memberikan gambar yang lengkap dan siap digunakan.
Gambar menggunakan /opt/NekoImageGallery/static
sebagai volume untuk menyimpan file gambar, pasang ke volume atau direktori Anda sendiri jika penyimpanan lokal diperlukan.
Untuk konfigurasi, kami menyarankan penggunaan variabel lingkungan untuk mengganti konfigurasi default. Rahasia (seperti token API) dapat disediakan oleh rahasia buruh pelabuhan.
nvidia-container-runtime
(khusus pengguna CUDA) Jika Anda ingin menggunakan akselerasi CUDA, Anda perlu menginstal nvidia-container-runtime
di sistem Anda. Silakan merujuk ke dokumentasi resmi untuk instalasi.
Dokumen Terkait:
- https://docs.docker.com/config/containers/resource_constraints/#gpu
- https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html#docker
- https://nvidia.github.io/nvidia-container-runtime/
docker-compose.yml
dari repositori. # For cuda deployment (default)
wget https://raw.githubusercontent.com/hv0905/NekoImageGallery/master/docker-compose.yml
# For CPU-only deployment
wget https://raw.githubusercontent.com/hv0905/NekoImageGallery/master/docker-compose-cpu.yml && mv docker-compose-cpu.yml docker-compose.yml
# start in foreground
docker compose up
# start in background(detached mode)
docker compose up -d
Ada beberapa cara untuk mengunggah gambar ke NekoImageGallery
python main.py local-index < path-to-your-image-directory >
python main.py local-index --help
untuk informasi lebih lanjut. Dokumentasi API disediakan oleh UI Swagger bawaan FastAPI. Anda dapat mengakses dokumentasi API dengan mengunjungi jalur /docs
atau /redoc
di server.
Proyek tersebut bekerja dengan NekoImageGallery :D
Ada banyak cara untuk berkontribusi pada proyek: mencatat bug, mengirimkan permintaan penarikan, melaporkan masalah, dan membuat saran.
Bahkan jika Anda memiliki akses push pada repositori, Anda harus membuat cabang fitur pribadi saat Anda membutuhkannya. Ini menjaga repositori utama tetap bersih dan alur kerja Anda tidak terlihat.
Kami juga tertarik dengan masukan Anda mengenai masa depan proyek ini. Anda dapat mengirimkan saran atau permintaan fitur melalui pelacak masalah. Untuk menjadikan proses ini lebih efektif, kami meminta agar proses ini mencakup lebih banyak informasi untuk membantu mendefinisikannya dengan lebih jelas.
Hak Cipta 2023 EdgeNeko
Berlisensi di bawah lisensi AGPLv3.