Class: BandcampDiscover::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/bandcamp-discover/configuration.rb

Overview

The prompts decide what enters a catalogue, and tuning them used to mean a gem release. Hosting apps set them once; the defaults keep every existing caller behaving as before.

Constant Summary collapse

DEFAULT_MODEL =
"openrouter/auto"
DEFAULT_LABEL_PROMPT =
"You are given a description that could or could not be that of a record label. " \
"Analyze and answer with a JSON object {\"answer\": true|false}. " \
"Be critical: Individuals and bands are not labels, but collectives can be labels."
DEFAULT_DEMOS_PROMPT =
"You are given a description of a record label or music platform. " \
"Analyze if they accept demo submissions from artists. Look for mentions of 'demos', 'demo submissions', " \
"'send demos', 'submit music', 'accepting submissions', contact information for demos, or similar language. " \
"Be critical, and default to false. Only answer with true when you are certain that the label accepts demos. " \
"Answer with a JSON object {\"answer\": true|false}."

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeConfiguration

Returns a new instance of Configuration.



20
21
22
23
24
# File 'lib/bandcamp-discover/configuration.rb', line 20

def initialize
  @model = DEFAULT_MODEL
  @label_prompt = DEFAULT_LABEL_PROMPT
  @demos_prompt = DEFAULT_DEMOS_PROMPT
end

Instance Attribute Details

#demos_promptObject

Returns the value of attribute demos_prompt.



18
19
20
# File 'lib/bandcamp-discover/configuration.rb', line 18

def demos_prompt
  @demos_prompt
end

#label_promptObject

Returns the value of attribute label_prompt.



18
19
20
# File 'lib/bandcamp-discover/configuration.rb', line 18

def label_prompt
  @label_prompt
end

#modelObject

Returns the value of attribute model.



18
19
20
# File 'lib/bandcamp-discover/configuration.rb', line 18

def model
  @model
end