Skip to content

Commit 7fb5193

Browse files
authored
Merge pull request #30 from tyzbit/llmvalue
feat(filter-builtin): add LLMProcessNumber(Above|Below)
2 parents 3bcd8e4 + 2a5ee9f commit 7fb5193

File tree

3 files changed

+19
-1
lines changed

3 files changed

+19
-1
lines changed

config_all_options.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -216,6 +216,10 @@ Steps:
216216
Terms:
217217
- LAV
218218
- COFFEE
219+
# The number output from a previous LLM step must be greater than this.
220+
LLMProcessedNumberAbove: 1
221+
# The number output from a previous LLM step must be less than this.
222+
LLMProcessedNumberBelow: 80
219223
# Use Ollama (which can be self-hosted) to choose to filter messages based on plain-text criteria.
220224
Ollama:
221225
# Whether to filter messages where Ollama itself fails. Recommended if your ollama instance sometimes returns errors.

filter_builtin.go

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,10 @@ type BuiltinFilter struct {
102102
Count int `jsonschema:"example=1" default:"1"`
103103
Terms []string `jsonschema:"example=[LAV,COFFEE]" default:"[LAV,COFFEE]"`
104104
}
105+
// The number output from a previous LLM step must be greater than this.
106+
LLMProcessedNumberAbove int `jsonschema:"example=1" default:"1"`
107+
// The number output from a previous LLM step must be less than this.
108+
LLMProcessedNumberBelow int `jsonschema:"example=80" default:"80"`
105109
}
106110

107111
func (a BuiltinFilter) Name() string {
@@ -300,6 +304,16 @@ var (
300304
requiredTermsPresent := RequireNTerms(f.RequireTerms.Terms, mt, f.RequireTerms.Count)
301305
return !requiredTermsPresent, reason, nil
302306
},
307+
"LLMProcessedNumberAbove": func(f BuiltinFilter, m APMessage) (filter bool, reason string, err error) {
308+
field := "LLMProcessedNumber"
309+
valueAbove := GetAPMessageCommonFieldAsInt(m, field) > f.LLMProcessedNumberAbove
310+
return !valueAbove, reason, nil
311+
},
312+
"LLMProcessedNumberBelow": func(f BuiltinFilter, m APMessage) (filter bool, reason string, err error) {
313+
field := "LLMProcessedNumber"
314+
valueBelow := GetAPMessageCommonFieldAsInt(m, field) < f.LLMProcessedNumberBelow
315+
return !valueBelow, reason, nil
316+
},
303317
}
304318
)
305319

0 commit comments

Comments
 (0)