Skip to content

Commit 8273d58

Browse files
author
Oracles Technologies LLC
committed
feat: update README to reflect new capabilities
1 parent adc8e96 commit 8273d58

1 file changed

Lines changed: 52 additions & 5 deletions

File tree

README.md

Lines changed: 52 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@
33
**Production-grade, real-time threat detection for Python LLM and agentic
44
applications. Detect and block prompt injection, jailbreaks, adversarial
55
manipulation, malicious tool calls, and data exfiltration across the full
6-
agentic loop — before they reach your model or execute in your pipeline.**
6+
agentic loop — in text, images, and video — before they reach your model or
7+
execute in your pipeline.**
78

89
[![PyPI version](https://badge.fury.io/py/ethicore-engine-guardian.svg)](https://pypi.org/project/ethicore-engine-guardian/)
910
[![PyPI Downloads](https://img.shields.io/pypi/dm/ethicore-engine-guardian.svg)](https://pypi.org/project/ethicore-engine-guardian/)
@@ -42,6 +43,21 @@ pip install "ethicore-engine-guardian[anthropic]"
4243
pip install "ethicore-engine-guardian[openai,anthropic]"
4344
```
4445

46+
With visual analysis (images):
47+
```bash
48+
pip install "ethicore-engine-guardian[vision]"
49+
```
50+
51+
With video frame analysis (also requires `ffmpeg` in PATH):
52+
```bash
53+
pip install "ethicore-engine-guardian[video]"
54+
```
55+
56+
Everything at once:
57+
```bash
58+
pip install "ethicore-engine-guardian[all]"
59+
```
60+
4561
---
4662

4763
## See It Work (4 Lines)
@@ -66,6 +82,29 @@ asyncio.run(main())
6682

6783
That attack is stopped before your model ever sees it. Four lines.
6884

85+
### Analyze images alongside text *(API tier)*
86+
87+
Vision-capable models accept images as part of their input. Guardian does too.
88+
Pass image bytes directly to `analyze()` and the same pipeline that guards text
89+
runs against every image in the request:
90+
91+
```python
92+
with open("uploaded_image.png", "rb") as f:
93+
image_bytes = f.read()
94+
95+
result = await guardian.analyze(
96+
text="What does this image say?",
97+
images=[image_bytes], # list — one or more images, any common format
98+
)
99+
100+
if result.recommended_action == "BLOCK":
101+
return "This image contains content that cannot be processed."
102+
```
103+
104+
Supports PNG, JPEG, GIF, WebP, BMP, TIFF, and SVG. Video frames can be
105+
submitted via the `metadata` interface — contact support for the video API
106+
reference.
107+
69108
### Post-flight: guard the response too
70109

71110
```python
@@ -96,10 +135,11 @@ return llm_response
96135

97136
## How It Works
98137

99-
Guardian runs a **full agentic loop protection pipeline** — four layers on every
100-
input before it reaches the model, two layers on every response before it reaches
101-
the user, and two additional intercept points protecting every tool call and tool
102-
output in the agentic loop.
138+
Guardian runs a **full agentic loop protection pipeline** — multiple detection
139+
layers on every input before it reaches the model, two layers on every response
140+
before it reaches the user, two intercept points protecting every tool call and
141+
tool output in the agentic loop, and visual analysis across images and video
142+
submitted alongside text.
103143

104144
### Pre-flight gate (input → model)
105145

@@ -109,6 +149,8 @@ output in the agentic loop.
109149
| **Semantic** | ONNX MiniLM-L6 embeddings | Paraphrased attacks, novel variants by meaning |
110150
| **Behavioral** | Session-level heuristics | Multi-turn escalation, gradual manipulation |
111151
| **ML** | Gradient-boosted inference | Context-aware scoring, subtle drift |
152+
| **Visual** | Multi-format image and video analysis | Threat payloads embedded in images and video frames passed alongside text *(API)* |
153+
| **Cross-modal fusion** | Combined signal analysis | Coordinated attacks that distribute threat signals across text and visual channels to evade single-modality detection *(API)* |
112154

113155
### Post-flight gate (model → user)
114156

@@ -151,6 +193,9 @@ Guardian protects your AI system from adversarial inputs designed to:
151193
- **Bypass via translation or encoding** — obfuscation attacks designed to evade detection *(API)*
152194
- **Abuse few-shot patterns** — using example structures to smuggle instructions *(API)*
153195
- **Exploit sycophancy** — persistence attacks that leverage model compliance tendencies *(API)*
196+
- **Embed threats in images** — adversarial instructions, injection payloads, and exfiltration commands hidden in images submitted to vision-capable models *(API)*
197+
- **Coordinate across modalities** — split-channel attacks that distribute threat signals across text and visual inputs, each appearing benign in isolation *(API)*
198+
- **Hide payloads in video** — injection content embedded across video frames, including temporally recurring signals designed to survive frame-level filtering *(API)*
154199

155200
The community edition covers the five most prevalent categories. The API covers 50+.
156201

@@ -169,6 +214,8 @@ The community edition covers the five most prevalent categories. The API covers
169214
| **Tool call validation** |||||
170215
| **Tool output scanning** |||||
171216
| **LangChain callback integration** |||||
217+
| **Visual analysis (images + video)** |||||
218+
| **Cross-modal threat fusion** |||||
172219
| **Post-flight OutputAnalyzer** |||||
173220
| **Adversarial learning** | ✅ hash-based | ✅ embedding-based | ✅ embedding-based | ✅ embedding-based |
174221
| **Monthly requests** | Unlimited (local) | 1,000 | 100,000 | Custom |

0 commit comments

Comments
 (0)