ruby_llm 1.7.0 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3 -2
  3. data/lib/generators/ruby_llm/chat_ui/chat_ui_generator.rb +30 -18
  4. data/lib/generators/ruby_llm/generator_helpers.rb +129 -0
  5. data/lib/generators/ruby_llm/install/install_generator.rb +110 -0
  6. data/lib/generators/ruby_llm/install/templates/add_references_to_chats_tool_calls_and_messages_migration.rb.tt +9 -0
  7. data/lib/generators/ruby_llm/install/templates/create_chats_migration.rb.tt +2 -3
  8. data/lib/generators/ruby_llm/install/templates/create_messages_migration.rb.tt +3 -6
  9. data/lib/generators/ruby_llm/install/templates/create_models_migration.rb.tt +3 -6
  10. data/lib/generators/ruby_llm/install/templates/create_tool_calls_migration.rb.tt +4 -5
  11. data/lib/generators/ruby_llm/upgrade_to_v1_7/templates/migration.rb.tt +21 -13
  12. data/lib/generators/ruby_llm/upgrade_to_v1_7/upgrade_to_v1_7_generator.rb +121 -0
  13. data/lib/ruby_llm/attachment.rb +5 -0
  14. data/lib/ruby_llm/configuration.rb +2 -0
  15. data/lib/ruby_llm/mime_type.rb +4 -0
  16. data/lib/ruby_llm/model/info.rb +4 -0
  17. data/lib/ruby_llm/models.json +780 -511
  18. data/lib/ruby_llm/models.rb +7 -3
  19. data/lib/ruby_llm/moderation.rb +56 -0
  20. data/lib/ruby_llm/provider.rb +6 -0
  21. data/lib/ruby_llm/providers/gemini/capabilities.rb +5 -0
  22. data/lib/ruby_llm/providers/openai/moderation.rb +34 -0
  23. data/lib/ruby_llm/providers/openai.rb +1 -0
  24. data/lib/ruby_llm/railtie.rb +1 -1
  25. data/lib/ruby_llm/version.rb +1 -1
  26. data/lib/ruby_llm.rb +4 -0
  27. metadata +7 -3
  28. data/lib/generators/ruby_llm/install_generator.rb +0 -217
  29. data/lib/generators/ruby_llm/upgrade_to_v1_7_generator.rb +0 -160
@@ -26,6 +26,7 @@ module RubyLLM
26
26
  # Default models
27
27
  :default_model,
28
28
  :default_embedding_model,
29
+ :default_moderation_model,
29
30
  :default_image_model,
30
31
  # Model registry
31
32
  :model_registry_class,
@@ -54,6 +55,7 @@ module RubyLLM
54
55
 
55
56
  @default_model = 'gpt-4.1-nano'
56
57
  @default_embedding_model = 'text-embedding-3-small'
58
+ @default_moderation_model = 'omni-moderation-latest'
57
59
  @default_image_model = 'gpt-image-1'
58
60
 
59
61
  @model_registry_class = 'Model'
@@ -15,6 +15,10 @@ module RubyLLM
15
15
  type.start_with?('image/')
16
16
  end
17
17
 
18
+ def video?(type)
19
+ type.start_with?('video/')
20
+ end
21
+
18
22
  def audio?(type)
19
23
  type.start_with?('audio/')
20
24
  end
@@ -56,6 +56,10 @@ module RubyLLM
56
56
  modalities.input.include?('image')
57
57
  end
58
58
 
59
+ def supports_video?
60
+ modalities.input.include?('video')
61
+ end
62
+
59
63
  def supports_functions?
60
64
  function_calling?
61
65
  end