Module: Legion::Extensions::Llm::Vertex::Provider::Capabilities
- Defined in:
- lib/legion/extensions/llm/vertex/provider.rb
Overview
Capability predicates inferred from Vertex publisher model IDs and API modality.
Class Method Summary collapse
- .chat?(model) ⇒ Boolean
- .embeddings?(model) ⇒ Boolean
- .functions?(model) ⇒ Boolean
- .model_id(model) ⇒ Object
- .streaming?(model) ⇒ Boolean
- .vision?(model) ⇒ Boolean
Class Method Details
.chat?(model) ⇒ Boolean
74 |
# File 'lib/legion/extensions/llm/vertex/provider.rb', line 74 def chat?(model) = !(model) |
.embeddings?(model) ⇒ Boolean
78 |
# File 'lib/legion/extensions/llm/vertex/provider.rb', line 78 def (model) = model_id(model).match?(/embedding|embed/) |
.functions?(model) ⇒ Boolean
77 |
# File 'lib/legion/extensions/llm/vertex/provider.rb', line 77 def functions?(model) = chat?(model) |
.model_id(model) ⇒ Object
80 81 82 83 84 |
# File 'lib/legion/extensions/llm/vertex/provider.rb', line 80 def model_id(model) return model.fetch('model', model.fetch('id', '')) if model.is_a?(Hash) model.respond_to?(:id) ? model.id.to_s : model.to_s end |
.streaming?(model) ⇒ Boolean
75 |
# File 'lib/legion/extensions/llm/vertex/provider.rb', line 75 def streaming?(model) = chat?(model) |
.vision?(model) ⇒ Boolean
76 |
# File 'lib/legion/extensions/llm/vertex/provider.rb', line 76 def vision?(model) = model_id(model).match?(/gemini|claude|mistral|llama/) |