google-apis-discoveryengine_v1 0.57.0 → 0.58.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.
@@ -8286,6 +8286,12 @@ module Google
8286
8286
  attr_accessor :enable_image_annotation
8287
8287
  alias_method :enable_image_annotation?, :enable_image_annotation
8288
8288
 
8289
+ # Optional. If true, the pdf layout will be refined using an LLM.
8290
+ # Corresponds to the JSON property `enableLlmLayoutParsing`
8291
+ # @return [Boolean]
8292
+ attr_accessor :enable_llm_layout_parsing
8293
+ alias_method :enable_llm_layout_parsing?, :enable_llm_layout_parsing
8294
+
8289
8295
  # Optional. If true, the LLM based annotation is added to the table during
8290
8296
  # parsing.
8291
8297
  # Corresponds to the JSON property `enableTableAnnotation`
@@ -8322,6 +8328,7 @@ module Google
8322
8328
  def update!(**args)
8323
8329
  @enable_get_processed_document = args[:enable_get_processed_document] if args.key?(:enable_get_processed_document)
8324
8330
  @enable_image_annotation = args[:enable_image_annotation] if args.key?(:enable_image_annotation)
8331
+ @enable_llm_layout_parsing = args[:enable_llm_layout_parsing] if args.key?(:enable_llm_layout_parsing)
8325
8332
  @enable_table_annotation = args[:enable_table_annotation] if args.key?(:enable_table_annotation)
8326
8333
  @exclude_html_classes = args[:exclude_html_classes] if args.key?(:exclude_html_classes)
8327
8334
  @exclude_html_elements = args[:exclude_html_elements] if args.key?(:exclude_html_elements)
@@ -8453,6 +8460,11 @@ module Google
8453
8460
  # @return [Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1EngineChatEngineMetadata]
8454
8461
  attr_accessor :chat_engine_metadata
8455
8462
 
8463
+ # Configurations used to enable CMEK data encryption with Cloud KMS keys.
8464
+ # Corresponds to the JSON property `cmekConfig`
8465
+ # @return [Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1CmekConfig]
8466
+ attr_accessor :cmek_config
8467
+
8456
8468
  # Common configurations for an Engine.
8457
8469
  # Corresponds to the JSON property `commonConfig`
8458
8470
  # @return [Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1EngineCommonConfig]
@@ -8514,6 +8526,17 @@ module Google
8514
8526
  # @return [Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1EngineMediaRecommendationEngineConfig]
8515
8527
  attr_accessor :media_recommendation_engine_config
8516
8528
 
8529
+ # Optional. Maps a model name to its specific configuration for this engine.
8530
+ # This allows admin users to turn on/off individual models. This only stores
8531
+ # models whose states are overridden by the admin. When the state is unspecified,
8532
+ # or model_configs is empty for this model, the system will decide if this
8533
+ # model should be available or not based on the default configuration. For
8534
+ # example, a preview model should be disabled by default if the admin has not
8535
+ # chosen to enable it.
8536
+ # Corresponds to the JSON property `modelConfigs`
8537
+ # @return [Hash<String,String>]
8538
+ attr_accessor :model_configs
8539
+
8517
8540
  # Immutable. Identifier. The fully qualified resource name of the engine. This
8518
8541
  # field must be a UTF-8 encoded string with a length limit of 1024 characters.
8519
8542
  # Format: `projects/`project`/locations/`location`/collections/`collection`/
@@ -8547,6 +8570,7 @@ module Google
8547
8570
  @app_type = args[:app_type] if args.key?(:app_type)
8548
8571
  @chat_engine_config = args[:chat_engine_config] if args.key?(:chat_engine_config)
8549
8572
  @chat_engine_metadata = args[:chat_engine_metadata] if args.key?(:chat_engine_metadata)
8573
+ @cmek_config = args[:cmek_config] if args.key?(:cmek_config)
8550
8574
  @common_config = args[:common_config] if args.key?(:common_config)
8551
8575
  @configurable_billing_approach = args[:configurable_billing_approach] if args.key?(:configurable_billing_approach)
8552
8576
  @create_time = args[:create_time] if args.key?(:create_time)
@@ -8556,6 +8580,7 @@ module Google
8556
8580
  @features = args[:features] if args.key?(:features)
8557
8581
  @industry_vertical = args[:industry_vertical] if args.key?(:industry_vertical)
8558
8582
  @media_recommendation_engine_config = args[:media_recommendation_engine_config] if args.key?(:media_recommendation_engine_config)
8583
+ @model_configs = args[:model_configs] if args.key?(:model_configs)
8559
8584
  @name = args[:name] if args.key?(:name)
8560
8585
  @search_engine_config = args[:search_engine_config] if args.key?(:search_engine_config)
8561
8586
  @solution_type = args[:solution_type] if args.key?(:solution_type)
@@ -10179,6 +10204,31 @@ module Google
10179
10204
  end
10180
10205
  end
10181
10206
 
10207
+ # Stats about users' licenses.
10208
+ class GoogleCloudDiscoveryengineV1LicenseConfigUsageStats
10209
+ include Google::Apis::Core::Hashable
10210
+
10211
+ # Required. The LicenseConfig name.
10212
+ # Corresponds to the JSON property `licenseConfig`
10213
+ # @return [String]
10214
+ attr_accessor :license_config
10215
+
10216
+ # Required. The number of licenses used.
10217
+ # Corresponds to the JSON property `usedLicenseCount`
10218
+ # @return [Fixnum]
10219
+ attr_accessor :used_license_count
10220
+
10221
+ def initialize(**args)
10222
+ update!(**args)
10223
+ end
10224
+
10225
+ # Update properties of this object
10226
+ def update!(**args)
10227
+ @license_config = args[:license_config] if args.key?(:license_config)
10228
+ @used_license_count = args[:used_license_count] if args.key?(:used_license_count)
10229
+ end
10230
+ end
10231
+
10182
10232
  # Response message for CmekConfigService.ListCmekConfigs method.
10183
10233
  class GoogleCloudDiscoveryengineV1ListCmekConfigsResponse
10184
10234
  include Google::Apis::Core::Hashable
@@ -10396,6 +10446,25 @@ module Google
10396
10446
  end
10397
10447
  end
10398
10448
 
10449
+ # Response message for UserLicenseService.ListLicenseConfigUsageStats method.
10450
+ class GoogleCloudDiscoveryengineV1ListLicenseConfigsUsageStatsResponse
10451
+ include Google::Apis::Core::Hashable
10452
+
10453
+ # All the customer's LicenseConfigUsageStats.
10454
+ # Corresponds to the JSON property `licenseConfigUsageStats`
10455
+ # @return [Array<Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1LicenseConfigUsageStats>]
10456
+ attr_accessor :license_config_usage_stats
10457
+
10458
+ def initialize(**args)
10459
+ update!(**args)
10460
+ end
10461
+
10462
+ # Update properties of this object
10463
+ def update!(**args)
10464
+ @license_config_usage_stats = args[:license_config_usage_stats] if args.key?(:license_config_usage_stats)
10465
+ end
10466
+ end
10467
+
10399
10468
  # Response message for SchemaService.ListSchemas method.
10400
10469
  class GoogleCloudDiscoveryengineV1ListSchemasResponse
10401
10470
  include Google::Apis::Core::Hashable
@@ -15295,29 +15364,848 @@ module Google
15295
15364
  # @return [Array<String>]
15296
15365
  attr_accessor :tag_ids
15297
15366
 
