Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 14 additions & 2 deletions lib/llm_classifier/classifier.rb
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,8 @@ module LlmClassifier
class Classifier
class << self
attr_reader :defined_categories, :defined_system_prompt, :defined_model,
:defined_adapter, :defined_multi_label, :defined_knowledge,
:defined_adapter, :defined_multi_label, :defined_require_categories,
:defined_knowledge,
:before_classify_callbacks, :after_classify_callbacks

def categories(*cats)
Expand Down Expand Up @@ -50,6 +51,14 @@ def multi_label(value = nil)
end
end

def require_categories(value = nil)
if value.nil?
@defined_require_categories || false
else
@defined_require_categories = value
end
end

def knowledge(&)
if block_given?
@defined_knowledge = Knowledge.new
Expand Down Expand Up @@ -192,7 +201,10 @@ def extract_valid_categories(json)
end

def should_fail?(valid_categories)
valid_categories.empty? && !self.class.categories.empty? && !self.class.multi_label
return false if valid_categories.any?
return false if self.class.categories.empty?

!self.class.multi_label || self.class.require_categories
end

def build_failure_result(response, json)
Expand Down
2 changes: 1 addition & 1 deletion lib/llm_classifier/content_fetchers/web.rb
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ def private_ip?(address)
end

def normalize_redirect_url(base_url, redirect_url)
return nil if redirect_url.blank?
return nil if redirect_url.nil? || redirect_url.empty?

if redirect_url.start_with?("http://", "https://")
redirect_url
Expand Down
2 changes: 1 addition & 1 deletion lib/llm_classifier/version.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# frozen_string_literal: true

module LlmClassifier
VERSION = "0.1.0"
VERSION = "0.2.0"
end
Loading