jc-builds commited on
Commit
1dbb980
·
verified ·
1 Parent(s): 87e98d3

docs: declare SFW-by-default safety policy + reference safety_negative_prompt.txt

Browse files
Files changed (1) hide show
  1. README.md +14 -0
README.md CHANGED
@@ -42,9 +42,23 @@ ERNIE-Image-Turbo is particularly strong at:
42
  | [`ernie-image-turbo-Q3_K_M.gguf`](./ernie-image-turbo-Q3_K_M.gguf) | Diffusion transformer — 8B params, Q3_K_M | 3.6 GB |
43
  | [`Ministral-3-3B-Instruct-2512-Q4_K_M.gguf`](./Ministral-3-3B-Instruct-2512-Q4_K_M.gguf) | Text encoder (Mistral3 emits the 3072-dim conditioning tensor ERNIE expects) | 2.0 GB |
44
  | [`ae.safetensors`](./ae.safetensors) | VAE — ERNIE's 32-channel `AutoencoderKLFlux2` (≠ Flux's 16-channel `ae.safetensors`; the two are not interchangeable) | 168 MB |
 
45
 
46
  Total bundle: **~5.7 GB**. Total GPU residency: ~7 GB. **iPhone 16 Pro / 17 Pro / Mac** territory.
47
 
 
 
 
 
 
 
 
 
 
 
 
 
 
48
  ## Quick start (Mirage)
49
 
50
  ```swift
 
42
  | [`ernie-image-turbo-Q3_K_M.gguf`](./ernie-image-turbo-Q3_K_M.gguf) | Diffusion transformer — 8B params, Q3_K_M | 3.6 GB |
43
  | [`Ministral-3-3B-Instruct-2512-Q4_K_M.gguf`](./Ministral-3-3B-Instruct-2512-Q4_K_M.gguf) | Text encoder (Mistral3 emits the 3072-dim conditioning tensor ERNIE expects) | 2.0 GB |
44
  | [`ae.safetensors`](./ae.safetensors) | VAE — ERNIE's 32-channel `AutoencoderKLFlux2` (≠ Flux's 16-channel `ae.safetensors`; the two are not interchangeable) | 168 MB |
45
+ | [`safety_negative_prompt.txt`](./safety_negative_prompt.txt) | Recommended default negative prompt to apply at inference time for SFW-by-default deployments | <1 KB |
46
 
47
  Total bundle: **~5.7 GB**. Total GPU residency: ~7 GB. **iPhone 16 Pro / 17 Pro / Mac** territory.
48
 
49
+ ## Safety / SFW-by-default
50
+
51
+ This bundle is intended for shipping in consumer apps and ships with a recommended default negative prompt at [`safety_negative_prompt.txt`](./safety_negative_prompt.txt). Consumers building on top of this bundle SHOULD load the file and prepend its contents to any user-supplied negative prompt by default, with an explicit user-facing opt-out for adult/artistic contexts.
52
+
53
+ The blocklist covers:
54
+
55
+ - **Child safety** — explicit terms blocking sexualised content involving minors or apparent minors (loaded first / highest weight in SD-style negative prompts)
56
+ - **Adult / explicit** — `nsfw`, `nude`, `explicit`, `sexual`, anatomical detail
57
+ - **Gore + graphic violence** — `gore`, `blood`, `mutilation`, etc.
58
+ - **Hate symbols** — `swastika`, `nazi`, `extremist`
59
+
60
+ Diffusion models steer *away* from negative-prompt concepts; they don't binary-reject them. A sufficiently determined prompt can still produce undesirable output, so apps shipping this bundle to general audiences should pair the negative-prompt filter with output-side classification (e.g. a CSAM/NSFW classifier on the generated `CGImage`) before display.
61
+
62
  ## Quick start (Mirage)
63
 
64
  ```swift