15298
- # A transaction represents the entire purchase transaction.
15299
- # Corresponds to the JSON property `transactionInfo`
15300
- # @return [Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1TransactionInfo]
15301
- attr_accessor :transaction_info
15367
+ # A transaction represents the entire purchase transaction.
15368
+ # Corresponds to the JSON property `transactionInfo`
15369
+ # @return [Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1TransactionInfo]
15370
+ attr_accessor :transaction_info
15371
+
15372
+ # Information of an end user.
15373
+ # Corresponds to the JSON property `userInfo`
15374
+ # @return [Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1UserInfo]
15375
+ attr_accessor :user_info
15376
+
15377
+ # Required. A unique identifier for tracking visitors. For example, this could
15378
+ # be implemented with an HTTP cookie, which should be able to uniquely identify
15379
+ # a visitor on a single device. This unique identifier should not change if the
15380
+ # visitor log in/out of the website. Do not set the field to the same fixed ID
15381
+ # for different users. This mixes the event history of those users together,
15382
+ # which results in degraded model quality. The field must be a UTF-8 encoded
15383
+ # string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT`
15384
+ # error is returned. The field should not contain PII or user-data. We recommend
15385
+ # to use Google Analytics [Client ID](https://developers.google.com/analytics/
15386
+ # devguides/collection/analyticsjs/field-reference#clientId) for this field.
15387
+ # Corresponds to the JSON property `userPseudoId`
15388
+ # @return [String]
15389
+ attr_accessor :user_pseudo_id
15390
+
15391
+ def initialize(**args)
15392
+ update!(**args)
15393
+ end
15394
+
15395
+ # Update properties of this object
15396
+ def update!(**args)
15397
+ @attributes = args[:attributes] if args.key?(:attributes)
15398
+ @attribution_token = args[:attribution_token] if args.key?(:attribution_token)
15399
+ @completion_info = args[:completion_info] if args.key?(:completion_info)
15400
+ @conversion_type = args[:conversion_type] if args.key?(:conversion_type)
15401
+ @data_store = args[:data_store] if args.key?(:data_store)
15402
+ @direct_user_request = args[:direct_user_request] if args.key?(:direct_user_request)
15403
+ @documents = args[:documents] if args.key?(:documents)
15404
+ @engine = args[:engine] if args.key?(:engine)
15405
+ @event_time = args[:event_time] if args.key?(:event_time)
15406
+ @event_type = args[:event_type] if args.key?(:event_type)
15407
+ @filter = args[:filter] if args.key?(:filter)
15408
+ @media_info = args[:media_info] if args.key?(:media_info)
15409
+ @page_info = args[:page_info] if args.key?(:page_info)
15410
+ @panel = args[:panel] if args.key?(:panel)
15411
+ @panels = args[:panels] if args.key?(:panels)
15412
+ @promotion_ids = args[:promotion_ids] if args.key?(:promotion_ids)
15413
+ @search_info = args[:search_info] if args.key?(:search_info)
15414
+ @session_id = args[:session_id] if args.key?(:session_id)
15415
+ @tag_ids = args[:tag_ids] if args.key?(:tag_ids)
15416
+ @transaction_info = args[:transaction_info] if args.key?(:transaction_info)
15417
+ @user_info = args[:user_info] if args.key?(:user_info)
15418
+ @user_pseudo_id = args[:user_pseudo_id] if args.key?(:user_pseudo_id)
15419
+ end
15420
+ end
15421
+
15422
+ # Information of an end user.
15423
+ class GoogleCloudDiscoveryengineV1UserInfo
15424
+ include Google::Apis::Core::Hashable
15425
+
15426
+ # Optional. IANA time zone, e.g. Europe/Budapest.
15427
+ # Corresponds to the JSON property `timeZone`
15428
+ # @return [String]
15429
+ attr_accessor :time_zone
15430
+
15431
+ # User agent as included in the HTTP header. The field must be a UTF-8 encoded
15432
+ # string with a length limit of 1,000 characters. Otherwise, an `
15433
+ # INVALID_ARGUMENT` error is returned. This should not be set when using the
15434
+ # client side event reporting with GTM or JavaScript tag in UserEventService.
15435
+ # CollectUserEvent or if UserEvent.direct_user_request is set.
15436
+ # Corresponds to the JSON property `userAgent`
15437
+ # @return [String]
15438
+ attr_accessor :user_agent
15439
+
15440
+ # Highly recommended for logged-in users. Unique identifier for logged-in user,
15441
+ # such as a user name. Don't set for anonymous users. Always use a hashed value
15442
+ # for this ID. Don't set the field to the same fixed ID for different users.
15443
+ # This mixes the event history of those users together, which results in
15444
+ # degraded model quality. The field must be a UTF-8 encoded string with a length
15445
+ # limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned.
15446
+ # Corresponds to the JSON property `userId`
15447
+ # @return [String]
15448
+ attr_accessor :user_id
15449
+
15450
+ def initialize(**args)
15451
+ update!(**args)
15452
+ end
15453
+
15454
+ # Update properties of this object
15455
+ def update!(**args)
15456
+ @time_zone = args[:time_zone] if args.key?(:time_zone)
15457
+ @user_agent = args[:user_agent] if args.key?(:user_agent)
15458
+ @user_id = args[:user_id] if args.key?(:user_id)
15459
+ end
15460
+ end
15461
+
15462
+ # User License information assigned by the admin.
15463
+ class GoogleCloudDiscoveryengineV1UserLicense
15464
+ include Google::Apis::Core::Hashable
15465
+
15466
+ # Output only. User created timestamp.
15467
+ # Corresponds to the JSON property `createTime`
15468
+ # @return [String]
15469
+ attr_accessor :create_time
15470
+
15471
+ # Output only. User last logged in time. If the user has not logged in yet, this
15472
+ # field will be empty.
15473
+ # Corresponds to the JSON property `lastLoginTime`
15474
+ # @return [String]
15475
+ attr_accessor :last_login_time
15476
+
15477
+ # Output only. License assignment state of the user. If the user is assigned
15478
+ # with a license config, the user login will be assigned with the license; If
15479
+ # the user's license assignment state is unassigned or unspecified, no license
15480
+ # config will be associated to the user;
15481
+ # Corresponds to the JSON property `licenseAssignmentState`
15482
+ # @return [String]
15483
+ attr_accessor :license_assignment_state
15484
+
15485
+ # Optional. The full resource name of the Subscription(LicenseConfig) assigned
15486
+ # to the user.
15487
+ # Corresponds to the JSON property `licenseConfig`
15488
+ # @return [String]
15489
+ attr_accessor :license_config
15490
+
15491
+ # Output only. User update timestamp.
15492
+ # Corresponds to the JSON property `updateTime`
15493
+ # @return [String]
15494
+ attr_accessor :update_time
15495
+
15496
+ # Required. Immutable. The user principal of the User, could be email address or
15497
+ # other prinical identifier. This field is immutable. Admin assign licenses
15498
+ # based on the user principal.
15499
+ # Corresponds to the JSON property `userPrincipal`
15500
+ # @return [String]
15501
+ attr_accessor :user_principal
15502
+
15503
+ # Optional. The user profile. We user user full name(First name + Last name) as
15504
+ # user profile.
15505
+ # Corresponds to the JSON property `userProfile`
15506
+ # @return [String]
15507
+ attr_accessor :user_profile
15508
+
15509
+ def initialize(**args)
15510
+ update!(**args)
15511
+ end
15512
+
15513
+ # Update properties of this object
15514
+ def update!(**args)
15515
+ @create_time = args[:create_time] if args.key?(:create_time)
15516
+ @last_login_time = args[:last_login_time] if args.key?(:last_login_time)
15517
+ @license_assignment_state = args[:license_assignment_state] if args.key?(:license_assignment_state)
15518
+ @license_config = args[:license_config] if args.key?(:license_config)
15519
+ @update_time = args[:update_time] if args.key?(:update_time)
15520
+ @user_principal = args[:user_principal] if args.key?(:user_principal)
15521
+ @user_profile = args[:user_profile] if args.key?(:user_profile)
15522
+ end
15523
+ end
15524
+
15525
+ # Configures metadata that is used for End User entities.
15526
+ class GoogleCloudDiscoveryengineV1UserStore
15527
+ include Google::Apis::Core::Hashable
15528
+
15529
+ # Optional. The default subscription LicenseConfig for the UserStore, if
15530
+ # UserStore.enable_license_auto_register is true, new users will automatically
15531
+ # register under the default subscription. If default LicenseConfig doesn't have
15532
+ # remaining license seats left, new users will not be assigned with license and
15533
+ # will be blocked for Vertex AI Search features. This is used if `
15534
+ # license_assignment_tier_rules` is not configured.
15535
+ # Corresponds to the JSON property `defaultLicenseConfig`
15536
+ # @return [String]
15537
+ attr_accessor :default_license_config
15538
+
15539
+ # The display name of the User Store.
15540
+ # Corresponds to the JSON property `displayName`
15541
+ # @return [String]
15542
+ attr_accessor :display_name
15543
+
15544
+ # Optional. Whether to enable license auto update for users in this User Store.
15545
+ # If true, users with expired licenses will automatically be updated to use the
15546
+ # default license config as long as the default license config has seats left.
15547
+ # Corresponds to the JSON property `enableExpiredLicenseAutoUpdate`
15548
+ # @return [Boolean]
15549
+ attr_accessor :enable_expired_license_auto_update
15550
+ alias_method :enable_expired_license_auto_update?, :enable_expired_license_auto_update
15551
+
15552
+ # Optional. Whether to enable license auto register for users in this User Store.
15553
+ # If true, new users will automatically register under the default license
15554
+ # config as long as the default license config has seats left.
15555
+ # Corresponds to the JSON property `enableLicenseAutoRegister`
15556
+ # @return [Boolean]
15557
+ attr_accessor :enable_license_auto_register
15558
+ alias_method :enable_license_auto_register?, :enable_license_auto_register
15559
+
15560
+ # Immutable. The full resource name of the User Store, in the format of `
15561
+ # projects/`project`/locations/`location`/userStores/`user_store``. This field
15562
+ # must be a UTF-8 encoded string with a length limit of 1024 characters.
15563
+ # Corresponds to the JSON property `name`
15564
+ # @return [String]
15565
+ attr_accessor :name
15566
+
15567
+ def initialize(**args)
15568
+ update!(**args)
15569
+ end
15570
+
15571
+ # Update properties of this object
15572
+ def update!(**args)
15573
+ @default_license_config = args[:default_license_config] if args.key?(:default_license_config)
15574
+ @display_name = args[:display_name] if args.key?(:display_name)
15575
+ @enable_expired_license_auto_update = args[:enable_expired_license_auto_update] if args.key?(:enable_expired_license_auto_update)
15576
+ @enable_license_auto_register = args[:enable_license_auto_register] if args.key?(:enable_license_auto_register)
15577
+ @name = args[:name] if args.key?(:name)
15578
+ end
15579
+ end
15580
+
15581
+ # WidgetConfig captures configs at the Widget level.
15582
+ class GoogleCloudDiscoveryengineV1WidgetConfig
15583
+ include Google::Apis::Core::Hashable
15584
+
15585
+ # Describes widget access settings.
15586
+ # Corresponds to the JSON property `accessSettings`
15587
+ # @return [Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1WidgetConfigAccessSettings]
15588
+ attr_accessor :access_settings
15589
+
15590
+ # Whether allow no-auth integration with widget. If set true, public access to
15591
+ # search or other solutions from widget is allowed without authenication token
15592
+ # provided by customer hosted backend server.
15593
+ # Corresponds to the JSON property `allowPublicAccess`
15594
+ # @return [Boolean]
15595
+ attr_accessor :allow_public_access
15596
+ alias_method :allow_public_access?, :allow_public_access
15597
+
15598
+ # Allowlisted domains that can load this widget.
15599
+ # Corresponds to the JSON property `allowlistedDomains`
15600
+ # @return [Array<String>]
15601
+ attr_accessor :allowlisted_domains
15602
+
15603
+ # Describes the assistant settings of the widget.
15604
+ # Corresponds to the JSON property `assistantSettings`
15605
+ # @return [Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1WidgetConfigAssistantSettings]
15606
+ attr_accessor :assistant_settings
15607
+
15608
+ # Output only. Collection components that lists all collections and child data
15609
+ # stores associated with the widget config, those data sources can be used for
15610
+ # filtering in widget service APIs, users can return results that from selected
15611
+ # data sources.
15612
+ # Corresponds to the JSON property `collectionComponents`
15613
+ # @return [Array<Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1WidgetConfigCollectionComponent>]
15614
+ attr_accessor :collection_components
15615
+
15616
+ # Output only. Unique obfuscated identifier of a WidgetConfig.
15617
+ # Corresponds to the JSON property `configId`
15618
+ # @return [String]
15619
+ attr_accessor :config_id
15620
+
15621
+ # A specification for configuring the behavior of content search.
15622
+ # Corresponds to the JSON property `contentSearchSpec`
15623
+ # @return [Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1SearchRequestContentSearchSpec]
15624
+ attr_accessor :content_search_spec
15625
+
15626
+ # Output only. Timestamp the WidgetConfig was created.
15627
+ # Corresponds to the JSON property `createTime`
15628
+ # @return [String]
15629
+ attr_accessor :create_time
15630
+
15631
+ # Customer provided configurations.
15632
+ # Corresponds to the JSON property `customerProvidedConfig`
15633
+ # @return [Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1WidgetConfigCustomerProvidedConfig]
15634
+ attr_accessor :customer_provided_config
15635
+
15636
+ # Output only. The type of the parent data store.
15637
+ # Corresponds to the JSON property `dataStoreType`
15638
+ # @return [String]
15639
+ attr_accessor :data_store_type
15640
+
15641
+ # Configurable UI configurations per data store.
15642
+ # Corresponds to the JSON property `dataStoreUiConfigs`
15643
+ # @return [Array<Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1WidgetConfigDataStoreUiConfig>]
15644
+ attr_accessor :data_store_ui_configs
15645
+
15646
+ # The default ordering for search results if specified. Used to set
15647
+ # SearchRequest#order_by on applicable requests. https://cloud.google.com/
15648
+ # generative-ai-app-builder/docs/reference/rest/v1alpha/projects.locations.
15649
+ # dataStores.servingConfigs/search#request-body
15650
+ # Corresponds to the JSON property `defaultSearchRequestOrderBy`
15651
+ # @return [String]
15652
+ attr_accessor :default_search_request_order_by
15653
+
15654
+ # Required. The human readable widget config display name. Used in Discovery UI.
15655
+ # This field must be a UTF-8 encoded string with a length limit of 128
15656
+ # characters. Otherwise, an INVALID_ARGUMENT error is returned.
15657
+ # Corresponds to the JSON property `displayName`
15658
+ # @return [String]
15659
+ attr_accessor :display_name
15660
+
15661
+ # Whether or not to enable autocomplete.
15662
+ # Corresponds to the JSON property `enableAutocomplete`
15663
+ # @return [Boolean]
15664
+ attr_accessor :enable_autocomplete
15665
+ alias_method :enable_autocomplete?, :enable_autocomplete
15666
+
15667
+ # Whether to allow conversational search (LLM, multi-turn) or not (non-LLM,
15668
+ # single-turn).
15669
+ # Corresponds to the JSON property `enableConversationalSearch`
15670
+ # @return [Boolean]
15671
+ attr_accessor :enable_conversational_search
15672
+ alias_method :enable_conversational_search?, :enable_conversational_search
15673
+
15674
+ # Optional. Output only. Whether to enable private knowledge graph.
15675
+ # Corresponds to the JSON property `enablePrivateKnowledgeGraph`
15676
+ # @return [Boolean]
15677
+ attr_accessor :enable_private_knowledge_graph
15678
+ alias_method :enable_private_knowledge_graph?, :enable_private_knowledge_graph
15679
+
15680
+ # Turn on or off collecting the search result quality feedback from end users.
15681
+ # Corresponds to the JSON property `enableQualityFeedback`
15682
+ # @return [Boolean]
15683
+ attr_accessor :enable_quality_feedback
15684
+ alias_method :enable_quality_feedback?, :enable_quality_feedback
15685
+
15686
+ # Whether to show the result score.
15687
+ # Corresponds to the JSON property `enableResultScore`
15688
+ # @return [Boolean]
15689
+ attr_accessor :enable_result_score
15690
+ alias_method :enable_result_score?, :enable_result_score
15691
+
15692
+ # Whether to enable safe search.
15693
+ # Corresponds to the JSON property `enableSafeSearch`
15694
+ # @return [Boolean]
15695
+ attr_accessor :enable_safe_search
15696
+ alias_method :enable_safe_search?, :enable_safe_search
15697
+
15698
+ # Whether to enable search-as-you-type behavior for the search widget
15699
+ # Corresponds to the JSON property `enableSearchAsYouType`
15700
+ # @return [Boolean]
15701
+ attr_accessor :enable_search_as_you_type
15702
+ alias_method :enable_search_as_you_type?, :enable_search_as_you_type
15703
+
15704
+ # Turn on or off summary for each snippets result.
15705
+ # Corresponds to the JSON property `enableSnippetResultSummary`
15706
+ # @return [Boolean]
15707
+ attr_accessor :enable_snippet_result_summary
15708
+ alias_method :enable_snippet_result_summary?, :enable_snippet_result_summary
15709
+
15710
+ # Turn on or off summarization for the search response.
15711
+ # Corresponds to the JSON property `enableSummarization`
15712
+ # @return [Boolean]
15713
+ attr_accessor :enable_summarization
15714
+ alias_method :enable_summarization?, :enable_summarization
15715
+
15716
+ # Whether to enable standalone web app.
15717
+ # Corresponds to the JSON property `enableWebApp`
15718
+ # @return [Boolean]
15719
+ attr_accessor :enable_web_app
15720
+ alias_method :enable_web_app?, :enable_web_app
15721
+
15722
+ # The configuration and appearance of facets in the end user view.
15723
+ # Corresponds to the JSON property `facetField`
15724
+ # @return [Array<Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1WidgetConfigFacetField>]
15725
+ attr_accessor :facet_field
15726
+
15727
+ # The key is the UI component. Mock. Currently supported `title`, `thumbnail`, `
15728
+ # url`, `custom1`, `custom2`, `custom3`. The value is the name of the field
15729
+ # along with its device visibility. The 3 custom fields are optional and can be
15730
+ # added or removed. `title`, `thumbnail`, `url` are required UI components that
15731
+ # cannot be removed.
15732
+ # Corresponds to the JSON property `fieldsUiComponentsMap`
15733
+ # @return [Hash<String,Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1WidgetConfigUiComponentField>]
15734
+ attr_accessor :fields_ui_components_map
15735
+
15736
+ # Output only. Whether the subscription is gemini bundle or not.
15737
+ # Corresponds to the JSON property `geminiBundle`
15738
+ # @return [Boolean]
15739
+ attr_accessor :gemini_bundle
15740
+ alias_method :gemini_bundle?, :gemini_bundle
15741
+
15742
+ # Describes the homepage setting of the widget. It includes all homepage related
15743
+ # settings and configurations, such as shortcuts.
15744
+ # Corresponds to the JSON property `homepageSetting`
15745
+ # @return [Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1WidgetConfigHomepageSetting]
15746
+ attr_accessor :homepage_setting
15747
+
15748
+ # Output only. The industry vertical that the WidgetConfig registers. The
15749
+ # WidgetConfig industry vertical is based on the associated Engine.
15750
+ # Corresponds to the JSON property `industryVertical`
15751
+ # @return [String]
15752
+ attr_accessor :industry_vertical
15753
+
15754
+ # Output only. Whether LLM is enabled in the corresponding data store.
15755
+ # Corresponds to the JSON property `llmEnabled`
15756
+ # @return [Boolean]
15757
+ attr_accessor :llm_enabled
15758
+ alias_method :llm_enabled?, :llm_enabled
15759
+
15760
+ # Output only. Whether the customer accepted data use terms.
15761
+ # Corresponds to the JSON property `minimumDataTermAccepted`
15762
+ # @return [Boolean]
15763
+ attr_accessor :minimum_data_term_accepted
15764
+ alias_method :minimum_data_term_accepted?, :minimum_data_term_accepted
15765
+
15766
+ # Immutable. The full resource name of the widget config. Format: `projects/`
15767
+ # project`/locations/`location`/collections/`collection_id`/dataStores/`
15768
+ # data_store_id`/widgetConfigs/`widget_config_id``. This field must be a UTF-8
15769
+ # encoded string with a length limit of 1024 characters.
15770
+ # Corresponds to the JSON property `name`
15771
+ # @return [String]
15772
+ attr_accessor :name
15773
+
15774
+ # The type of snippet to display in UCS widget. -
15775
+ # RESULT_DISPLAY_TYPE_UNSPECIFIED for existing users. - SNIPPET for new non-
15776
+ # enterprise search users. - EXTRACTIVE_ANSWER for new enterprise search users.
15777
+ # Corresponds to the JSON property `resultDisplayType`
15778
+ # @return [String]
15779
+ attr_accessor :result_display_type
15780
+
15781
+ # Required. Immutable. Specifies the solution type that this WidgetConfig can be
15782
+ # used for.
15783
+ # Corresponds to the JSON property `solutionType`
15784
+ # @return [String]
15785
+ attr_accessor :solution_type
15786
+
15787
+ # Describes widget UI branding settings.
15788
+ # Corresponds to the JSON property `uiBranding`
15789
+ # @return [Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1WidgetConfigUiBrandingSettings]
15790
+ attr_accessor :ui_branding
15791
+
15792
+ # Describes general widget (or web app) UI settings as seen in the cloud console
15793
+ # UI configuration page.
15794
+ # Corresponds to the JSON property `uiSettings`
15795
+ # @return [Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1WidgetConfigUiSettings]
15796
+ attr_accessor :ui_settings
15797
+
15798
+ # Output only. Timestamp the WidgetConfig was updated.
15799
+ # Corresponds to the JSON property `updateTime`
15800
+ # @return [String]
15801
+ attr_accessor :update_time
15802
+
15803
+ def initialize(**args)
15804
+ update!(**args)
15805
+ end
15806
+
15807
+ # Update properties of this object
15808
+ def update!(**args)
15809
+ @access_settings = args[:access_settings] if args.key?(:access_settings)
15810
+ @allow_public_access = args[:allow_public_access] if args.key?(:allow_public_access)
15811
+ @allowlisted_domains = args[:allowlisted_domains] if args.key?(:allowlisted_domains)
15812
+ @assistant_settings = args[:assistant_settings] if args.key?(:assistant_settings)
15813
+ @collection_components = args[:collection_components] if args.key?(:collection_components)
15814
+ @config_id = args[:config_id] if args.key?(:config_id)
15815
+ @content_search_spec = args[:content_search_spec] if args.key?(:content_search_spec)
15816
+ @create_time = args[:create_time] if args.key?(:create_time)
15817
+ @customer_provided_config = args[:customer_provided_config] if args.key?(:customer_provided_config)
15818
+ @data_store_type = args[:data_store_type] if args.key?(:data_store_type)
15819
+ @data_store_ui_configs = args[:data_store_ui_configs] if args.key?(:data_store_ui_configs)
15820
+ @default_search_request_order_by = args[:default_search_request_order_by] if args.key?(:default_search_request_order_by)
15821
+ @display_name = args[:display_name] if args.key?(:display_name)
15822
+ @enable_autocomplete = args[:enable_autocomplete] if args.key?(:enable_autocomplete)
15823
+ @enable_conversational_search = args[:enable_conversational_search] if args.key?(:enable_conversational_search)
15824
+ @enable_private_knowledge_graph = args[:enable_private_knowledge_graph] if args.key?(:enable_private_knowledge_graph)
15825
+ @enable_quality_feedback = args[:enable_quality_feedback] if args.key?(:enable_quality_feedback)
15826
+ @enable_result_score = args[:enable_result_score] if args.key?(:enable_result_score)
15827
+ @enable_safe_search = args[:enable_safe_search] if args.key?(:enable_safe_search)
15828
+ @enable_search_as_you_type = args[:enable_search_as_you_type] if args.key?(:enable_search_as_you_type)
15829
+ @enable_snippet_result_summary = args[:enable_snippet_result_summary] if args.key?(:enable_snippet_result_summary)
15830
+ @enable_summarization = args[:enable_summarization] if args.key?(:enable_summarization)
15831
+ @enable_web_app = args[:enable_web_app] if args.key?(:enable_web_app)
15832
+ @facet_field = args[:facet_field] if args.key?(:facet_field)
15833
+ @fields_ui_components_map = args[:fields_ui_components_map] if args.key?(:fields_ui_components_map)
15834
+ @gemini_bundle = args[:gemini_bundle] if args.key?(:gemini_bundle)
15835
+ @homepage_setting = args[:homepage_setting] if args.key?(:homepage_setting)
15836
+ @industry_vertical = args[:industry_vertical] if args.key?(:industry_vertical)
15837
+ @llm_enabled = args[:llm_enabled] if args.key?(:llm_enabled)
15838
+ @minimum_data_term_accepted = args[:minimum_data_term_accepted] if args.key?(:minimum_data_term_accepted)
15839
+ @name = args[:name] if args.key?(:name)
15840
+ @result_display_type = args[:result_display_type] if args.key?(:result_display_type)
15841
+ @solution_type = args[:solution_type] if args.key?(:solution_type)
15842
+ @ui_branding = args[:ui_branding] if args.key?(:ui_branding)
15843
+ @ui_settings = args[:ui_settings] if args.key?(:ui_settings)
15844
+ @update_time = args[:update_time] if args.key?(:update_time)
15845
+ end
15846
+ end
15847
+
15848
+ # Describes widget access settings.
15849
+ class GoogleCloudDiscoveryengineV1WidgetConfigAccessSettings
15850
+ include Google::Apis::Core::Hashable
15851
+
15852
+ # Whether public unauthenticated access is allowed.
15853
+ # Corresponds to the JSON property `allowPublicAccess`
15854
+ # @return [Boolean]
15855
+ attr_accessor :allow_public_access
15856
+ alias_method :allow_public_access?, :allow_public_access
15857
+
15858
+ # List of domains that are allowed to integrate the search widget.
15859
+ # Corresponds to the JSON property `allowlistedDomains`
15860
+ # @return [Array<String>]
15861
+ attr_accessor :allowlisted_domains
15862
+
15863
+ # Whether web app access is enabled.
15864
+ # Corresponds to the JSON property `enableWebApp`
15865
+ # @return [Boolean]
15866
+ attr_accessor :enable_web_app
15867
+ alias_method :enable_web_app?, :enable_web_app
15868
+
15869
+ # Optional. Language code for user interface. Use language tags defined by [
15870
+ # BCP47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt). If unset, the default
15871
+ # language code is "en-US".
15872
+ # Corresponds to the JSON property `languageCode`
15873
+ # @return [String]
15874
+ attr_accessor :language_code
15875
+
15876
+ # Optional. The workforce identity pool provider used to access the widget.
15877
+ # Corresponds to the JSON property `workforceIdentityPoolProvider`
15878
+ # @return [String]
15879
+ attr_accessor :workforce_identity_pool_provider
15880
+
15881
+ def initialize(**args)
15882
+ update!(**args)
15883
+ end
15884
+
15885
+ # Update properties of this object
15886
+ def update!(**args)
15887
+ @allow_public_access = args[:allow_public_access] if args.key?(:allow_public_access)
15888
+ @allowlisted_domains = args[:allowlisted_domains] if args.key?(:allowlisted_domains)
15889
+ @enable_web_app = args[:enable_web_app] if args.key?(:enable_web_app)
15890
+ @language_code = args[:language_code] if args.key?(:language_code)
15891
+ @workforce_identity_pool_provider = args[:workforce_identity_pool_provider] if args.key?(:workforce_identity_pool_provider)
15892
+ end
15893
+ end
15894
+
15895
+ # Describes the assistant settings of the widget.
15896
+ class GoogleCloudDiscoveryengineV1WidgetConfigAssistantSettings
15897
+ include Google::Apis::Core::Hashable
15898
+
15899
+ # Output only. This field controls the default web grounding toggle for end
15900
+ # users if `web_grounding_type` is set to `WEB_GROUNDING_TYPE_GOOGLE_SEARCH` or `
15901
+ # WEB_GROUNDING_TYPE_ENTERPRISE_WEB_SEARCH`. By default, this field is set to
15902
+ # false. If `web_grounding_type` is `WEB_GROUNDING_TYPE_GOOGLE_SEARCH` or `
15903
+ # WEB_GROUNDING_TYPE_ENTERPRISE_WEB_SEARCH`, end users will have web grounding
15904
+ # enabled by default on UI. If true, grounding toggle will be disabled by
15905
+ # default on UI. End users can still enable web grounding in the UI if web
15906
+ # grounding is enabled.
15907
+ # Corresponds to the JSON property `defaultWebGroundingToggleOff`
15908
+ # @return [Boolean]
15909
+ attr_accessor :default_web_grounding_toggle_off
15910
+ alias_method :default_web_grounding_toggle_off?, :default_web_grounding_toggle_off
15911
+
15912
+ # Optional. Output only. Whether to disable user location context.
15913
+ # Corresponds to the JSON property `disableLocationContext`
15914
+ # @return [Boolean]
15915
+ attr_accessor :disable_location_context
15916
+ alias_method :disable_location_context?, :disable_location_context
15917
+
15918
+ # Whether or not the Google search grounding toggle is shown. Deprecated. Use
15919
+ # web_grounding_type instead.
15920
+ # Corresponds to the JSON property `googleSearchGroundingEnabled`
15921
+ # @return [Boolean]
15922
+ attr_accessor :google_search_grounding_enabled
15923
+ alias_method :google_search_grounding_enabled?, :google_search_grounding_enabled
15924
+
15925
+ # Optional. The type of web grounding to use.
15926
+ # Corresponds to the JSON property `webGroundingType`
15927
+ # @return [String]
15928
+ attr_accessor :web_grounding_type
15929
+
15930
+ def initialize(**args)
15931
+ update!(**args)
15932
+ end
15933
+
15934
+ # Update properties of this object
15935
+ def update!(**args)
15936
+ @default_web_grounding_toggle_off = args[:default_web_grounding_toggle_off] if args.key?(:default_web_grounding_toggle_off)
15937
+ @disable_location_context = args[:disable_location_context] if args.key?(:disable_location_context)
15938
+ @google_search_grounding_enabled = args[:google_search_grounding_enabled] if args.key?(:google_search_grounding_enabled)
15939
+ @web_grounding_type = args[:web_grounding_type] if args.key?(:web_grounding_type)
15940
+ end
15941
+ end
15942
+
15943
+ # Read-only collection component that contains data store collections fields
15944
+ # that may be used for filtering
15945
+ class GoogleCloudDiscoveryengineV1WidgetConfigCollectionComponent
15946
+ include Google::Apis::Core::Hashable
15947
+
15948
+ # Output only. The icon link of the connector source.
15949
+ # Corresponds to the JSON property `connectorIconLink`
15950
+ # @return [String]
15951
+ attr_accessor :connector_icon_link
15952
+
15953
+ # The name of the data source, retrieved from `Collection.data_connector.
15954
+ # data_source`.
15955
+ # Corresponds to the JSON property `dataSource`
15956
+ # @return [String]
15957
+ attr_accessor :data_source
15958
+
15959
+ # Output only. The display name of the data source.
15960
+ # Corresponds to the JSON property `dataSourceDisplayName`
15961
+ # @return [String]
15962
+ attr_accessor :data_source_display_name
15963
+
15964
+ # For the data store collection, list of the children data stores.
15965
+ # Corresponds to the JSON property `dataStoreComponents`
15966
+ # @return [Array<Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1WidgetConfigDataStoreComponent>]
15967
+ attr_accessor :data_store_components
15968
+
15969
+ # The display name of the collection.
15970
+ # Corresponds to the JSON property `displayName`
15971
+ # @return [String]
15972
+ attr_accessor :display_name
15973
+
15974
+ # Output only. the identifier of the collection, used for widget service. For
15975
+ # now it refers to collection_id, in the future we will migrate the field to
15976
+ # encrypted collection name UUID.
15977
+ # Corresponds to the JSON property `id`
15978
+ # @return [String]
15979
+ attr_accessor :id
15980
+
15981
+ # The name of the collection. It should be collection resource name. Format: `
15982
+ # projects/`project`/locations/`location`/collections/`collection_id``. For APIs
15983
+ # under WidgetService, such as WidgetService.LookUpWidgetConfig, the project
15984
+ # number and location part is erased in this field.
15985
+ # Corresponds to the JSON property `name`
15986
+ # @return [String]
15987
+ attr_accessor :name
15988
+
15989
+ def initialize(**args)
15990
+ update!(**args)
15991
+ end
15992
+
15993
+ # Update properties of this object
15994
+ def update!(**args)
15995
+ @connector_icon_link = args[:connector_icon_link] if args.key?(:connector_icon_link)
15996
+ @data_source = args[:data_source] if args.key?(:data_source)
15997
+ @data_source_display_name = args[:data_source_display_name] if args.key?(:data_source_display_name)
15998
+ @data_store_components = args[:data_store_components] if args.key?(:data_store_components)
15999
+ @display_name = args[:display_name] if args.key?(:display_name)
16000
+ @id = args[:id] if args.key?(:id)
16001
+ @name = args[:name] if args.key?(:name)
16002
+ end
16003
+ end
16004
+
16005
+ # Customer provided configurations.
16006
+ class GoogleCloudDiscoveryengineV1WidgetConfigCustomerProvidedConfig
16007
+ include Google::Apis::Core::Hashable
16008
+
16009
+ # Customer type.
16010
+ # Corresponds to the JSON property `customerType`
16011
+ # @return [String]
16012
+ attr_accessor :customer_type
16013
+
16014
+ def initialize(**args)
16015
+ update!(**args)
16016
+ end
16017
+
16018
+ # Update properties of this object
16019
+ def update!(**args)
16020
+ @customer_type = args[:customer_type] if args.key?(:customer_type)
16021
+ end
16022
+ end
16023
+
16024
+ # Read-only data store component that contains data stores fields that may be
16025
+ # used for filtering, it's the child of `CollectionComponent`.
16026
+ class GoogleCloudDiscoveryengineV1WidgetConfigDataStoreComponent
16027
+ include Google::Apis::Core::Hashable
16028
+
16029
+ # Output only. The type of the data store config.
16030
+ # Corresponds to the JSON property `dataStoreConfigType`
16031
+ # @return [String]
16032
+ attr_accessor :data_store_config_type
16033
+
16034
+ # The display name of the data store.
16035
+ # Corresponds to the JSON property `displayName`
16036
+ # @return [String]
16037
+ attr_accessor :display_name
16038
+
16039
+ # The name of the entity, retrieved from `Collection.data_connector.entities.
16040
+ # entityName`.
16041
+ # Corresponds to the JSON property `entityName`
16042
+ # @return [String]
16043
+ attr_accessor :entity_name
16044
+
16045
+ # Output only. the identifier of the data store, used for widget service. For
16046
+ # now it refers to data_store_id, in the future we will migrate the field to
16047
+ # encrypted data store name UUID.
16048
+ # Corresponds to the JSON property `id`
16049
+ # @return [String]
16050
+ attr_accessor :id
16051
+
16052
+ # The name of the data store. It should be data store resource name Format: `
16053
+ # projects/`project`/locations/`location`/collections/`collection_id`/dataStores/
16054
+ # `data_store_id``. For APIs under WidgetService, such as WidgetService.
16055
+ # LookUpWidgetConfig, the project number and location part is erased in this
16056
+ # field.
16057
+ # Corresponds to the JSON property `name`
16058
+ # @return [String]
16059
+ attr_accessor :name
16060
+
16061
+ def initialize(**args)
16062
+ update!(**args)
16063
+ end
16064
+
16065
+ # Update properties of this object
16066
+ def update!(**args)
16067
+ @data_store_config_type = args[:data_store_config_type] if args.key?(:data_store_config_type)
16068
+ @display_name = args[:display_name] if args.key?(:display_name)
16069
+ @entity_name = args[:entity_name] if args.key?(:entity_name)
16070
+ @id = args[:id] if args.key?(:id)
16071
+ @name = args[:name] if args.key?(:name)
16072
+ end
16073
+ end
16074
+
16075
+ # UI component configuration for data store.
16076
+ class GoogleCloudDiscoveryengineV1WidgetConfigDataStoreUiConfig
16077
+ include Google::Apis::Core::Hashable
16078
+
16079
+ # Facet fields that store the mapping of fields to end user widget appearance.
16080
+ # Corresponds to the JSON property `facetField`
16081
+ # @return [Array<Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1WidgetConfigFacetField>]
16082
+ attr_accessor :facet_field
16083
+
16084
+ # The key is the UI component. Mock. Currently supported `title`, `thumbnail`, `
16085
+ # url`, `custom1`, `custom2`, `custom3`. The value is the name of the field
16086
+ # along with its device visibility. The 3 custom fields are optional and can be
16087
+ # added or removed. `title`, `thumbnail`, `url` are required UI components that
16088
+ # cannot be removed.
16089
+ # Corresponds to the JSON property `fieldsUiComponentsMap`
16090
+ # @return [Hash<String,Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1WidgetConfigUiComponentField>]
16091
+ attr_accessor :fields_ui_components_map
16092
+
16093
+ # Output only. the identifier of the data store, used for widget service. For
16094
+ # now it refers to data_store_id, in the future we will migrate the field to
16095
+ # encrypted data store name UUID.
16096
+ # Corresponds to the JSON property `id`
16097
+ # @return [String]
16098
+ attr_accessor :id
16099
+
16100
+ # The name of the data store. It should be data store resource name Format: `
16101
+ # projects/`project`/locations/`location`/collections/`collection_id`/dataStores/
16102
+ # `data_store_id``. For APIs under WidgetService, such as WidgetService.
16103
+ # LookUpWidgetConfig, the project number and location part is erased in this
16104
+ # field.
16105
+ # Corresponds to the JSON property `name`
16106
+ # @return [String]
16107
+ attr_accessor :name
16108
+
16109
+ def initialize(**args)
16110
+ update!(**args)
16111
+ end
16112
+
16113
+ # Update properties of this object
16114
+ def update!(**args)
16115
+ @facet_field = args[:facet_field] if args.key?(:facet_field)
16116
+ @fields_ui_components_map = args[:fields_ui_components_map] if args.key?(:fields_ui_components_map)
16117
+ @id = args[:id] if args.key?(:id)
16118
+ @name = args[:name] if args.key?(:name)
16119
+ end
16120
+ end
16121
+
16122
+ # Facet fields that store the mapping of fields to end user widget appearance.
16123
+ class GoogleCloudDiscoveryengineV1WidgetConfigFacetField
16124
+ include Google::Apis::Core::Hashable
16125
+
16126
+ # Optional. The field name that end users will see.
16127
+ # Corresponds to the JSON property `displayName`
16128
+ # @return [String]
16129
+ attr_accessor :display_name
16130
+
16131
+ # Required. Registered field name. The format is `field.abc`.
16132
+ # Corresponds to the JSON property `field`
16133
+ # @return [String]
16134
+ attr_accessor :field
16135
+
16136
+ def initialize(**args)
16137
+ update!(**args)
16138
+ end
16139
+
16140
+ # Update properties of this object
16141
+ def update!(**args)
16142
+ @display_name = args[:display_name] if args.key?(:display_name)
16143
+ @field = args[:field] if args.key?(:field)
16144
+ end
16145
+ end
16146
+
16147
+ # Describes the homepage setting of the widget. It includes all homepage related
16148
+ # settings and configurations, such as shortcuts.
16149
+ class GoogleCloudDiscoveryengineV1WidgetConfigHomepageSetting
16150
+ include Google::Apis::Core::Hashable
16151
+
16152
+ # Optional. The shortcuts to display on the homepage.
16153
+ # Corresponds to the JSON property `shortcuts`
16154
+ # @return [Array<Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1WidgetConfigHomepageSettingShortcut>]
16155
+ attr_accessor :shortcuts
16156
+
16157
+ def initialize(**args)
16158
+ update!(**args)
16159
+ end
16160
+
16161
+ # Update properties of this object
16162
+ def update!(**args)
16163
+ @shortcuts = args[:shortcuts] if args.key?(:shortcuts)
16164
+ end
16165
+ end
16166
+
16167
+ # Describes an entity of shortcut (aka pinned content) on the homepage. The home
16168
+ # page will render these shortcuts in the same order as what the API returns. If
16169
+ # a customer wants to reorder or remove a shortcut, the UI should always provide
16170
+ # the new full list of shortcuts.
16171
+ class GoogleCloudDiscoveryengineV1WidgetConfigHomepageSettingShortcut
16172
+ include Google::Apis::Core::Hashable
16173
+
16174
+ # Optional. Destination URL of shortcut.
16175
+ # Corresponds to the JSON property `destinationUri`
16176
+ # @return [String]
16177
+ attr_accessor :destination_uri
16178
+
16179
+ # Options to store an image.
16180
+ # Corresponds to the JSON property `icon`
16181
+ # @return [Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1WidgetConfigImage]
16182
+ attr_accessor :icon
16183
+
16184
+ # Optional. Title of the shortcut.
16185
+ # Corresponds to the JSON property `title`
16186
+ # @return [String]
16187
+ attr_accessor :title
16188
+
16189
+ def initialize(**args)
16190
+ update!(**args)
16191
+ end
16192
+
16193
+ # Update properties of this object
16194
+ def update!(**args)
16195
+ @destination_uri = args[:destination_uri] if args.key?(:destination_uri)
16196
+ @icon = args[:icon] if args.key?(:icon)
16197
+ @title = args[:title] if args.key?(:title)
16198
+ end
16199
+ end
15302
16200
 
