diff --git a/docs/config.html b/docs/config.html index 423649442..b31888ed5 100644 --- a/docs/config.html +++ b/docs/config.html @@ -376,6 +376,11 @@

AzureEntraIdConfiguration

ByokRag

BYOK (Bring Your Own Knowledge) RAG configuration.

+ + + + + @@ -414,6 +419,13 @@

ByokRag

+ + + + +
Field string Path to RAG database.
score_multipliernumberMultiplier applied to relevance scores from this vector store. Used +to weight results when querying multiple knowledge sources. Values > +1 boost this store’s results; values < 1 reduce them.

CORSConfiguration

@@ -603,9 +615,15 @@

Configuration

‘production’). Used in telemetry events. - solr + rag - Configuration for Solr vector search operations. + Configuration for all RAG strategies (inline and tool-based). + + + okp + + OKP provider settings. Only used when ‘okp’ is listed in rag.inline +or rag.tool. @@ -1089,6 +1107,41 @@

ModelContextProtocolServer

+

OkpConfiguration

+

OKP (Offline Knowledge Portal) provider configuration.

+

Controls provider-specific behaviour for the OKP vector store. Only +relevant when "okp" is listed in rag.inline or +rag.tool.

+ + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
offlinebooleanWhen True, use parent_id for OKP chunk source URLs. When False, use +reference_url for chunk source URLs.
chunk_filter_querystringOKP filter query applied to every OKP search request. Defaults to +‘is_chunk:true’ to restrict results to chunk documents. To add extra +constraints, extend the expression using boolean syntax, +e.g. ‘is_chunk:true AND product:openshift’.

PostgreSQLDatabaseConfiguration

PostgreSQL database configuration.

PostgreSQL database is used by Lightspeed Core Stack service for @@ -1337,6 +1390,48 @@

RHIdentityConfiguration

+

RagConfiguration

+

RAG strategy configuration.

+

Controls which RAG sources are used for inline and tool-based +retrieval.

+

Each strategy lists RAG IDs to include. The special ID +"okp" defined in constants, activates the OKP provider; all +other IDs refer to entries in byok_rag.

+

Backward compatibility: - inline defaults to +[] (no inline RAG). - tool defaults to +None which means all registered vector stores are used +(identical to the previous tool.byok.enabled = True +default).

+ + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
inlinearrayRAG IDs whose sources are injected as context before the LLM call. +Use ‘okp’ to enable OKP inline RAG. Empty by default (no inline +RAG).
toolarrayRAG IDs made available to the LLM as a file_search tool. Use ‘okp’ +to include the OKP vector store. When omitted, all registered BYOK +vector stores are used (backward compatibility).

SQLiteDatabaseConfiguration

SQLite database configuration.

@@ -1429,39 +1524,6 @@

ServiceConfiguration

-

SolrConfiguration

-

Solr configuration for vector search queries.

-

Controls whether to use offline or online mode when building document -URLs from vector search results, and enables/disables Solr vector IO -functionality.

- - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescription
enabledbooleanWhen True, enables Solr vector IO functionality for vector search -queries. When False, disables Solr vector search processing.
offlinebooleanWhen True, use parent_id for chunk source URLs. When False, use -reference_url for chunk source URLs.

SplunkConfiguration

Splunk HEC (HTTP Event Collector) configuration.

