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
68 |
# File 'lib/legion/extensions/llm/vertex/provider.rb', line 68 def chat?(model) = !(model) |
.embeddings?(model) ⇒ Boolean
72 |
# File 'lib/legion/extensions/llm/vertex/provider.rb', line 72 def (model) = model_id(model).match?(/embedding|embed/) |
.functions?(model) ⇒ Boolean
71 |
# File 'lib/legion/extensions/llm/vertex/provider.rb', line 71 def functions?(model) = chat?(model) |
.model_id(model) ⇒ Object
74 75 76 77 78 |
# File 'lib/legion/extensions/llm/vertex/provider.rb', line 74 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
69 |
# File 'lib/legion/extensions/llm/vertex/provider.rb', line 69 def streaming?(model) = chat?(model) |
.vision?(model) ⇒ Boolean
70 |
# File 'lib/legion/extensions/llm/vertex/provider.rb', line 70 def vision?(model) = model_id(model).match?(/gemini|claude|mistral|llama/) |