15303
- # Information of an end user.
15304
- # Corresponds to the JSON property `userInfo`
15305
- # @return [Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1UserInfo]
15306
- attr_accessor :user_info
16201
+ # Options to store an image.
16202
+ class GoogleCloudDiscoveryengineV1WidgetConfigImage
16203
+ include Google::Apis::Core::Hashable
15307
16204
 
15308
- # Required. A unique identifier for tracking visitors. For example, this could
15309
- # be implemented with an HTTP cookie, which should be able to uniquely identify
15310
- # a visitor on a single device. This unique identifier should not change if the
15311
- # visitor log in/out of the website. Do not set the field to the same fixed ID
15312
- # for different users. This mixes the event history of those users together,
15313
- # which results in degraded model quality. The field must be a UTF-8 encoded
15314
- # string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT`
15315
- # error is returned. The field should not contain PII or user-data. We recommend
15316
- # to use Google Analytics [Client ID](https://developers.google.com/analytics/
15317
- # devguides/collection/analyticsjs/field-reference#clientId) for this field.
15318
- # Corresponds to the JSON property `userPseudoId`
16205
+ # Image URL.
16206
+ # Corresponds to the JSON property `url`
15319
16207
  # @return [String]
15320
- attr_accessor :user_pseudo_id
16208
+ attr_accessor :url
15321
16209
 
