Class: Raif::Generators::ConversationGenerator
- Inherits:
-
BaseGenerator
- Object
- Rails::Generators::NamedBase
- BaseGenerator
- Raif::Generators::ConversationGenerator
- Defined in:
- lib/generators/raif/conversation/conversation_generator.rb
Instance Method Summary collapse
- #create_application_conversation ⇒ Object
- #create_conversation_file ⇒ Object
- #create_directory ⇒ Object
- #create_eval_set ⇒ Object
- #create_system_prompt_template ⇒ Object
- #success_message ⇒ Object
Instance Method Details
#create_application_conversation ⇒ Object
27 28 29 30 |
# File 'lib/generators/raif/conversation/conversation_generator.rb', line 27 def create_application_conversation template "application_conversation.rb.tt", "app/models/raif/application_conversation.rb" unless File.exist?("app/models/raif/application_conversation.rb") end |
#create_conversation_file ⇒ Object
32 33 34 |
# File 'lib/generators/raif/conversation/conversation_generator.rb', line 32 def create_conversation_file template "conversation.rb.tt", File.join("app/models/raif/conversations", class_path, "#{file_name}.rb") end |
#create_directory ⇒ Object
42 43 44 |
# File 'lib/generators/raif/conversation/conversation_generator.rb', line 42 def create_directory empty_directory "app/models/raif/conversations" unless File.directory?("app/models/raif/conversations") end |
#create_eval_set ⇒ Object
46 47 48 49 50 |
# File 'lib/generators/raif/conversation/conversation_generator.rb', line 46 def create_eval_set return if [:skip_eval_set] template "conversation_eval_set.rb.tt", eval_set_file_path end |
#create_system_prompt_template ⇒ Object
36 37 38 39 40 |
# File 'lib/generators/raif/conversation/conversation_generator.rb', line 36 def create_system_prompt_template return if [:skip_prompt_template] template "system_prompt.erb.tt", system_prompt_template_file_path end |
#success_message ⇒ Object
52 53 54 55 56 57 58 59 60 61 |
# File 'lib/generators/raif/conversation/conversation_generator.rb', line 52 def say_status :success, "Conversation type created successfully", :green say "\nYou can now implement your conversation type in:" say " app/models/raif/conversations/#{file_name}.rb" unless [:skip_prompt_template] say " System prompt template: #{system_prompt_template_file_path}" end say "\nDon't forget to add it to the config.conversation_types in your Raif configuration" say "For example: config.conversation_types += ['Raif::Conversations::#{class_name}']\n\n" end |