Demo : sist2.simon987.net
Community-URL: Discord
sist2 (Einfaches inkrementelles Suchwerkzeug)
Warnung: sist2 befindet sich in der frühen Entwicklung

* Siehe Formatunterstützung
** Siehe Archivdateien
*** Siehe OCR
**** Siehe Anerkennung benannter Entitäten
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.pyNavigieren Sie zu http://localhost:8080/, um sist2-admin zu konfigurieren.
Such-Backend auswählen (siehe Vergleich):
docker run -d -p 9200:9200 -e " discovery.type=single-node " elasticsearch:7.17.9 Laden Sie die neueste Version von sist2 herunter. Wählen Sie die Ihrer CPU-Architektur entsprechende Datei aus und markieren Sie die Binärdatei mit chmod +x als ausführbar.
Informationen zur Verwendung der Befehlszeile finden Sie im Nutzungshandbuch.
Beispielverwendung:
sist2 scan ~/Documents --output ./documents.sist2sist2 index --es-url http://localhost:9200 ./documents.sist2sist2 sqlite-index --search-index ./search.sist2 ./documents.sist2sist2 web ./documents.sist2sist2 web --search-index ./search.sist2 ./documents.sist2 | Dateityp | Bibliothek | Inhalt | Miniaturansicht | Metadaten |
|---|---|---|---|---|
| pdf,xps,fb2,epub | MuPDF | Text+Okr | Ja | Autor, Titel |
| cbz,cbr | libscan | - | Ja | - |
audio/* | ffmpeg | - | Ja | ID3-Tags |
video/* | ffmpeg | - | Ja | Titel, Kommentar, Künstler |
image/* | ffmpeg | okr | Ja | Gängige EXIF-Tags, GPS-Tags |
| raw, rw2, dng, cr2, crw, dcr, k25, kdc, mrw, pef, xf3, arw, sr2, srf, erf | LibRaw | NEIN | Ja | Gängige EXIF-Tags, GPS-Tags |
| ttf,ttc,cff,woff,fnt,otf | Freetype2 | - | ja, bmp | Name und Stil |
text/plain | libscan | Ja | NEIN | - |
| html, xml | libscan | Ja | NEIN | - |
| tar, zip, rar, 7z, ar ... | Bibliotheksarchiv | Ja* | - | NEIN |
| docx, xlsx, pptx | libscan | Ja | wenn eingebettet | Ersteller, Modified_by, Titel |
| doc (MS Word 97-2003) | Antiwort | Ja | NEIN | Autor, Titel |
| mobi, azw, azw3 | libmobi | Ja | Ja | Autor, Titel |
| wpd (WordPerfect) | libwpd | Ja | NEIN | geplant |
| json, jsonl, ndjson | libscan | Ja | - | - |
* Siehe Archivdateien
sist2 scannt Dateien, die in Archivdateien (zip, tar, 7z...) gespeichert sind, als ob sie direkt im Dateisystem wären. Rekursive (Archive innerhalb von Archiven) Scans werden ebenfalls unterstützt.
Einschränkungen :
.gif , .mp4 mit fragmentierten Metadaten usw.), ist begrenzt (siehe Option --mem-buffer ). Sie können die OCR-Unterstützung für E-Book- (pdf, xps, fb2, epub) oder Bilddateitypen mit der Option --ocr-lang <lang> in Kombination mit --ocr-images und/oder --ocr-ebooks aktivieren. Laden Sie die Sprachdatendateien mit Ihrem Paketmanager ( apt install tesseract-ocr-eng ) oder direkt von Github herunter.
Auf dem simon987/sist2 Image sind gängige Sprachen (hin, jpn, eng, fra, rus, spa, chi_sim, deu, pol) vorinstalliert.
Sie können das + -Trennzeichen verwenden, um mehrere Sprachen anzugeben. Der Sprachname muss mit der auf Ihrem System installierten *.traineddata Datei identisch sein (verwenden Sie chi_sim anstelle von chi-sim ).
Beispiele:
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+ unterstützt das SQLite-Such-Backend. Das SQLite-Such-Backend verfügt über weniger Funktionen und eine im Allgemeinen vergleichbare Abfrageleistung für mittelgroße Indizes, verbraucht jedoch viel weniger Speicher und ist einfacher einzurichten.
| SQLite | Elasticsearch | |
|---|---|---|
| Erfordert eine separate Suchmaschineninstallation | ✓ | |
| Speicherbedarf | ~20 MB | >500 MB |
| Abfragesyntax | fts5 | query_string |
| Fuzzy-Suche | ✓ | |
| Echtzeitaktualisierung des Medientypbaums | ✓ | |
| Manuelles Markieren | ✓ | ✓ |
| Benutzerskripte | ✓ | ✓ |
| Aufschlüsselung nach Medientyp für Suchergebnisse | ✓ | |
| Suche nach Einbettungen | ✓ O(n) | ✓ O(logn) |
sist2 v3.0.4+ unterstützt die Erkennung benannter Entitäten (NER). Fügen Sie einfach eine unterstützte Repository-URL zu Konfiguration > Optionen für maschinelles Lernen > Modellrepositorys hinzu, um sie zu aktivieren.
Die Textverarbeitung erfolgt in Ihrem Browser, es werden keine Daten an Dienste Dritter gesendet. Weitere Informationen finden Sie unter simon987/sist2-ner-models.
| URL | Betreuer | Zweck |
|---|---|---|
| simon987/sist2-ner-models | simon987 | Allgemein |

Sie können sist2 selbst kompilieren, wenn Sie die vorkompilierten Binärdateien nicht verwenden möchten
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-linuxInstallieren Sie Abhängigkeiten zur Kompilierungszeit
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 nodejsInstallieren Sie vcpkg mit meinem Fork: https://github.com/simon987/vcpkg
Installieren Sie vcpkg-Abhängigkeiten
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]Bauen
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