15322
16210
  def initialize(**args)
15323
16211
  update!(**args)
@@ -15325,58 +16213,29 @@ module Google
15325
16213
 
15326
16214
  # Update properties of this object
15327
16215
  def update!(**args)
15328
- @attributes = args[:attributes] if args.key?(:attributes)
15329
- @attribution_token = args[:attribution_token] if args.key?(:attribution_token)
15330
- @completion_info = args[:completion_info] if args.key?(:completion_info)
15331
- @conversion_type = args[:conversion_type] if args.key?(:conversion_type)
15332
- @data_store = args[:data_store] if args.key?(:data_store)
15333
- @direct_user_request = args[:direct_user_request] if args.key?(:direct_user_request)
15334
- @documents = args[:documents] if args.key?(:documents)
15335
- @engine = args[:engine] if args.key?(:engine)
15336
- @event_time = args[:event_time] if args.key?(:event_time)
15337
- @event_type = args[:event_type] if args.key?(:event_type)
15338
- @filter = args[:filter] if args.key?(:filter)
15339
- @media_info = args[:media_info] if args.key?(:media_info)
15340
- @page_info = args[:page_info] if args.key?(:page_info)
15341
- @panel = args[:panel] if args.key?(:panel)
15342
- @panels = args[:panels] if args.key?(:panels)
15343
- @promotion_ids = args[:promotion_ids] if args.key?(:promotion_ids)
15344
- @search_info = args[:search_info] if args.key?(:search_info)
15345
- @session_id = args[:session_id] if args.key?(:session_id)
15346
- @tag_ids = args[:tag_ids] if args.key?(:tag_ids)
15347
- @transaction_info = args[:transaction_info] if args.key?(:transaction_info)
15348
- @user_info = args[:user_info] if args.key?(:user_info)
15349
- @user_pseudo_id = args[:user_pseudo_id] if args.key?(:user_pseudo_id)
16216
+ @url = args[:url] if args.key?(:url)
15350
16217
  end
