Table of Contents

Class VectorFilter

Namespace
Mythosia.VectorDb
Assembly
Mythosia.VectorDb.Abstractions.dll

Filter criteria for vector store queries and deletions. Top-level conditions are combined with AND logic. Supports fluent chaining โ€” all methods return this.

public class VectorFilter
Inheritance
VectorFilter
Inherited Members

Constructors

VectorFilter()

public VectorFilter()

Properties

Conditions

The metadata filter conditions. Top-level conditions are AND-combined.

public IReadOnlyList<FilterCondition> Conditions { get; }

Property Value

IReadOnlyList<FilterCondition>

MinScore

Minimum similarity score threshold. Results below this score are excluded.

public double? MinScore { get; set; }

Property Value

double?

Methods

And(Action<VectorFilter>)

Adds an AND group. All conditions added to the inner filter must match. Useful for nesting AND inside an Or(Action<VectorFilter>) group.

public VectorFilter And(Action<VectorFilter> configure)

Parameters

configure Action<VectorFilter>

Returns

VectorFilter

AppendConditionsFrom(VectorFilter)

Appends all conditions from other into this filter. Used for filter merging (e.g., combining a pipeline-level store filter with a per-query filter).

public VectorFilter AppendConditionsFrom(VectorFilter other)

Parameters

other VectorFilter

Returns

VectorFilter

Or(Action<VectorFilter>)

Adds an OR group. At least one condition added to the inner filter must match.

public VectorFilter Or(Action<VectorFilter> configure)

Parameters

configure Action<VectorFilter>

Returns

VectorFilter

Where(string, string)

Adds an exact-match condition (key = value).

public VectorFilter Where(string key, string value)

Parameters

key string
value string

Returns

VectorFilter

WhereExists(string)

Adds a key-exists condition.

public VectorFilter WhereExists(string key)

Parameters

key string

Returns

VectorFilter

WhereGreaterThan(string, string)

Adds a greater-than condition (key > value). String comparison for non-numeric keys.

public VectorFilter WhereGreaterThan(string key, string value)

Parameters

key string
value string

Returns

VectorFilter

WhereGreaterThanOrEqual(string, string)

Adds a greater-than-or-equal condition (key >= value). String comparison for non-numeric keys.

public VectorFilter WhereGreaterThanOrEqual(string key, string value)

Parameters

key string
value string

Returns

VectorFilter

WhereIn(string, params string[])

Adds an IN condition (key IN (values)).

public VectorFilter WhereIn(string key, params string[] values)

Parameters

key string
values string[]

Returns

VectorFilter

WhereLessThan(string, string)

Adds a less-than condition (key < value). String comparison for non-numeric keys.

public VectorFilter WhereLessThan(string key, string value)

Parameters

key string
value string

Returns

VectorFilter

WhereLessThanOrEqual(string, string)

Adds a less-than-or-equal condition (key <= value). String comparison for non-numeric keys.

public VectorFilter WhereLessThanOrEqual(string key, string value)

Parameters

key string
value string

Returns

VectorFilter

WhereLike(string, string)

Adds a SQL LIKE pattern condition. Use % for any sequence of characters and _ for any single character.

public VectorFilter WhereLike(string key, string pattern)

Parameters

key string
pattern string

Returns

VectorFilter

WhereNot(string, string)

Adds a not-equal condition (key != value). Records without the key do not match.

public VectorFilter WhereNot(string key, string value)

Parameters

key string
value string

Returns

VectorFilter

WhereNotExists(string)

Adds a key-does-not-exist condition.

public VectorFilter WhereNotExists(string key)

Parameters

key string

Returns

VectorFilter

WhereNotIn(string, params string[])

Adds a NOT-IN condition (key NOT IN (values)). Records without the key do not match.

public VectorFilter WhereNotIn(string key, params string[] values)

Parameters

key string
values string[]

Returns

VectorFilter

WithMinScore(double)

Sets the minimum similarity score threshold and returns this for chaining.

public VectorFilter WithMinScore(double minScore)

Parameters

minScore double

Returns

VectorFilter