Skip to content
Open
Show file tree
Hide file tree
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
209 changes: 209 additions & 0 deletions docs/devel_doc/openapi.json
Original file line number Diff line number Diff line change
Expand Up @@ -12317,6 +12317,28 @@
"title": "BYOK RAG configuration",
"description": "BYOK RAG configuration. This configuration can be used to reconfigure Llama Stack through its run.yaml configuration file"
},
"vector_store_providers": {
"items": {
"oneOf": [
{
"$ref": "#/components/schemas/FaissVectorStoreProvider"
},
{
"$ref": "#/components/schemas/PgvectorVectorStoreProvider"
}
],
"discriminator": {
"propertyName": "type",
"mapping": {
"faiss": "#/components/schemas/FaissVectorStoreProvider",
"pgvector": "#/components/schemas/PgvectorVectorStoreProvider"
}
}
},
"type": "array",
"title": "Vector store providers",
"description": "Dynamic vector-store provider capacity for runtime POST /v1/vector-stores creates. Not the same as byok_rag (static registered corpora)."
},
"a2a_state": {
"$ref": "#/components/schemas/A2AStateConfiguration",
"title": "A2A state configuration",
Expand Down Expand Up @@ -13231,6 +13253,73 @@
"title": "DetailModel",
"description": "Nested detail model for error responses."
},
"FaissVectorStoreProvider": {
"properties": {
"id": {
"type": "string",
"minLength": 1,
"title": "Provider ID",
"description": "Llama Stack vector_io provider_id. Surrounding whitespace is stripped before validation and emission."
},
"embedding_model": {
"type": "string",
"minLength": 1,
"title": "Embedding model",
"description": "Embedding model identification used for stores created against this provider."
},
"embedding_dimension": {
"type": "integer",
"exclusiveMinimum": 0.0,
"title": "Embedding dimension",
"description": "Dimensionality of embedding vectors for this provider."
},
"default": {
"type": "boolean",
"title": "Default provider",
"description": "When true, this entry drives vector_stores.default_* in the synthesized Llama Stack config. Exactly one entry must set this when vector_store_providers is non-empty.",
"default": false
},
"type": {
"type": "string",
"const": "faiss",
"title": "Provider type",
"description": "Product type for this dynamic vector-store provider.",
"default": "faiss"
},
"config": {
"$ref": "#/components/schemas/FaissVectorStoreProviderConfig",
"title": "Storage config",
"description": "FAISS storage settings for this provider."
}
},
"additionalProperties": false,
"type": "object",
"required": [
"id",
"embedding_model",
"embedding_dimension",
"config"
],
"title": "FaissVectorStoreProvider",
"description": "Dynamic FAISS vector-store provider (runtime create capacity)."
},
"FaissVectorStoreProviderConfig": {
"properties": {
"path": {
"type": "string",
"minLength": 1,
"title": "DB path",
"description": "On-disk FAISS/SQLite path for this provider."
}
},
"additionalProperties": false,
"type": "object",
"required": [
"path"
],
"title": "FaissVectorStoreProviderConfig",
"description": "Storage config for a FAISS dynamic vector-store provider."
},
"FeedbackCategory": {
"type": "string",
"enum": [
Expand Down Expand Up @@ -16680,6 +16769,126 @@
"title": "PasswordOAuthFlow",
"description": "Defines configuration details for the OAuth 2.0 Resource Owner Password flow."
},
"PgvectorVectorStoreProvider": {
"properties": {
"id": {
"type": "string",
"minLength": 1,
"title": "Provider ID",
"description": "Llama Stack vector_io provider_id. Surrounding whitespace is stripped before validation and emission."
},
"embedding_model": {
"type": "string",
"minLength": 1,
"title": "Embedding model",
"description": "Embedding model identification used for stores created against this provider."
},
"embedding_dimension": {
"type": "integer",
"exclusiveMinimum": 0.0,
"title": "Embedding dimension",
"description": "Dimensionality of embedding vectors for this provider."
},
"default": {
"type": "boolean",
"title": "Default provider",
"description": "When true, this entry drives vector_stores.default_* in the synthesized Llama Stack config. Exactly one entry must set this when vector_store_providers is non-empty.",
"default": false
},
"type": {
"type": "string",
"const": "pgvector",
"title": "Provider type",
"description": "Product type for this dynamic vector-store provider.",
"default": "pgvector"
},
"config": {
"$ref": "#/components/schemas/PgvectorVectorStoreProviderConfig",
"title": "Storage config",
"description": "pgvector connection settings for this provider."
}
},
"additionalProperties": false,
"type": "object",
"required": [
"id",
"embedding_model",
"embedding_dimension",
"config"
],
"title": "PgvectorVectorStoreProvider",
"description": "Dynamic pgvector vector-store provider (runtime create capacity)."
},
"PgvectorVectorStoreProviderConfig": {
"properties": {
"host": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "PostgreSQL host",
"description": "PostgreSQL host. Defaults to ${env.POSTGRES_HOST}."
},
"port": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "PostgreSQL port",
"description": "PostgreSQL port. Defaults to ${env.POSTGRES_PORT}."
},
"db": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "PostgreSQL database",
"description": "PostgreSQL database name. Defaults to ${env.POSTGRES_DATABASE}."
},
"user": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "PostgreSQL user",
"description": "PostgreSQL user. Defaults to ${env.POSTGRES_USER}."
},
"password": {
"anyOf": [
{
"type": "string",
"format": "password",
"writeOnly": true
},
{
"type": "null"
}
],
"title": "PostgreSQL password",
"description": "PostgreSQL password. Defaults to ${env.POSTGRES_PASSWORD}."
}
},
"additionalProperties": false,
"type": "object",
"title": "PgvectorVectorStoreProviderConfig",
"description": "Storage config for a pgvector dynamic vector-store provider."
},
"PostgreSQLDatabaseConfiguration": {
"properties": {
"host": {
Expand Down
2 changes: 2 additions & 0 deletions docs/user_doc/byok_guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -416,6 +416,8 @@ The BYOK (Bring Your Own Knowledge) feature in Lightspeed Core provides powerful

For additional support and advanced configurations, refer to:
- [RAG Configuration Guide](rag_guide.md)
- [Dynamic vector store providers](rag_guide.md#configure-dynamic-vector-store-providers) (runtime creates)
- [Configuration schema](config.md)
- [rag-content Tool Repository](https://github.com/lightspeed-core/rag-content)

Remember to regularly update your knowledge sources and monitor system performance to maintain optimal BYOK functionality.
59 changes: 59 additions & 0 deletions docs/user_doc/config.md
Original file line number Diff line number Diff line change
Expand Up @@ -247,6 +247,7 @@ Global service configuration.
| compaction | | Controls when conversation history is summarized to keep the model's input below the context window limit. Disabled by default — when disabled, requests that exceed the window continue to surface as HTTP 413. |
| approvals | | Settings for human-in-the-loop approval of MCP tool invocations |
| byok_rag | array | BYOK RAG configuration. This configuration can be used to reconfigure Llama Stack through its run.yaml configuration file |
| vector_store_providers | array | Dynamic vector-store provider capacity for runtime POST /v1/vector-stores creates. Not the same as byok_rag (static registered corpora). When non-empty, exactly one entry must set default: true. Applied in unified synthesis only. |
| a2a_state | | Configuration for A2A protocol persistent state storage. |
| quota_handlers | | Quota handlers configuration |
| azure_entra_id | | |
Expand Down Expand Up @@ -315,6 +316,33 @@ Database configuration.
| postgres | | PostgreSQL database configuration |


## FaissVectorStoreProvider


Dynamic FAISS vector-store provider (runtime create capacity).


| Field | Type | Description |
|---------------------|---------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| id | string | Llama Stack vector_io provider_id. Surrounding whitespace is stripped before validation and emission. Must match ``[a-z0-9_-]+`` and must not start with ``byok_``. |
| type | string | Product type for this dynamic vector-store provider. Must be ``faiss``. |
| embedding_model | string | Embedding model identification used for stores created against this provider. Required. |
| embedding_dimension | integer | Dimensionality of embedding vectors for this provider. Required. |
| default | boolean | When true, this entry drives vector_stores.default_* in the synthesized Llama Stack config. Exactly one entry must set this when vector_store_providers is non-empty. |
| config | | FAISS storage settings for this provider. |


## FaissVectorStoreProviderConfig


Storage config for a FAISS dynamic vector-store provider.


| Field | Type | Description |
|-------|--------|----------------------------------------------|
| path | string | On-disk FAISS/SQLite path for this provider. |


## InMemoryCacheConfig


Expand Down Expand Up @@ -489,6 +517,37 @@ Only relevant when ``"okp"`` is listed in ``rag.inline`` or ``rag.tool``.
| chunk_filter_query | string | Additional OKP filter query applied to every OKP search request. Use Solr boolean syntax, e.g. 'product:ansible AND product:*openshift*'. |


## PgvectorVectorStoreProvider


Dynamic pgvector vector-store provider (runtime create capacity).


| Field | Type | Description |
|---------------------|---------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| id | string | Llama Stack vector_io provider_id. Surrounding whitespace is stripped before validation and emission. Must match ``[a-z0-9_-]+`` and must not start with ``byok_``. |
| type | string | Product type for this dynamic vector-store provider. Must be ``pgvector``. |
| embedding_model | string | Embedding model identification used for stores created against this provider. Required. |
| embedding_dimension | integer | Dimensionality of embedding vectors for this provider. Required. |
| default | boolean | When true, this entry drives vector_stores.default_* in the synthesized Llama Stack config. Exactly one entry must set this when vector_store_providers is non-empty. |
| config | | pgvector connection settings for this provider. |


## PgvectorVectorStoreProviderConfig


Storage config for a pgvector dynamic vector-store provider.


| Field | Type | Description |
|----------|--------|-----------------------------------------------------------------|
| host | string | PostgreSQL host. Defaults to ${env.POSTGRES_HOST}. |
| port | string | PostgreSQL port. Defaults to ${env.POSTGRES_PORT}. |
| db | string | PostgreSQL database name. Defaults to ${env.POSTGRES_DATABASE}. |
| user | string | PostgreSQL user. Defaults to ${env.POSTGRES_USER}. |
| password | string | PostgreSQL password. Defaults to ${env.POSTGRES_PASSWORD}. |


## PostgreSQLDatabaseConfiguration


Expand Down
Loading
Loading