15351
16218
  end
15352
16219
 
15353
- # Information of an end user.
15354
- class GoogleCloudDiscoveryengineV1UserInfo
16220
+ # Facet field that maps to a UI Component.
16221
+ class GoogleCloudDiscoveryengineV1WidgetConfigUiComponentField
15355
16222
  include Google::Apis::Core::Hashable
15356
16223
 
15357
- # Optional. IANA time zone, e.g. Europe/Budapest.
15358
- # Corresponds to the JSON property `timeZone`
15359
- # @return [String]
15360
- attr_accessor :time_zone
16224
+ # The field visibility on different types of devices.
16225
+ # Corresponds to the JSON property `deviceVisibility`
16226
+ # @return [Array<String>]
16227
+ attr_accessor :device_visibility
15361
16228
 
15362
- # User agent as included in the HTTP header. The field must be a UTF-8 encoded
15363
- # string with a length limit of 1,000 characters. Otherwise, an `
15364
- # INVALID_ARGUMENT` error is returned. This should not be set when using the
15365
- # client side event reporting with GTM or JavaScript tag in UserEventService.
15366
- # CollectUserEvent or if UserEvent.direct_user_request is set.
15367
- # Corresponds to the JSON property `userAgent`
16229
+ # The template to customize how the field is displayed. An example value would
16230
+ # be a string that looks like: "Price: `value`".
16231
+ # Corresponds to the JSON property `displayTemplate`
15368
16232
  # @return [String]
