module RubyLLM::Providers::VertexAI::Models
Models methods for the Vertex AI integration
Constants
- KNOWN_GOOGLE_MODELS
-
Geminiand other Google models that arenβt returned by the API
Public Instance Methods
Source
# File lib/ruby_llm/providers/vertexai/models.rb, line 32 def list_models all_models = [] page_token = nil all_models.concat(build_known_models) loop do response = @connection.get('publishers/google/models') do |req| req.headers['x-goog-user-project'] = @config.vertexai_project_id req.params = { pageSize: 100 } req.params[:pageToken] = page_token if page_token end publisher_models = response.body['publisherModels'] || [] publisher_models.each do |model_data| next if model_data['launchStage'] == 'DEPRECATED' model_id = extract_model_id_from_path(model_data['name']) all_models << build_model_from_api_data(model_data, model_id) end page_token = response.body['nextPageToken'] break unless page_token end all_models rescue StandardError => e RubyLLM.logger.debug { "Error fetching Vertex AI models: #{e.message}" } build_known_models end