24 lines
493 B
Markdown
24 lines
493 B
Markdown
|
|
```ruby title="Ruby"
|
||
|
|
require 'kreuzberg'
|
||
|
|
|
||
|
|
class CustomPostProcessor
|
||
|
|
def call(result)
|
||
|
|
result['metadata'] ||= {}
|
||
|
|
result['metadata']['processed_by'] = 'CustomPostProcessor'
|
||
|
|
result
|
||
|
|
end
|
||
|
|
end
|
||
|
|
|
||
|
|
class CustomValidator
|
||
|
|
def call(result)
|
||
|
|
raise StandardError, 'Empty' if result['content'].empty?
|
||
|
|
end
|
||
|
|
end
|
||
|
|
|
||
|
|
processor = CustomPostProcessor.new
|
||
|
|
validator = CustomValidator.new
|
||
|
|
|
||
|
|
Kreuzberg.register_post_processor('custom', processor)
|
||
|
|
Kreuzberg.register_validator('custom', validator)
|
||
|
|
```
|