15369
- attr_accessor :user_agent
16233
+ attr_accessor :display_template
15370
16234
 
15371
- # Highly recommended for logged-in users. Unique identifier for logged-in user,
15372
- # such as a user name. Don't set for anonymous users. Always use a hashed value
15373
- # for this ID. Don't set the field to the same fixed ID for different users.
15374
- # This mixes the event history of those users together, which results in
15375
- # degraded model quality. The field must be a UTF-8 encoded string with a length
15376
- # limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned.
15377
- # Corresponds to the JSON property `userId`
16235
+ # Required. Registered field name. The format is `field.abc`.
16236
+ # Corresponds to the JSON property `field`
15378
16237
  # @return [String]
15379
- attr_accessor :user_id
16238
+ attr_accessor :field
15380
16239
 
15381
16240
  def initialize(**args)
15382
16241
  update!(**args)
@@ -15384,58 +16243,135 @@ module Google
15384
16243
 
15385
16244
  # Update properties of this object
15386
16245
  def update!(**args)
15387
- @time_zone = args[:time_zone] if args.key?(:time_zone)
15388
- @user_agent = args[:user_agent] if args.key?(:user_agent)
15389
- @user_id = args[:user_id] if args.key?(:user_id)
16246
+ @device_visibility = args[:device_visibility] if args.key?(:device_visibility)
16247
+ @display_template = args[:display_template] if args.key?(:display_template)
16248
+ @field = args[:field] if args.key?(:field)
15390
16249
  end
15391
16250
  end
15392
16251
 
15393
- # User License information assigned by the admin.
15394
- class GoogleCloudDiscoveryengineV1UserLicense
16252
+ # Describes widget UI branding settings.
16253
+ class GoogleCloudDiscoveryengineV1WidgetConfigUiBrandingSettings
15395
16254
  include Google::Apis::Core::Hashable
15396
16255
 
15397
- # Output only. User created timestamp.
15398
- # Corresponds to the JSON property `createTime`
15399
- # @return [String]
15400
- attr_accessor :create_time
16256
+ # Options to store an image.
16257
+ # Corresponds to the JSON property `logo`
16258
+ # @return [Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1WidgetConfigImage]
16259
+ attr_accessor :logo
15401
16260
 
15402
- # Output only. User last logged in time. If the user has not logged in yet, this
15403
- # field will be empty.
15404
- # Corresponds to the JSON property `lastLoginTime`
15405
- # @return [String]
15406
- attr_accessor :last_login_time
16261
+ def initialize(**args)
16262
+ update!(**args)
16263
+ end
15407
16264
 
15408
- # Output only. License assignment state of the user. If the user is assigned
15409
- # with a license config, the user login will be assigned with the license; If
15410
- # the user's license assignment state is unassigned or unspecified, no license
15411
- # config will be associated to the user;
15412
- # Corresponds to the JSON property `licenseAssignmentState`
15413
- # @return [String]
15414
- attr_accessor :license_assignment_state
16265
+ # Update properties of this object
16266
+ def update!(**args)
16267
+ @logo = args[:logo] if args.key?(:logo)
16268
+ end
16269
+ end
15415
16270
 
15416
- # Optional. The full resource name of the Subscription(LicenseConfig) assigned
15417
- # to the user.
15418
- # Corresponds to the JSON property `licenseConfig`
15419
- # @return [String]
15420
- attr_accessor :license_config
16271
+ # Describes general widget (or web app) UI settings as seen in the cloud console
16272
+ # UI configuration page.
16273
+ class GoogleCloudDiscoveryengineV1WidgetConfigUiSettings
16274
+ include Google::Apis::Core::Hashable
15421
16275
 
15422
- # Output only. User update timestamp.
15423
- # Corresponds to the JSON property `updateTime`
16276
+ # Per data store configuration.
16277
+ # Corresponds to the JSON property `dataStoreUiConfigs`
16278
+ # @return [Array<Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1WidgetConfigDataStoreUiConfig>]
16279
+ attr_accessor :data_store_ui_configs
16280
+
16281
+ # The default ordering for search results if specified. Used to set
16282
+ # SearchRequest#order_by on applicable requests. https://cloud.google.com/
16283
+ # generative-ai-app-builder/docs/reference/rest/v1alpha/projects.locations.
16284
+ # dataStores.servingConfigs/search#request-body
16285
+ # Corresponds to the JSON property `defaultSearchRequestOrderBy`
15424
16286
  # @return [String]
15425
- attr_accessor :update_time
16287
+ attr_accessor :default_search_request_order_by
15426
16288
 
15427
- # Required. Immutable. The user principal of the User, could be email address or
15428
- # other prinical identifier. This field is immutable. Admin assign licenses
15429
- # based on the user principal.
15430
- # Corresponds to the JSON property `userPrincipal`
16289
+ # If set to true, the widget will not collect user events.
16290
+ # Corresponds to the JSON property `disableUserEventsCollection`
16291
+ # @return [Boolean]
16292
+ attr_accessor :disable_user_events_collection
16293
+ alias_method :disable_user_events_collection?, :disable_user_events_collection
16294
+
16295
+ # Whether or not to enable autocomplete.
16296
+ # Corresponds to the JSON property `enableAutocomplete`
16297
+ # @return [Boolean]
16298
+ attr_accessor :enable_autocomplete
16299
+ alias_method :enable_autocomplete?, :enable_autocomplete
16300
+
16301
+ # Optional. If set to true, the widget will enable the create agent button.
16302
+ # Corresponds to the JSON property `enableCreateAgentButton`
16303
+ # @return [Boolean]
16304
+ attr_accessor :enable_create_agent_button
16305
+ alias_method :enable_create_agent_button?, :enable_create_agent_button
16306
+
16307
+ # Optional. If set to true, the widget will enable people search.
16308
+ # Corresponds to the JSON property `enablePeopleSearch`
16309
+ # @return [Boolean]
16310
+ attr_accessor :enable_people_search
16311
+ alias_method :enable_people_search?, :enable_people_search
16312
+
16313
+ # Turn on or off collecting the search result quality feedback from end users.
16314
+ # Corresponds to the JSON property `enableQualityFeedback`
16315
+ # @return [Boolean]
16316
+ attr_accessor :enable_quality_feedback
16317
+ alias_method :enable_quality_feedback?, :enable_quality_feedback
16318
+
16319
+ # Whether to enable safe search.
16320
+ # Corresponds to the JSON property `enableSafeSearch`
16321
+ # @return [Boolean]
16322
+ attr_accessor :enable_safe_search
16323
+ alias_method :enable_safe_search?, :enable_safe_search
16324
+
16325
+ # Whether to enable search-as-you-type behavior for the search widget.
16326
+ # Corresponds to the JSON property `enableSearchAsYouType`
16327
+ # @return [Boolean]
16328
+ attr_accessor :enable_search_as_you_type
16329
+ alias_method :enable_search_as_you_type?, :enable_search_as_you_type
16330
+
16331
+ # If set to true, the widget will enable visual content summary on applicable
16332
+ # search requests. Only used by healthcare search.
16333
+ # Corresponds to the JSON property `enableVisualContentSummary`
16334
+ # @return [Boolean]
16335
+ attr_accessor :enable_visual_content_summary
16336
+ alias_method :enable_visual_content_summary?, :enable_visual_content_summary
16337
+
16338
+ # Output only. Feature config for the engine to opt in or opt out of features.
16339
+ # Supported keys: * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery`
16340
+ # * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-
16341
+ # chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `
16342
+ # personalization-memory` * `disable-agent-sharing` * `disable-image-generation`
16343
+ # * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-
16344
+ # content` * `disable-google-drive-upload`
16345
+ # Corresponds to the JSON property `features`
16346
+ # @return [Hash<String,String>]
16347
+ attr_accessor :features
16348
+
16349
+ # Describes configuration for generative answer.
16350
+ # Corresponds to the JSON property `generativeAnswerConfig`
16351
+ # @return [Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1WidgetConfigUiSettingsGenerativeAnswerConfig]
16352
+ attr_accessor :generative_answer_config
16353
+
16354
+ # Describes widget (or web app) interaction type
16355
+ # Corresponds to the JSON property `interactionType`
15431
16356
  # @return [String]
