You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
change(knowledge): make vector the default search mode, hybrid opt-in
Every existing caller — workflow block, v1 API, copilot, guardrail RAG — keeps
its current ranking. Hybrid retrieval is now requested explicitly via
`searchMode: 'hybrid'`.
Also routes the copilot knowledge tool through the shared
`executeKnowledgeSearch` dispatch so all four callers share one retrieval path,
and documents `searchMode` on the public v1 search endpoint in the OpenAPI spec.
Copy file name to clipboardExpand all lines: apps/docs/openapi.json
+9-2Lines changed: 9 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -6040,7 +6040,7 @@
6040
6040
"post": {
6041
6041
"operationId": "searchKnowledgeBase",
6042
6042
"summary": "Search Knowledge Base",
6043
-
"description": "Perform vector similarity search across one or more knowledge bases. Supports semantic search via query text, tag-based filtering, or a combination of both.",
6043
+
"description": "Search across one or more knowledge bases. Supports semantic search via query text, tag-based filtering, or a combination of both. Set `searchMode` to `hybrid` to additionally run a full-text keyword leg and fuse it with the semantic results.",
6044
6044
"tags": ["Knowledge Bases"],
6045
6045
"x-codeSamples": [
6046
6046
{
@@ -6095,14 +6095,21 @@
6095
6095
"items": {
6096
6096
"$ref": "#/components/schemas/TagFilter"
6097
6097
}
6098
+
},
6099
+
"searchMode": {
6100
+
"type": "string",
6101
+
"enum": ["vector", "hybrid"],
6102
+
"default": "vector",
6103
+
"description": "Retrieval strategy. `vector` ranks purely on embedding similarity. `hybrid` also runs a full-text keyword search and fuses the two rankings by reciprocal rank, which retrieves exact tokens — error codes, ticket keys, identifiers, rare product names — that embeddings alone rank poorly. Ignored when only tagFilters are provided."
0 commit comments