DocuBrowse

參考

v1.5.2 的 CLI、設定與安全細節。在已安裝的系統上使用 docubrowser;在複製的儲存庫中使用 ./docubrowser.py。

命令列介面

docubrowser <command> [options]
命令說明
start / stop / restart控制搜尋伺服器(start 會先進行 Ollama 檢查)
status伺服器狀態,文件、嵌入與標籤數量
scan [TYPE ...]掃描、索引並嵌入文件。--no-embed 略過嵌入
rescan [TYPE ...]scan 的別名
scan-file --file PATH索引單一檔案,然後嵌入
embed為未嵌入的文件產生嵌入
open在預設瀏覽器中開啟 UI
purge掃描索引中的 PII 並移除相符文件
ignore add|remove|list DIR管理排除目錄(新增時自動清除)
report檔案類型統計,不變動資料庫
scan-missing [--dry-run]移除真正遺失檔案的記錄;保留未掛載的路徑
stopall停止所有掃描、嵌入與伺服器
duplist / dupclean列出重複 / 互動式檢視並移除

全域選項

--db PATH      SQLite 資料庫路徑(覆寫設定)
--port PORT    伺服器連接埠(覆寫設定)
--config FILE  設定檔路徑

範例

docubrowser start --port 9000
docubrowser scan pdf txt              # 僅 PDF 和純文字
docubrowser scan --limit 100          # 未索引的前 100 個檔案
docubrowser scan --workers 4          # 4 個擷取工作程序
docubrowser scan-file --file /path/to/document.pdf
docubrowser purge --dry-run           # 預覽 PII 相符(安全)
docubrowser ignore add ~/Documents/myWorkDocs
docubrowser duplist --near-dups --threshold 0.95
docubrowser scan-missing --dry-run

scan 的類型篩選器:pdf、txt、md、html;預設是所有支援的類型。

scan-file 用於重試有問題的檔案:它會從 scan_blacklist.txt 中移除該檔案,拒絕 pii_blacklist.txt 中的檔案,並把掃描的 PDF 送入 ocr_list_pdfs.txt。

設定

DocuBrowse 讀取它找到的第一個設定檔:/etc/docubrowse.config,然後是 docubrowser.py 旁邊的 ./docubrowse.config。

# docubrowse.config
doc_dir      = ~/Documents
db_path      = /home/user/DocuBrowse/du-docs.db
port         = 8643
work_dir     = /home/user/DocuBrowse
lang         = en
鍵預設
doc_dir無。必須透過 Settings 或設定檔設定
db_path<script dir>/du-docs.db
port8643
work_dir<script dir>
langen(也可 ja、ko、zh、zh-hant)

環境變數

環境變數會覆寫對應的設定鍵。CLI 旗標仍然優先。

變數說明
DOCUBROWSE_DOC_DIR主要文件目錄
DOCUBROWSE_DB / DOCUBROWSE_DB_PATHdu-docs.db 的路徑
DOCUBROWSE_PORTHTTP 連接埠(預設 8643)
DOCUBROWSE_WORK_DIR執行時資料的工作目錄
OLLAMA_HOSTOllama 基礎 URL(預設 http://localhost:11434);也可用 DOCUBROWSE_OLLAMA_HOST

架構

docubrowser.py (CLI)  ──►  scan_docs.py (ProcessPoolExecutor, extractors, embed_docs.py)
ensure_ollama.py            doc_search.py (HTTP :8643)
                                   │                   │
                                   └────────┬──────────┘
                                            ▼
                         du-docs.db (SQLite FTS5)  +  Ollama
                         (nomic-embed-text, dolphin3)

關鍵字評分使用 FTS5 BM25,標題和作者的權重高於內文和標籤。語意評分比較查詢嵌入與各文件嵌入。混合模式為每份文件取兩者中較強的分數。完整演算法見 README。

安全

DocuBrowse 繫結到 127.0.0.1,面向單一使用者本機使用。它經過強化,使你造訪的惡意網頁無法觸及它:

沒有使用者登入,因為只有你,在你自己的機器上,才能觸及伺服器。