15432
- attr_accessor :user_principal
16357
+ attr_accessor :interaction_type
15433
16358
 
15434
- # Optional. The user profile. We user user full name(First name + Last name) as
15435
- # user profile.
15436
- # Corresponds to the JSON property `userProfile`
16359
+ # Output only. Maps a model name to its specific configuration for this engine.
16360
+ # This allows admin users to turn on/off individual models. This only stores
16361
+ # models whose states are overridden by the admin. When the state is unspecified,
16362
+ # or model_configs is empty for this model, the system will decide if this
16363
+ # model should be available or not based on the default configuration. For
16364
+ # example, a preview model should be disabled by default if the admin has not
16365
+ # chosen to enable it.
16366
+ # Corresponds to the JSON property `modelConfigs`
16367
+ # @return [Hash<String,String>]
16368
+ attr_accessor :model_configs
16369
+
16370
+ # Controls whether result extract is display and how (snippet or extractive
16371
+ # answer). Default to no result if unspecified.
16372
+ # Corresponds to the JSON property `resultDescriptionType`
15437
16373
  # @return [String]
15438
- attr_accessor :user_profile
16374
+ attr_accessor :result_description_type
15439
16375
 
15440
16376
  def initialize(**args)
15441
16377
  update!(**args)
@@ -15443,57 +16379,89 @@ module Google
15443
16379
 
15444
16380
  # Update properties of this object
15445
16381
  def update!(**args)
15446
- @create_time = args[:create_time] if args.key?(:create_time)
15447
- @last_login_time = args[:last_login_time] if args.key?(:last_login_time)
15448
- @license_assignment_state = args[:license_assignment_state] if args.key?(:license_assignment_state)
15449
- @license_config = args[:license_config] if args.key?(:license_config)
15450
- @update_time = args[:update_time] if args.key?(:update_time)
15451
- @user_principal = args[:user_principal] if args.key?(:user_principal)
15452
- @user_profile = args[:user_profile] if args.key?(:user_profile)
16382
+ @data_store_ui_configs = args[:data_store_ui_configs] if args.key?(:data_store_ui_configs)
16383
+ @default_search_request_order_by = args[:default_search_request_order_by] if args.key?(:default_search_request_order_by)
16384
+ @disable_user_events_collection = args[:disable_user_events_collection] if args.key?(:disable_user_events_collection)
16385
+ @enable_autocomplete = args[:enable_autocomplete] if args.key?(:enable_autocomplete)
16386
+ @enable_create_agent_button = args[:enable_create_agent_button] if args.key?(:enable_create_agent_button)
16387
+ @enable_people_search = args[:enable_people_search] if args.key?(:enable_people_search)
16388
+ @enable_quality_feedback = args[:enable_quality_feedback] if args.key?(:enable_quality_feedback)
16389
+ @enable_safe_search = args[:enable_safe_search] if args.key?(:enable_safe_search)
16390
+ @enable_search_as_you_type = args[:enable_search_as_you_type] if args.key?(:enable_search_as_you_type)
16391
+ @enable_visual_content_summary = args[:enable_visual_content_summary] if args.key?(:enable_visual_content_summary)
16392
+ @features = args[:features] if args.key?(:features)
16393
+ @generative_answer_config = args[:generative_answer_config] if args.key?(:generative_answer_config)
16394
+ @interaction_type = args[:interaction_type] if args.key?(:interaction_type)
16395
+ @model_configs = args[:model_configs] if args.key?(:model_configs)
16396
+ @result_description_type = args[:result_description_type] if args.key?(:result_description_type)
15453
16397
  end
15454
16398
  end
15455
16399
 
15456
- # Configures metadata that is used for End User entities.
15457
- class GoogleCloudDiscoveryengineV1UserStore
16400
+ # Describes configuration for generative answer.
16401
+ class GoogleCloudDiscoveryengineV1WidgetConfigUiSettingsGenerativeAnswerConfig
15458
16402
  include Google::Apis::Core::Hashable
15459
16403
 
15460
- # Optional. The default subscription LicenseConfig for the UserStore, if
15461
- # UserStore.enable_license_auto_register is true, new users will automatically
15462
- # register under the default subscription. If default LicenseConfig doesn't have
15463
- # remaining license seats left, new users will not be assigned with license and
15464
- # will be blocked for Vertex AI Search features. This is used if `
15465
- # license_assignment_tier_rules` is not configured.
15466
- # Corresponds to the JSON property `defaultLicenseConfig`
15467
- # @return [String]
15468
- attr_accessor :default_license_config
16404
+ # Whether generated answer contains suggested related questions.
16405
+ # Corresponds to the JSON property `disableRelatedQuestions`
16406
+ # @return [Boolean]
16407
+ attr_accessor :disable_related_questions
16408
+ alias_method :disable_related_questions?, :disable_related_questions
15469
16409
 
15470
- # The display name of the User Store.
15471
- # Corresponds to the JSON property `displayName`
15472
- # @return [String]
15473
- attr_accessor :display_name
16410
+ # Optional. Specifies whether to filter out queries that are adversarial.
16411
+ # Corresponds to the JSON property `ignoreAdversarialQuery`
16412
+ # @return [Boolean]
16413
+ attr_accessor :ignore_adversarial_query
16414
+ alias_method :ignore_adversarial_query?, :ignore_adversarial_query
15474
16415
 
15475
- # Optional. Whether to enable license auto update for users in this User Store.
15476
- # If true, users with expired licenses will automatically be updated to use the
15477
- # default license config as long as the default license config has seats left.
15478
- # Corresponds to the JSON property `enableExpiredLicenseAutoUpdate`
16416
+ # Optional. Specifies whether to filter out queries that are not relevant to the
16417
+ # content.
16418
+ # Corresponds to the JSON property `ignoreLowRelevantContent`
15479
16419
  # @return [Boolean]
15480
- attr_accessor :enable_expired_license_auto_update
15481
- alias_method :enable_expired_license_auto_update?, :enable_expired_license_auto_update
16420
+ attr_accessor :ignore_low_relevant_content
16421
+ alias_method :ignore_low_relevant_content?, :ignore_low_relevant_content
15482
16422
 
15483
- # Optional. Whether to enable license auto register for users in this User Store.
15484
- # If true, new users will automatically register under the default license
15485
- # config as long as the default license config has seats left.
15486
- # Corresponds to the JSON property `enableLicenseAutoRegister`
16423
+ # Optional. Specifies whether to filter out queries that are not answer-seeking.
16424
+ # The default value is `false`. No answer is returned if the search query is
16425
+ # classified as a non-answer seeking query. If this field is set to `true`, we
16426
+ # skip generating answers for non-answer seeking queries and return fallback
16427
+ # messages instead.
16428
+ # Corresponds to the JSON property `ignoreNonAnswerSeekingQuery`
15487
16429
  # @return [Boolean]
15488
- attr_accessor :enable_license_auto_register
15489
- alias_method :enable_license_auto_register?, :enable_license_auto_register
16430
+ attr_accessor :ignore_non_answer_seeking_query
16431
+ alias_method :ignore_non_answer_seeking_query?, :ignore_non_answer_seeking_query
15490
16432
 
15491
- # Immutable. The full resource name of the User Store, in the format of `
15492
- # projects/`project`/locations/`location`/userStores/`user_store``. This field
15493
- # must be a UTF-8 encoded string with a length limit of 1024 characters.
15494
- # Corresponds to the JSON property `name`
16433
+ # Optional. Source of image returned in the answer.
16434
+ # Corresponds to the JSON property `imageSource`
15495
16435
  # @return [String]
15496
- attr_accessor :name
16436
+ attr_accessor :image_source
16437
+
16438
+ # Language code for Summary. Use language tags defined by [BCP47](https://www.
16439
+ # rfc-editor.org/rfc/bcp/bcp47.txt). Note: This is an experimental feature.
16440
+ # Corresponds to the JSON property `languageCode`
16441
+ # @return [String]
16442
+ attr_accessor :language_code
16443
+
16444
+ # Max rephrase steps. The max number is 5 steps. If not set or set to < 1, it
16445
+ # will be set to 1 by default.
16446
+ # Corresponds to the JSON property `maxRephraseSteps`
16447
+ # @return [Fixnum]
16448
+ attr_accessor :max_rephrase_steps
16449
+
16450
+ # Text at the beginning of the prompt that instructs the model that generates
16451
+ # the answer.
16452
+ # Corresponds to the JSON property `modelPromptPreamble`
16453
+ # @return [String]
16454
+ attr_accessor :model_prompt_preamble
16455
+
16456
+ # The model version used to generate the answer.
16457
+ # Corresponds to the JSON property `modelVersion`
16458
+ # @return [String]
16459
+ attr_accessor :model_version
16460
+
16461
+ # The number of top results to generate the answer from. Up to 10.
16462
+ # Corresponds to the JSON property `resultCount`
16463
+ # @return [Fixnum]
16464
+ attr_accessor :result_count
15497
16465
 
15498
16466
  def initialize(**args)
15499
16467
  update!(**args)
@@ -15501,11 +16469,16 @@ module Google
15501
16469
 
15502
16470
  # Update properties of this object
15503
16471
  def update!(**args)