Splunk HEC allows sending events directly to Splunk over HTTP/HTTPS. diff --git a/docs/config.md b/docs/config.md index 8ba10ad7e..00c0ae747 100644 --- a/docs/config.md +++ b/docs/config.md @@ -130,12 +130,12 @@ byok_rag: | Field | Type | Description | |-------|------|-------------| | rag_id | string | Unique RAG ID | -| rag_type | string | Type of RAG database (e.g. `inline::faiss`). | +| rag_type | string | Type of RAG database. | | embedding_model | string | Embedding model identification | | embedding_dimension | integer | Dimensionality of embedding vectors. | | vector_db_id | string | Vector database identification. | | db_path | string | Path to RAG database. | -| score_multiplier | number | Multiplier applied to relevance scores from this vector store when querying multiple sources. Values > 1 boost results; values < 1 reduce them. Default: 1.0. | +| score_multiplier | number | Multiplier applied to relevance scores from this vector store. Used to weight results when querying multiple knowledge sources. Values > 1 boost this store's results; values < 1 reduce them. | ## CORSConfiguration @@ -187,7 +187,8 @@ Global service configuration. | azure_entra_id | | | | splunk | | Splunk HEC configuration for sending telemetry events. | | deployment_environment | string | Deployment environment name (e.g., 'development', 'staging', 'production'). Used in telemetry events. | -| rag | | RAG strategy configuration (OKP and BYOK). Controls pre-query (Inline RAG) and tool-based (Tool RAG) retrieval. | +| rag | | Configuration for all RAG strategies (inline and tool-based). | +| okp | | OKP provider settings. Only used when 'okp' is listed in rag.inline or rag.tool. | ## ConversationHistoryConfiguration @@ -395,6 +396,21 @@ Useful resources: | timeout | integer | Timeout in seconds for requests to the MCP server. If not specified, the default timeout from Llama Stack will be used. Note: This field is reserved for future use when Llama Stack adds timeout support. | +## OkpConfiguration + + +OKP (Offline Knowledge Portal) provider configuration. + +Controls provider-specific behaviour for the OKP vector store. +Only relevant when ``"okp"`` is listed in ``rag.inline`` or ``rag.tool``. + + +| Field | Type | Description | +|-------|------|-------------| +| offline | boolean | When True, use parent_id for OKP chunk source URLs. When False, use reference_url for chunk source URLs. | +| chunk_filter_query | string | OKP filter query applied to every OKP search request. Defaults to 'is_chunk:true' to restrict results to chunk documents. To add extra constraints, extend the expression using boolean syntax, e.g. 'is_chunk:true AND product:*openshift*'. | + + ## PostgreSQLDatabaseConfiguration @@ -501,6 +517,28 @@ Red Hat Identity authentication configuration. | required_entitlements | array | List of all required entitlements. | +## RagConfiguration + + +RAG strategy configuration. + +Controls which RAG sources are used for inline and tool-based retrieval. + +Each strategy lists RAG IDs to include. The special ID ``"okp"`` defined in constants, +activates the OKP provider; all other IDs refer to entries in ``byok_rag``. + +Backward compatibility: + - ``inline`` defaults to ``[]`` (no inline RAG). + - ``tool`` defaults to ``None`` which means all registered vector stores + are used (identical to the previous ``tool.byok.enabled = True`` default). + + +| Field | Type | Description | +|-------|------|-------------| +| inline | array | RAG IDs whose sources are injected as context before the LLM call. Use 'okp' to enable OKP inline RAG. Empty by default (no inline RAG). | +| tool | array | RAG IDs made available to the LLM as a file_search tool. Use 'okp' to include the OKP vector store. When omitted, all registered BYOK vector stores are used (backward compatibility). | + + ## SQLiteDatabaseConfiguration @@ -537,62 +575,6 @@ the service can handle requests concurrently. | cors | | Cross-Origin Resource Sharing configuration for cross-domain requests | -## RagConfiguration - - -Top-level RAG strategy configuration. Controls two complementary retrieval modes: - -- **Inline RAG**: context is fetched from the listed sources and injected before the - LLM request. -- **Tool RAG**: the LLM can call the `file_search` tool during generation to retrieve - context on demand from the listed vector stores. Supports both BYOK and OKP. - -Each strategy is configured as a list of RAG IDs referencing entries in `byok_rag`. -The special ID `okp` activates the OKP provider (no `byok_rag` entry needed). - -**Backward compatibility**: omitting `tool` uses all registered BYOK vector stores -(equivalent to the old `tool.byok.enabled = True`). Omitting `inline` means no -context is injected before the LLM request. - -Example: - -```yaml -rag: - inline: - - my-docs # inject context from my-docs before the LLM request - tool: - - okp # LLM can search OKP as a tool - - my-docs # LLM can also search my-docs as a tool - -okp: - offline: true # use parent_id for OKP URL construction -``` - - -| Field | Type | Description | -|-------|------|-------------| -| inline | list[string] | RAG IDs whose content is injected before the LLM request. Use `okp` for OKP. Empty by default (no inline RAG). | -| tool | list[string] or null | RAG IDs exposed as a `file_search` tool the LLM can invoke. Use `okp` to include OKP. When omitted, all registered BYOK vector stores are used (backward compatibility). | - - -## OkpConfiguration - -OKP (Offline Knowledge Portal) provider settings. Only used when `okp` is listed in `rag.inline` or `rag.tool`. - -Example: - -```yaml -okp: - offline: true # use parent_id for OKP URL construction - chunk_filter_query: "is_chunk:true" -``` - -| Field | Type | Description | -|-------|------|-------------| -| offline | boolean | When `true` (default), use `parent_id` for OKP chunk source URLs. When `false`, use `reference_url`. | -| chunk_filter_query | string | OKP filter query (`fq`) applied to every OKP search request. Defaults to `"is_chunk:true"`. Extend with `AND` for extra constraints. | - - ## SplunkConfiguration diff --git a/docs/config.puml b/docs/config.puml index cc35f5862..69497edcc 100644 --- a/docs/config.puml +++ b/docs/config.puml @@ -41,11 +41,12 @@ class "AzureEntraIdConfiguration" as src.models.config.AzureEntraIdConfiguration tenant_id } class "ByokRag" as src.models.config.ByokRag { - db_path + db_path : str embedding_dimension embedding_model : str rag_id : str rag_type : str + score_multiplier : float vector_db_id : str } class "CORSConfiguration" as src.models.config.CORSConfiguration { @@ -69,9 +70,10 @@ class "Configuration" as src.models.config.Configuration { llama_stack mcp_servers : list[ModelContextProtocolServer] name : str + okp quota_handlers + rag service - solr : Optional[SolrConfiguration] splunk : Optional[SplunkConfiguration] user_data_collection dump(filename: str | Path) -> None @@ -160,6 +162,10 @@ class "ModelContextProtocolServer" as src.models.config.ModelContextProtocolServ resolve_auth_headers() -> Self validate_headers(value: list[str]) -> list[str] } +class "OkpConfiguration" as src.models.config.OkpConfiguration { + chunk_filter_query : str + offline : bool +} class "PostgreSQLDatabaseConfiguration" as src.models.config.PostgreSQLDatabaseConfiguration { ca_cert_path : Optional[FilePath] db : str @@ -194,6 +200,10 @@ class "QuotaSchedulerConfiguration" as src.models.config.QuotaSchedulerConfigura class "RHIdentityConfiguration" as src.models.config.RHIdentityConfiguration { required_entitlements : Optional[list[str]] } +class "RagConfiguration" as src.models.config.RagConfiguration { + inline : list[str] + tool : Optional[list[str]] +} class "SQLiteDatabaseConfiguration" as src.models.config.SQLiteDatabaseConfiguration { db_path : str } @@ -211,10 +221,6 @@ class "ServiceConfiguration" as src.models.config.ServiceConfiguration { check_service_configuration() -> Self validate_root_path(value: str) -> str } -class "SolrConfiguration" as src.models.config.SolrConfiguration { - enabled : bool - offline : bool -} class "SplunkConfiguration" as src.models.config.SplunkConfiguration { enabled : bool index : Optional[str] @@ -257,14 +263,15 @@ src.models.config.JwtConfiguration --|> src.models.config.ConfigurationBase src.models.config.JwtRoleRule --|> src.models.config.ConfigurationBase src.models.config.LlamaStackConfiguration --|> src.models.config.ConfigurationBase src.models.config.ModelContextProtocolServer --|> src.models.config.ConfigurationBase +src.models.config.OkpConfiguration --|> src.models.config.ConfigurationBase src.models.config.PostgreSQLDatabaseConfiguration --|> src.models.config.ConfigurationBase src.models.config.QuotaHandlersConfiguration --|> src.models.config.ConfigurationBase src.models.config.QuotaLimiterConfiguration --|> src.models.config.ConfigurationBase src.models.config.QuotaSchedulerConfiguration --|> src.models.config.ConfigurationBase src.models.config.RHIdentityConfiguration --|> src.models.config.ConfigurationBase +src.models.config.RagConfiguration --|> src.models.config.ConfigurationBase src.models.config.SQLiteDatabaseConfiguration --|> src.models.config.ConfigurationBase src.models.config.ServiceConfiguration --|> src.models.config.ConfigurationBase -src.models.config.SolrConfiguration --|> src.models.config.ConfigurationBase src.models.config.SplunkConfiguration --|> src.models.config.ConfigurationBase src.models.config.TLSConfiguration --|> src.models.config.ConfigurationBase src.models.config.UserDataCollection --|> src.models.config.ConfigurationBase @@ -278,8 +285,10 @@ src.models.config.InferenceConfiguration --* src.models.config.Configuration : i src.models.config.JsonPathOperator --* src.models.config.JwtRoleRule : operator src.models.config.JwtConfiguration --* src.models.config.JwkConfiguration : jwt_configuration src.models.config.LlamaStackConfiguration --* src.models.config.Configuration : llama_stack +src.models.config.OkpConfiguration --* src.models.config.Configuration : okp src.models.config.QuotaHandlersConfiguration --* src.models.config.Configuration : quota_handlers src.models.config.QuotaSchedulerConfiguration --* src.models.config.QuotaHandlersConfiguration : scheduler +src.models.config.RagConfiguration --* src.models.config.Configuration : rag src.models.config.SQLiteDatabaseConfiguration --* src.models.config.DatabaseConfiguration : sqlite src.models.config.ServiceConfiguration --* src.models.config.Configuration : service src.models.config.TLSConfiguration --* src.models.config.ServiceConfiguration : tls_config diff --git a/docs/config.svg b/docs/config.svg index c0d342d41..816cbd1e5 100644 --- a/docs/config.svg +++ b/docs/config.svg @@ -1,729 +1,759 @@ - + - - - - A2AStateConfiguration - - config - postgres : Optional[PostgreSQLDatabaseConfiguration] - sqlite : Optional[SQLiteDatabaseConfiguration] - storage_type - - check_a2a_state_configuration() -> Self + + + + A2AStateConfiguration + + config + postgres : Optional[PostgreSQLDatabaseConfiguration] + sqlite : Optional[SQLiteDatabaseConfiguration] + storage_type + + check_a2a_state_configuration() -> Self - - - - APIKeyTokenConfiguration - - api_key - + + + + APIKeyTokenConfiguration + + api_key + - - - - AccessRule - - actions : list[Action] - role : str - + + + + AccessRule + + actions : list[Action] + role : str + - - - - Action - - name - + + + + Action + + name + - - - - AuthenticationConfiguration - - api_key_config : Optional[APIKeyTokenConfiguration] - api_key_configuration - jwk_config : Optional[JwkConfiguration] - jwk_configuration - k8s_ca_cert_path : Optional[FilePath] - k8s_cluster_api : Optional[AnyHttpUrl] - module : str - rh_identity_config : Optional[RHIdentityConfiguration] - rh_identity_configuration - skip_for_health_probes : bool - skip_tls_verification : bool - - check_authentication_model() -> Self + + + + AuthenticationConfiguration + + api_key_config : Optional[APIKeyTokenConfiguration] + api_key_configuration + jwk_config : Optional[JwkConfiguration] + jwk_configuration + k8s_ca_cert_path : Optional[FilePath] + k8s_cluster_api : Optional[AnyHttpUrl] + module : str + rh_identity_config : Optional[RHIdentityConfiguration] + rh_identity_configuration + skip_for_health_probes : bool + skip_tls_verification : bool + + check_authentication_model() -> Self - - - - AuthorizationConfiguration - - access_rules : list[AccessRule] - + + + + AuthorizationConfiguration + + access_rules : list[AccessRule] + - - - - AzureEntraIdConfiguration - - client_id - client_secret - scope : str - tenant_id - + + + + AzureEntraIdConfiguration + + client_id + client_secret + scope : str + tenant_id + - - - - ByokRag - - db_path - embedding_dimension - embedding_model : str - rag_id : str - rag_type : str - vector_db_id : str - + + + + ByokRag + + db_path : str + embedding_dimension + embedding_model : str + rag_id : str + rag_type : str + score_multiplier : float + vector_db_id : str + - - - - CORSConfiguration - - allow_credentials : bool - allow_headers : list[str] - allow_methods : list[str] - allow_origins : list[str] - - check_cors_configuration() -> Self + + + + CORSConfiguration + + allow_credentials : bool + allow_headers : list[str] + allow_methods : list[str] + allow_origins : list[str] + + check_cors_configuration() -> Self - - - - Configuration - - a2a_state - authentication - authorization : Optional[AuthorizationConfiguration] - azure_entra_id : Optional[AzureEntraIdConfiguration] - byok_rag : list[ByokRag] - conversation_cache - customization : Optional[Customization] - database - deployment_environment : str - inference - llama_stack - mcp_servers : list[ModelContextProtocolServer] - name : str - quota_handlers - service - solr : Optional[SolrConfiguration] - splunk : Optional[SplunkConfiguration] - user_data_collection - - dump(filename: str | Path) -> None - validate_mcp_auth_headers() -> Self + + + + Configuration + + a2a_state + authentication + authorization : Optional[AuthorizationConfiguration] + azure_entra_id : Optional[AzureEntraIdConfiguration] + byok_rag : list[ByokRag] + conversation_cache + customization : Optional[Customization] + database + deployment_environment : str + inference + llama_stack + mcp_servers : list[ModelContextProtocolServer] + name : str + okp + quota_handlers + rag + service + splunk : Optional[SplunkConfiguration] + user_data_collection + + dump(filename: str | Path) -> None + validate_mcp_auth_headers() -> Self - - - - ConfigurationBase - - model_config - + + + + ConfigurationBase + + model_config + - - - - ConversationHistoryConfiguration - - memory : Optional[InMemoryCacheConfig] - postgres : Optional[PostgreSQLDatabaseConfiguration] - sqlite : Optional[SQLiteDatabaseConfiguration] - type : Optional[Literal['noop', 'memory', 'sqlite', 'postgres']] - - check_cache_configuration() -> Self + + + + ConversationHistoryConfiguration + + memory : Optional[InMemoryCacheConfig] + postgres : Optional[PostgreSQLDatabaseConfiguration] + sqlite : Optional[SQLiteDatabaseConfiguration] + type : Optional[Literal['noop', 'memory', 'sqlite', 'postgres']] + + check_cache_configuration() -> Self - - - - CustomProfile - - path : str - prompts : dict[str, str] - - get_prompts() -> dict[str, str] + + + + CustomProfile + + path : str + prompts : dict[str, str] + + get_prompts() -> dict[str, str] - - - - Customization - - agent_card_config : Optional[dict[str, Any]] - agent_card_path : Optional[FilePath] - custom_profile : Optional[CustomProfile] - disable_query_system_prompt : bool - disable_shield_ids_override : bool - profile_path : Optional[str] - system_prompt : Optional[str] - system_prompt_path : Optional[FilePath] - - check_customization_model() -> Self + + + + Customization + + agent_card_config : Optional[dict[str, Any]] + agent_card_path : Optional[FilePath] + custom_profile : Optional[CustomProfile] + disable_query_system_prompt : bool + disable_shield_ids_override : bool + profile_path : Optional[str] + system_prompt : Optional[str] + system_prompt_path : Optional[FilePath] + + check_customization_model() -> Self - - - - DatabaseConfiguration - - config - db_type - postgres : Optional[PostgreSQLDatabaseConfiguration] - sqlite : Optional[SQLiteDatabaseConfiguration] - - check_database_configuration() -> Self + + + + DatabaseConfiguration + + config + db_type + postgres : Optional[PostgreSQLDatabaseConfiguration] + sqlite : Optional[SQLiteDatabaseConfiguration] + + check_database_configuration() -> Self - - - - InMemoryCacheConfig - - max_entries - + + + + InMemoryCacheConfig + + max_entries + - - - - InferenceConfiguration - - default_model : Optional[str] - default_provider : Optional[str] - - check_default_model_and_provider() -> Self + + + + InferenceConfiguration + + default_model : Optional[str] + default_provider : Optional[str] + + check_default_model_and_provider() -> Self - - - - JsonPathOperator - - name - + + + + JsonPathOperator + + name + - - - - JwkConfiguration - - jwt_configuration - url - + + + + JwkConfiguration + + jwt_configuration + url + - - - - JwtConfiguration - - role_rules : list[JwtRoleRule] - user_id_claim : str - username_claim : str - + + + + JwtConfiguration + + role_rules : list[JwtRoleRule] + user_id_claim : str + username_claim : str + - - - - JwtRoleRule - - compiled_regex - jsonpath : str - negate : bool - operator - roles : list[str] - value : Any - - check_jsonpath() -> Self - check_regex_pattern() -> Self - check_roles() -> Self + + + + JwtRoleRule + + compiled_regex + jsonpath : str + negate : bool + operator + roles : list[str] + value : Any + + check_jsonpath() -> Self + check_regex_pattern() -> Self + check_roles() -> Self - - - - LlamaStackConfiguration - - api_key : Optional[SecretStr] - library_client_config_path : Optional[str] - timeout - url : Optional[AnyHttpUrl] - use_as_library_client : Optional[bool] - - check_llama_stack_model() -> Self + + + + LlamaStackConfiguration + + api_key : Optional[SecretStr] + library_client_config_path : Optional[str] + timeout + url : Optional[AnyHttpUrl] + use_as_library_client : Optional[bool] + + check_llama_stack_model() -> Self - - - - ModelContextProtocolServer - - authorization_headers : dict[str, str] - headers : list[str] - name : str - provider_id : str - resolved_authorization_headers - timeout : Optional[PositiveInt] - url : str - - resolve_auth_headers() -> Self - validate_headers(value: list[str]) -> list[str] + + + + ModelContextProtocolServer + + authorization_headers : dict[str, str] + headers : list[str] + name : str + provider_id : str + resolved_authorization_headers + timeout : Optional[PositiveInt] + url : str + + resolve_auth_headers() -> Self + validate_headers(value: list[str]) -> list[str] + + + + + + + OkpConfiguration + + chunk_filter_query : str + offline : bool + - - - - PostgreSQLDatabaseConfiguration - - ca_cert_path : Optional[FilePath] - db : str - gss_encmode : str - host : str - namespace : Optional[str] - password - port - ssl_mode : str - user : str - - check_postgres_configuration() -> Self + + + + PostgreSQLDatabaseConfiguration + + ca_cert_path : Optional[FilePath] + db : str + gss_encmode : str + host : str + namespace : Optional[str] + password + port + ssl_mode : str + user : str + + check_postgres_configuration() -> Self - - - - QuotaHandlersConfiguration - - enable_token_history : bool - limiters : list[QuotaLimiterConfiguration] - postgres : Optional[PostgreSQLDatabaseConfiguration] - scheduler - sqlite : Optional[SQLiteDatabaseConfiguration] - + + + + QuotaHandlersConfiguration + + enable_token_history : bool + limiters : list[QuotaLimiterConfiguration] + postgres : Optional[PostgreSQLDatabaseConfiguration] + scheduler + sqlite : Optional[SQLiteDatabaseConfiguration] + - - - - QuotaLimiterConfiguration - - initial_quota - name : str - period : str - quota_increase - type : Literal['user_limiter', 'cluster_limiter'] - + + + + QuotaLimiterConfiguration + + initial_quota + name : str + period : str + quota_increase + type : Literal['user_limiter', 'cluster_limiter'] + - - - - QuotaSchedulerConfiguration - - database_reconnection_count - database_reconnection_delay - period - + + + + QuotaSchedulerConfiguration + + database_reconnection_count + database_reconnection_delay + period + - - - - RHIdentityConfiguration - - required_entitlements : Optional[list[str]] - + + + + RHIdentityConfiguration + + required_entitlements : Optional[list[str]] + + + + + + + + RagConfiguration + + inline : list[str] + tool : Optional[list[str]] + - - - - SQLiteDatabaseConfiguration - - db_path : str - + + + + SQLiteDatabaseConfiguration + + db_path : str + - - - - ServiceConfiguration - - access_log : bool - auth_enabled : bool - base_url : Optional[str] - color_log : bool - cors - host : str - port - root_path : str - tls_config - workers - - check_service_configuration() -> Self - validate_root_path(value: str) -> str - - - - - - - SolrConfiguration - - enabled : bool - offline : bool - + + + + ServiceConfiguration + + access_log : bool + auth_enabled : bool + base_url : Optional[str] + color_log : bool + cors + host : str + port + root_path : str + tls_config + workers + + check_service_configuration() -> Self + validate_root_path(value: str) -> str - - - - SplunkConfiguration - - enabled : bool - index : Optional[str] - source : str - timeout - token_path : Optional[FilePath] - url : Optional[str] - verify_ssl : bool - - check_splunk_configuration() -> Self + + + + SplunkConfiguration + + enabled : bool + index : Optional[str] + source : str + timeout + token_path : Optional[FilePath] + url : Optional[str] + verify_ssl : bool + + check_splunk_configuration() -> Self - - - - TLSConfiguration - - tls_certificate_path : Optional[FilePath] - tls_key_password : Optional[FilePath] - tls_key_path : Optional[FilePath] - - check_tls_configuration() -> Self + + + + TLSConfiguration + + tls_certificate_path : Optional[FilePath] + tls_key_password : Optional[FilePath] + tls_key_path : Optional[FilePath] + + check_tls_configuration() -> Self - - - - UserDataCollection - - feedback_enabled : bool - feedback_storage : Optional[str] - transcripts_enabled : bool - transcripts_storage : Optional[str] - - check_storage_location_is_set_when_needed() -> Self + + + + UserDataCollection + + feedback_enabled : bool + feedback_storage : Optional[str] + transcripts_enabled : bool + transcripts_storage : Optional[str] + + check_storage_location_is_set_when_needed() -> Self - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + + + + + - - + + - - + + - - + + - - + + - - + + + + + + + - - + + - - - - - - - + + - - + + - - + + - - + + - - - a2a_state + + + a2a_state - - - authentication + + + authentication - - - cors + + + cors - - - conversation_cache + + + conversation_cache - - - custom_profile + + + custom_profile - - - database + + + database - - - inference + + + inference - - - operator + + + operator - - - jwt_configuration + + + jwt_configuration - - - llama_stack + + + llama_stack + + + + + + okp - - - quota_handlers + + + quota_handlers - - - scheduler + + + scheduler + + + + + + rag - - - sqlite + + + sqlite - - - service + + + service - - - tls_config + + + tls_config - - - user_data_collection + + + user_data_collection - + diff --git a/docs/openapi.md b/docs/openapi.md index e1df8b8c6..8c4f77d8a 100644 --- a/docs/openapi.md +++ b/docs/openapi.md @@ -3804,6 +3804,7 @@ BYOK (Bring Your Own Knowledge) RAG configuration. | embedding_dimension | integer | Dimensionality of embedding vectors. | | vector_db_id | string | Vector database identification. | | db_path | string | Path to RAG database. | +| score_multiplier | number | Multiplier applied to relevance scores from this vector store. Used to weight results when querying multiple knowledge sources. Values > 1 boost this store's results; values < 1 reduce them. | ## CORSConfiguration @@ -3868,7 +3869,8 @@ Global service configuration. | azure_entra_id | | | | splunk | | Splunk HEC configuration for sending telemetry events. | | deployment_environment | string | Deployment environment name (e.g., 'development', 'staging', 'production'). Used in telemetry events. | -| solr | | Configuration for Solr vector search operations. | +| rag | | Configuration for all RAG strategies (inline and tool-based). | +| okp | | OKP provider settings. Only used when 'okp' is listed in rag.inline or rag.tool. | ## ConfigurationResponse @@ -4523,12 +4525,14 @@ Model representing a message in a conversation turn. Attributes: content: The message content. type: The type of message. + referenced_documents: Optional list of documents referenced in an assistant response. | Field | Type | Description | |-------|------|-------------| | content | string | The message content | | type | string | The type of message | +| referenced_documents | | List of documents referenced in the response (assistant messages only) | ## ModelContextProtocolServer @@ -4622,6 +4626,21 @@ Defines the configuration for the supported OAuth 2.0 flows. | password | | | +## OkpConfiguration + + +OKP (Offline Knowledge Portal) provider configuration. + +Controls provider-specific behaviour for the OKP vector store. +Only relevant when ``"okp"`` is listed in ``rag.inline`` or ``rag.tool``. + + +| Field | Type | Description | +|-------|------|-------------| +| offline | boolean | When True, use parent_id for OKP chunk source URLs. When False, use reference_url for chunk source URLs. | +| chunk_filter_query | string | OKP filter query applied to every OKP search request. Defaults to 'is_chunk:true' to restrict results to chunk documents. To add extra constraints, extend the expression using boolean syntax, e.g. 'is_chunk:true AND product:*openshift*'. | + + ## OpenIdConnectSecurityScheme @@ -4769,7 +4788,7 @@ Example: | generate_topic_summary | | Whether to generate topic summary for new conversations | | media_type | | Media type for the response format | | vector_store_ids | | Optional list of specific vector store IDs to query for RAG. If not provided, all available vector stores will be queried. | -| shield_ids | | Optional list of safety shield IDs to apply. If None, all configured shields are used. If provided, must contain at least one valid shield ID (empty list raises 422 error). | +| shield_ids | | Optional list of safety shield IDs to apply. If None, all configured shields are used. | | solr | | Solr-specific query parameters including filter queries | @@ -4938,6 +4957,28 @@ Red Hat Identity authentication configuration. | required_entitlements | | List of all required entitlements. | +## RagConfiguration + + +RAG strategy configuration. + +Controls which RAG sources are used for inline and tool-based retrieval. + +Each strategy lists RAG IDs to include. The special ID ``"okp"`` defined in constants, +activates the OKP provider; all other IDs refer to entries in ``byok_rag``. + +Backward compatibility: + - ``inline`` defaults to ``[]`` (no inline RAG). + - ``tool`` defaults to ``None`` which means all registered vector stores + are used (identical to the previous ``tool.byok.enabled = True`` default). + + +| Field | Type | Description | +|-------|------|-------------| +| inline | array | RAG IDs whose sources are injected as context before the LLM call. Use 'okp' to enable OKP inline RAG. Empty by default (no inline RAG). | +| tool | | RAG IDs made available to the LLM as a file_search tool. Use 'okp' to include the OKP vector store. When omitted, all registered BYOK vector stores are used (backward compatibility). | + + ## ReadinessResponse @@ -5200,21 +5241,6 @@ Model representing a response to shields request. | shields | array | List of shields available | -## SolrConfiguration - - -Solr configuration for vector search queries. - -Controls whether to use offline or online mode when building document URLs -from vector search results, and enables/disables Solr vector IO functionality. - - -| Field | Type | Description | -|-------|------|-------------| -| enabled | boolean | When True, enables Solr vector IO functionality for vector search queries. When False, disables Solr vector search processing. | -| offline | boolean | When True, use parent_id for chunk source URLs. When False, use reference_url for chunk source URLs. | - - ## SplunkConfiguration