Demo : sist2.simon987.net
URL Komunitas: Perselisihan
sist2 (Alat pencarian tambahan sederhana)
Peringatan: sist2 sedang dalam pengembangan awal
* Lihat dukungan format
** Lihat File arsip
*** Lihat OCR
**** Lihat Pengakuan Entitas Bernama
version : " 3 "
services :
elasticsearch :
image : elasticsearch:7.17.9
restart : unless-stopped
volumes :
# This directory must have 1000:1000 permissions (or update PUID & PGID below)
- /data/sist2-es-data/:/usr/share/elasticsearch/data
environment :
- " discovery.type=single-node "
- " ES_JAVA_OPTS=-Xms2g -Xmx2g "
- " PUID=1000 "
- " PGID=1000 "
sist2-admin :
image : simon987/sist2:3.4.2-x64-linux
restart : unless-stopped
volumes :
- /data/sist2-admin-data/:/sist2-admin/
- /:/host
ports :
- 4090:4090
# NOTE: Don't expose this port publicly!
- 8080:8080
working_dir : /root/sist2-admin/
entrypoint : python3
command :
- /root/sist2-admin/sist2_admin/app.py
Navigasi ke http://localhost:8080/ untuk mengkonfigurasi sist2-admin.
Pilih backend pencarian (Lihat perbandingan):
docker run -d -p 9200:9200 -e " discovery.type=single-node " elasticsearch:7.17.9
Download rilis sist2 terbaru. Pilih file yang sesuai dengan arsitektur CPU Anda dan tandai biner sebagai dapat dieksekusi dengan chmod +x
.
Lihat panduan penggunaan untuk penggunaan baris perintah.
Contoh penggunaan:
sist2 scan ~/Documents --output ./documents.sist2
sist2 index --es-url http://localhost:9200 ./documents.sist2
sist2 sqlite-index --search-index ./search.sist2 ./documents.sist2
sist2 web ./documents.sist2
sist2 web --search-index ./search.sist2 ./documents.sist2
Jenis berkas | Perpustakaan | Isi | gambar kecil | Metadata |
---|---|---|---|---|
pdf,xps,fb2,epub | MuPDF | teks+okr | Ya | penulis, judul |
cbz, cbr | libscan | - | Ya | - |
audio/* | ffmpeg | - | Ya | tag ID3 |
video/* | ffmpeg | - | Ya | judul, komentar, artis |
image/* | ffmpeg | okr | Ya | Tag EXIF umum, tag GPS |
mentah, rw2, dng, CR2, crw, DCR, K25, kdc, Mrw, pef, xf3, arw, sr2, srf, erf | LibraMentah | TIDAK | Ya | Tag EXIF umum, tag GPS |
ttf,ttc,cff,woff,fnt,otf | Tipe bebas2 | - | ya, bmp | Nama & gaya |
text/plain | libscan | Ya | TIDAK | - |
html, xml | libscan | Ya | TIDAK | - |
tar, zip, rar, 7z, ar ... | arsip perpustakaan | Ya* | - | TIDAK |
docx, xlsx, pptx | libscan | Ya | jika tertanam | pencipta, dimodifikasi_oleh, judul |
dokumen (MS Word 97-2003) | anti kata | Ya | TIDAK | penulis, judul |
ponsel, azw, azw3 | libmobi | Ya | Ya | penulis, judul |
wpd (Kata Sempurna) | libwpd | Ya | TIDAK | berencana |
json, jsonl, ndjson | libscan | Ya | - | - |
* Lihat File arsip
sist2 akan memindai file yang disimpan ke dalam file arsip (zip, tar, 7z...) seolah-olah berada langsung di sistem file. Pemindaian rekursif (arsip di dalam arsip) juga didukung.
Keterbatasan :
.gif
, .mp4
dengan metadata terfragmentasi, dll.) terbatas (lihat opsi --mem-buffer
) Anda dapat mengaktifkan dukungan OCR untuk jenis file eBook (pdf,xps,fb2,epub) atau gambar dengan opsi --ocr-lang <lang>
yang dikombinasikan dengan --ocr-images
dan/atau --ocr-ebooks
. Unduh file data bahasa dengan manajer paket Anda ( apt install tesseract-ocr-eng
) atau langsung dari Github.
Gambar simon987/sist2
hadir dengan bahasa umum (hin, jpn, eng, fra, rus, spa, chi_sim, deu, pol) yang sudah diinstal sebelumnya.
Anda dapat menggunakan pemisah +
untuk menentukan beberapa bahasa. Nama bahasa harus sama dengan file *.traineddata
yang diinstal pada sistem Anda (gunakan chi_sim
daripada chi-sim
).
Contoh:
sist2 scan --ocr-ebooks --ocr-lang jpn ~ /Books/Manga/
sist2 scan --ocr-images --ocr-lang eng ~ /Images/Screenshots/
sist2 scan --ocr-ebooks --ocr-images --ocr-lang eng+chi_sim ~ /Chinese-Bilingual/
sist2 v3.0.7+ mendukung backend pencarian SQLite. Backend pencarian SQLite memiliki lebih sedikit fitur dan kinerja kueri yang secara umum sebanding untuk indeks berukuran sedang, namun menggunakan lebih sedikit memori dan lebih mudah diatur.
SQLite | Pencarian elastis | |
---|---|---|
Memerlukan instalasi mesin pencari terpisah | ✓ | |
Jejak memori | ~20MB | >500MB |
Sintaks kueri | fts5 | string_kueri |
Pencarian kabur | ✓ | |
Pembaruan waktu nyata pohon Jenis Media | ✓ | |
Penandaan manual | ✓ | ✓ |
Skrip pengguna | ✓ | ✓ |
Perincian Jenis Media untuk hasil pencarian | ✓ | |
Pencarian penyematan | ✓ HAI(n) | ✓ O (masuk) |
sist2 v3.0.4+ mendukung pengenalan entitas bernama (NER). Cukup tambahkan URL repositori yang didukung ke Konfigurasi > Opsi pembelajaran mesin > Repositori model untuk mengaktifkannya.
Pemrosesan teks dilakukan di browser Anda, tidak ada data yang dikirim ke layanan pihak ketiga mana pun. Lihat simon987/sist2-ner-models untuk lebih jelasnya.
URL | Pemelihara | Tujuan |
---|---|---|
simon987/sist2-ner-models | simon987 | Umum |
Anda dapat mengkompilasi sist2 sendiri jika Anda tidak ingin menggunakan binari yang telah dikompilasi sebelumnya
git clone --recursive https://github.com/simon987/sist2/
cd sist2
docker build . -t my-sist2-image
# Copy sist2 executable from docker image
docker run --rm --entrypoint cat my-sist2-image /root/sist2 > sist2-x64-linux
Instal dependensi waktu kompilasi
apt install gcc g++ python3 yasm ragel automake autotools-dev wget libtool libssl-dev curl zip unzip tar xorg-dev libglu1-mesa-dev libxcursor-dev libxml2-dev libxinerama-dev gettext nasm git nodejs
Instal vcpkg menggunakan fork saya: https://github.com/simon987/vcpkg
Instal dependensi vcpkg
vcpkg install openblas curl[core,openssl] sqlite3[core,fts5,json1] cpp-jwt pcre cjson brotli libarchive[core,bzip2,libxml2,lz4,lzma,lzo] pthread tesseract libxml2 libmupdf[ocr] gtest mongoose libmagic libraw gumbo ffmpeg[core,avcodec,avformat,swscale,swresample,webp,opus,mp3lame,vpx,zlib]
Membangun
git clone --recursive https://github.com/simon987/sist2/
(cd sist2-vue ; npm install ; npm run build)
(cd sist2-admin/frontend ; npm install ; npm run build)
cmake -DSIST_DEBUG=off -DCMAKE_TOOLCHAIN_FILE= < VCPKG_ROOT > /scripts/buildsystems/vcpkg.cmake .
make