15504
- @default_license_config = args[:default_license_config] if args.key?(:default_license_config)
15505
- @display_name = args[:display_name] if args.key?(:display_name)
15506
- @enable_expired_license_auto_update = args[:enable_expired_license_auto_update] if args.key?(:enable_expired_license_auto_update)
15507
- @enable_license_auto_register = args[:enable_license_auto_register] if args.key?(:enable_license_auto_register)
15508
- @name = args[:name] if args.key?(:name)
16472
+ @disable_related_questions = args[:disable_related_questions] if args.key?(:disable_related_questions)
16473
+ @ignore_adversarial_query = args[:ignore_adversarial_query] if args.key?(:ignore_adversarial_query)
16474
+ @ignore_low_relevant_content = args[:ignore_low_relevant_content] if args.key?(:ignore_low_relevant_content)
16475
+ @ignore_non_answer_seeking_query = args[:ignore_non_answer_seeking_query] if args.key?(:ignore_non_answer_seeking_query)
16476
+ @image_source = args[:image_source] if args.key?(:image_source)
16477
+ @language_code = args[:language_code] if args.key?(:language_code)
16478
+ @max_rephrase_steps = args[:max_rephrase_steps] if args.key?(:max_rephrase_steps)
16479
+ @model_prompt_preamble = args[:model_prompt_preamble] if args.key?(:model_prompt_preamble)
16480
+ @model_version = args[:model_version] if args.key?(:model_version)
16481
+ @result_count = args[:result_count] if args.key?(:result_count)
15509
16482
  end
15510
16483
  end
15511
16484
 
@@ -19567,6 +20540,12 @@ module Google
19567
20540
  attr_accessor :enable_image_annotation
19568
20541
  alias_method :enable_image_annotation?, :enable_image_annotation
19569
20542
 
20543
+ # Optional. If true, the pdf layout will be refined using an LLM.
20544
+ # Corresponds to the JSON property `enableLlmLayoutParsing`
20545
+ # @return [Boolean]
20546
+ attr_accessor :enable_llm_layout_parsing
20547
+ alias_method :enable_llm_layout_parsing?, :enable_llm_layout_parsing
20548
+
19570
20549
  # Optional. If true, the LLM based annotation is added to the table during
19571
20550
  # parsing.
19572
20551
  # Corresponds to the JSON property `enableTableAnnotation`
@@ -19603,6 +20582,7 @@ module Google
19603
20582
  def update!(**args)
19604
20583
  @enable_get_processed_document = args[:enable_get_processed_document] if args.key?(:enable_get_processed_document)
19605
20584
  @enable_image_annotation = args[:enable_image_annotation] if args.key?(:enable_image_annotation)
20585
+ @enable_llm_layout_parsing = args[:enable_llm_layout_parsing] if args.key?(:enable_llm_layout_parsing)
19606
20586
  @enable_table_annotation = args[:enable_table_annotation] if args.key?(:enable_table_annotation)
19607
20587
  @exclude_html_classes = args[:exclude_html_classes] if args.key?(:exclude_html_classes)
19608
20588
  @exclude_html_elements = args[:exclude_html_elements] if args.key?(:exclude_html_elements)
@@ -19702,6 +20682,11 @@ module Google
19702
20682
  # @return [Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1alphaEngineChatEngineMetadata]
19703
20683
  attr_accessor :chat_engine_metadata
19704
20684
 
20685
+ # Configurations used to enable CMEK data encryption with Cloud KMS keys.
20686
+ # Corresponds to the JSON property `cmekConfig`
20687
+ # @return [Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1alphaCmekConfig]
20688
+ attr_accessor :cmek_config
20689
+
19705
20690
  # Common configurations for an Engine.
19706
20691
  # Corresponds to the JSON property `commonConfig`
19707
20692
  # @return [Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1alphaEngineCommonConfig]
@@ -19763,6 +20748,17 @@ module Google
19763
20748
  # @return [Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1alphaEngineMediaRecommendationEngineConfig]
19764
20749
  attr_accessor :media_recommendation_engine_config
19765
20750
 
20751
+ # Optional. Maps a model name to its specific configuration for this engine.
20752
+ # This allows admin users to turn on/off individual models. This only stores
20753
+ # models whose states are overridden by the admin. When the state is unspecified,
20754
+ # or model_configs is empty for this model, the system will decide if this
20755
+ # model should be available or not based on the default configuration. For
20756
+ # example, a preview model should be disabled by default if the admin has not
20757
+ # chosen to enable it.
20758
+ # Corresponds to the JSON property `modelConfigs`
20759
+ # @return [Hash<String,String>]
20760
+ attr_accessor :model_configs
20761
+
19766
20762
  # Immutable. Identifier. The fully qualified resource name of the engine. This
19767
20763
  # field must be a UTF-8 encoded string with a length limit of 1024 characters.
19768
20764
  # Format: `projects/`project`/locations/`location`/collections/`collection`/
@@ -19806,6 +20802,7 @@ module Google
19806
20802
  @app_type = args[:app_type] if args.key?(:app_type)
19807
20803
  @chat_engine_config = args[:chat_engine_config] if args.key?(:chat_engine_config)
19808
20804
  @chat_engine_metadata = args[:chat_engine_metadata] if args.key?(:chat_engine_metadata)
20805
+ @cmek_config = args[:cmek_config] if args.key?(:cmek_config)
19809
20806
  @common_config = args[:common_config] if args.key?(:common_config)
19810
20807
  @configurable_billing_approach = args[:configurable_billing_approach] if args.key?(:configurable_billing_approach)
19811
20808
  @create_time = args[:create_time] if args.key?(:create_time)
@@ -19815,6 +20812,7 @@ module Google
19815
20812
  @features = args[:features] if args.key?(:features)
19816
20813
  @industry_vertical = args[:industry_vertical] if args.key?(:industry_vertical)
19817
20814
  @media_recommendation_engine_config = args[:media_recommendation_engine_config] if args.key?(:media_recommendation_engine_config)
20815
+ @model_configs = args[:model_configs] if args.key?(:model_configs)
19818
20816
  @name = args[:name] if args.key?(:name)
19819
20817
  @recommendation_metadata = args[:recommendation_metadata] if args.key?(:recommendation_metadata)
19820
20818
  @search_engine_config = args[:search_engine_config] if args.key?(:search_engine_config)
@@ -26211,6 +27209,12 @@ module Google
26211
27209
  attr_accessor :enable_image_annotation
26212
27210
  alias_method :enable_image_annotation?, :enable_image_annotation
26213
27211
 
27212
+ # Optional. If true, the pdf layout will be refined using an LLM.
27213
+ # Corresponds to the JSON property `enableLlmLayoutParsing`
27214
+ # @return [Boolean]
27215
+ attr_accessor :enable_llm_layout_parsing
27216
+ alias_method :enable_llm_layout_parsing?, :enable_llm_layout_parsing
27217
+
26214
27218
  # Optional. If true, the LLM based annotation is added to the table during
26215
27219
  # parsing.
26216
27220
  # Corresponds to the JSON property `enableTableAnnotation`
@@ -26247,6 +27251,7 @@ module Google
26247
27251
  def update!(**args)
26248
27252
  @enable_get_processed_document = args[:enable_get_processed_document] if args.key?(:enable_get_processed_document)
26249
27253
  @enable_image_annotation = args[:enable_image_annotation] if args.key?(:enable_image_annotation)
27254
+ @enable_llm_layout_parsing = args[:enable_llm_layout_parsing] if args.key?(:enable_llm_layout_parsing)
26250
27255
  @enable_table_annotation = args[:enable_table_annotation] if args.key?(:enable_table_annotation)
26251
27256
  @exclude_html_classes = args[:exclude_html_classes] if args.key?(:exclude_html_classes)
26252
27257
  @exclude_html_elements = args[:exclude_html_elements] if args.key?(:exclude_html_elements)
@@ -26346,6 +27351,11 @@ module Google
26346
27351
  # @return [Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1betaEngineChatEngineMetadata]
26347
27352
  attr_accessor :chat_engine_metadata
26348
27353
 
27354
+ # Configurations used to enable CMEK data encryption with Cloud KMS keys.
27355
+ # Corresponds to the JSON property `cmekConfig`
27356
+ # @return [Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1betaCmekConfig]
27357
+ attr_accessor :cmek_config
27358
+
26349
27359
  # Common configurations for an Engine.
26350
27360
  # Corresponds to the JSON property `commonConfig`
26351
27361
  # @return [Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1betaEngineCommonConfig]
@@ -26407,6 +27417,17 @@ module Google
26407
27417
  # @return [Google::Apis::DiscoveryengineV1::GoogleCloudDiscoveryengineV1betaEngineMediaRecommendationEngineConfig]
26408
27418
  attr_accessor :media_recommendation_engine_config
26409
27419
 
27420
+ # Optional. Maps a model name to its specific configuration for this engine.
27421
+ # This allows admin users to turn on/off individual models. This only stores
27422
+ # models whose states are overridden by the admin. When the state is unspecified,
27423
+ # or model_configs is empty for this model, the system will decide if this
27424
+ # model should be available or not based on the default configuration. For
27425
+ # example, a preview model should be disabled by default if the admin has not
27426
+ # chosen to enable it.
27427
+ # Corresponds to the JSON property `modelConfigs`
27428
+ # @return [Hash<String,String>]
27429
+ attr_accessor :model_configs
27430
+
26410
27431
  # Immutable. Identifier. The fully qualified resource name of the engine. This
26411
27432
  # field must be a UTF-8 encoded string with a length limit of 1024 characters.
26412
27433
  # Format: `projects/`project`/locations/`location`/collections/`collection`/
@@ -26440,6 +27461,7 @@ module Google
26440
27461
  @app_type = args[:app_type] if args.key?(:app_type)
26441
27462
  @chat_engine_config = args[:chat_engine_config] if args.key?(:chat_engine_config)
26442
27463
  @chat_engine_metadata = args[:chat_engine_metadata] if args.key?(:chat_engine_metadata)
27464
+ @cmek_config = args[:cmek_config] if args.key?(:cmek_config)
26443
27465
  @common_config = args[:common_config] if args.key?(:common_config)
26444
27466
  @configurable_billing_approach = args[:configurable_billing_approach] if args.key?(:configurable_billing_approach)
26445
27467
  @create_time = args[:create_time] if args.key?(:create_time)
@@ -26449,6 +27471,7 @@ module Google
26449
27471
  @features = args[:features] if args.key?(:features)
26450
27472
  @industry_vertical = args[:industry_vertical] if args.key?(:industry_vertical)
26451
27473
  @media_recommendation_engine_config = args[:media_recommendation_engine_config] if args.key?(:media_recommendation_engine_config)
27474
+ @model_configs = args[:model_configs] if args.key?(:model_configs)
26452
27475
  @name = args[:name] if args.key?(:name)
26453
27476
  @search_engine_config = args[:search_engine_config] if args.key?(:search_engine_config)
26454
27477
  @solution_type = args[:solution_type] if args.key?(:solution_type)