Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion .ai/spec/what/rag.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@ The RAG subsystem augments LLM responses with relevant documentation so that ans

9. Tool calling is enabled when Solr hybrid is configured, even without MCP servers. This ensures OKP retrieval works in non-agentic deployments.

10. [PLANNED: OLS-3432] The `search_openshift_documentation` tool must support dynamic product filtering via an optional `additional_products` argument. At startup, available OpenShift-related products are discovered from Solr (facet query on `product:*openshift*`), excluding `openshift_container_platform` and ROSA products (`red_hat_openshift_service_on_aws`, `red_hat_openshift_service_on_aws_classic_architecture`). The discovered product names are listed in the tool description so the LLM can select relevant products per query. When `additional_products` is provided, the Solr `fq` becomes a compound OR: OCP (version-pinned) + each additional product (no version filter — layered products use independent versioning). Invalid product names are rejected. When `additional_products` is absent or empty, the filter is the static baseline (OCP-only, or OCP+ROSA on ROSA clusters). ROSA products are never in the dynamic list — they are handled by the static filter from OLS-1894.

## Behavioral Rules — BYOK Retrieval (Customer Content)

1. BYOK FAISS vector indexes are built offline from customer-supplied Markdown documentation. Indexes are loaded from the local filesystem at startup and are never built or modified at runtime.
Expand Down Expand Up @@ -124,5 +126,5 @@ Customers can supply their own documentation as additional RAG indexes, so that
- [PLANNED: OLS-1872] BYOK — internal web source integration (Git, Confluence).
- [PLANNED: OLS-1812] Add embedding model path to CRD for each index, enabling per-index embedding model configuration through the operator.
- [PENDING] OKP server-side embedding — if OKP team confirms, the granite model can be removed from the service image.
- [PLANNED] Multi-product OKP filtering — product-scoped retrieval for OpenStack and other layered products.
- [PLANNED: OLS-3432] Dynamic product filtering — LLM-driven selection of additional OpenShift-related products (Pipelines, GitOps, Service Mesh, etc.) via tool argument. Depends on OLS-3310.
- [PLANNED] Multi-version OKP support — query specific OCP version documentation.