mirror of
https://github.com/mudler/LocalAI.git
synced 2026-06-18 21:58:58 -04:00
Squashed feat/pii-ner-tier-engine rebased onto master (was 45 commits; see backup/pii-ner-tier-engine-prerebase). Net change: - privacy-filter.cpp: standalone GGML engine for the openai-privacy-filter PII/NER token classifier, wired as a LocalAI gRPC backend (CPU/CUDA/Vulkan). TokenClassify moves off the patched llama.cpp path onto this backend. - PII filter reworked to be NER-centric (encoder/NER detection tier scanning whole conversations as one document), with a recreated bounded restricted- regex secret-matching pattern detector tier alongside it (per-model pii_detection.builtins / .patterns + core/services/routing/piipattern). - Detection labelled by source (ner vs pattern); backend trace / confidence / debug observability; analyze/redact exposed as a synchronous API. - Instance-wide default detector policy + per-usecase default-on; request filtering extended to completions, embeddings, edits & Ollama. - React UI: NER-centric PII editor, detector-models table, pattern/builtins editor, middleware default-policy UI. - Gallery: privacy-filter-multilingual token-classify model + NER install filter; token_classify known_usecase; batch sized to context for NER models. privacy-filter backend registered in the backend gallery (cpu/vulkan/cuda-13 meta + image entries with a capabilities map) matching its CI matrix jobs, and an /import-model auto-detect importer (PrivacyFilterImporter, narrow privacy-filter GGUF detection) replacing the prior pref-only registration. Reconciled against master's independent evolution: - Dropped master's PIIPatternOverrides feature (global-pattern runtime overrides + /api/pii/patterns API + runtime_settings.json persistence). The per-model NER + pattern-detector design supersedes it; it was built on the global redactor pattern set this branch replaced. - Reverted the llama.cpp Score carry-patch (0006-server-task-type-score): removed the patch and restored master's grpc-server.cpp Score RPC (direct llama_decode, slot-loop bypass) and LLAMA_VERSION pin, plus master's model_config validation forbidding score + chat/completion/embeddings on llama-cpp. token_classify is unaffected (it runs on the privacy-filter backend, not llama-cpp). Assisted-by: Claude:claude-opus-4-8 [Claude Code] Signed-off-by: Richard Palethorpe <io@richiejp.com>
58 lines
1.7 KiB
Plaintext
58 lines
1.7 KiB
Plaintext
.idea
|
|
.github
|
|
.vscode
|
|
.devcontainer
|
|
models
|
|
backends
|
|
volumes
|
|
examples/chatbot-ui/models
|
|
backend/go/image/stablediffusion-ggml/build/
|
|
backend/go/*/build
|
|
backend/go/*/.cache
|
|
backend/go/*/sources
|
|
backend/go/*/package
|
|
examples/rwkv/models
|
|
examples/**/models
|
|
Dockerfile*
|
|
__pycache__
|
|
|
|
# SonarQube
|
|
.scannerwork
|
|
|
|
# backend virtual environments
|
|
**/venv
|
|
backend/python/**/source
|
|
|
|
# In-place llama.cpp clone + per-variant build copies. The Makefile
|
|
# clones llama.cpp itself at the pinned LLAMA_VERSION; if a stale
|
|
# local checkout is COPY'd into the image, the `llama.cpp:` target
|
|
# sees the directory and skips re-cloning, so grpc-server.cpp ends
|
|
# up compiled against whatever (likely older) commit the host had.
|
|
backend/cpp/llama-cpp/llama.cpp
|
|
backend/cpp/llama-cpp-*-build
|
|
|
|
# privacy-filter: same in-place pattern. The Makefile fetches privacy-filter.cpp
|
|
# at the pinned commit (or symlinks a PRIVACY_FILTER_SRC checkout for local dev).
|
|
# A stale dir/symlink COPY'd into the image makes the clone step fail (dangling
|
|
# symlink) or compile against the wrong commit, so keep host build state out.
|
|
backend/cpp/privacy-filter/privacy-filter.cpp
|
|
backend/cpp/privacy-filter/build
|
|
backend/cpp/privacy-filter/grpc-server
|
|
backend/cpp/privacy-filter/package
|
|
|
|
# Rust backend build output (sources are tracked; target/ is generated)
|
|
backend/rust/*/target
|
|
|
|
# Local-only artifacts that bloat the build context but the image never needs.
|
|
# Saved image tarballs, locally-installed backends, the host-built binary, and
|
|
# assorted tool/scratch dirs. None of these are git-tracked.
|
|
backend-images
|
|
local-backends
|
|
local-ai
|
|
.crush
|
|
protoc
|
|
tests
|
|
|
|
# Installed via npm inside the build stage; no need to ship the host copy.
|
|
**/node_modules
|