vector model
vector model
Defines a model that rejects a message value whose meaning is semantically similar to a configured set of reject phrases, comparing embedding vectors by cosine similarity instead of matching exact text.
Feature is in Incubator
Read how to enable incubator features. Star and watch the Zilla repo for new releases!
The full message value is buffered and decoded as UTF-8 text before being embedded. The value itself is never modified — it is only accepted or rejected.
model: vector
embedding: moderator0
reject:
- "You will never believe what happened next."
- "I have a massive secret but I absolutely cannot tell anyone here."
threshold: 0.94
store: cache0Configuration (* required)
model: vector
const
Specifies the model is vector.
embedding*
string
Name of a configured embedding used to turn the message value, and each configured reject phrase, into a vector. Any registered embedding provider works here — glove, openai, aws-bedrock, or ibm-watsonx-ai — not only the glove type shown in the example above.
reject*
arrayofstring
One or more example phrases representing content to reject. Each phrase is embedded once, shared through the configured store, into a vector for comparison against incoming message values.
threshold*
number| Maximum:1
Minimum cosine similarity, between 0 and 1, at or above which a message value is rejected.
store*
string
Name of a configured store (see memory, redis, and hazelcast) used to embed each configured reject phrase only once and share the result, rather than have every engine worker — and, with a distributed store, every replica — embed the same phrases independently.

