diff --git a/modules/vector-index/pages/use-vector-indexes.adoc b/modules/vector-index/pages/use-vector-indexes.adoc index 970ab7926..a1a2cf769 100644 --- a/modules/vector-index/pages/use-vector-indexes.adoc +++ b/modules/vector-index/pages/use-vector-indexes.adoc @@ -172,7 +172,7 @@ Hyperscale Vector indexes can handle the large datasets and perform these vector === Hyperscale Vector Index Application Workflow -After you create a Hyperscale Vector index, your application follows the workflow shown in the following diagram: +To create and use a Hyperscale Vector index, your application follows the workflow shown in the following diagram: .Application Workflow with Hyperscale Vector Indexes [plantuml,hyperscale-vector-app-workflow,svg] @@ -214,7 +214,7 @@ Vector similarity searches can be added to these searches to find similar demand === Composite Vector Index Application Workflow -After you create a Composite Vector index, your application follows the workflow shown in the following diagram: +To create and use a Composite Vector index, your application follows the workflow shown in the following diagram: .Application Workflow with Composite Vector Indexes [plantuml,composite-vector-app-workflow,svg] @@ -263,7 +263,7 @@ Real estate applications can use Search Vector Indexes to find properties within === Search Vector Index Application Workflow -After you create an Search Vector Index, your application follows the workflow shown in the following diagram: +To create and use an Search Vector Index, your application follows the workflow shown in the following diagram: .Application Workflow with Search Vector Indexes [plantuml,fts-app-workflow,svg] diff --git a/modules/vector-index/partials/composite-vector-app-workflow.puml b/modules/vector-index/partials/composite-vector-app-workflow.puml index e64ef1ce6..7c9aee1d9 100644 --- a/modules/vector-index/partials/composite-vector-app-workflow.puml +++ b/modules/vector-index/partials/composite-vector-app-workflow.puml @@ -1,83 +1,72 @@ @startuml ai-app-workflow -!pragma layout smetana -!include -!include -!include -!include -!include -!include -!include -!include -!include sprite Couchbase -'title: Application Workflow with Composite Vector Indexes - -skinparam defaultTextAlignment center - -skinparam linetype ortho - -top to bottom direction - - - frame "Your Application" as APP { - card DL [ - Data - Loading - ] - card EM [ - Embedding - Models - ] - card SE [ - Search & Query Logic - ] - - DL --> EM : <$ma_numeric_1_box{scale=0.4}>Complex\nData - EM --> DL : Vectors - SE --> EM : <$ma_numeric_4_box{scale=0.4}>Complex\nData - EM --> SE : Vectors - - } - - frame "<$Couchbase{scale=0.15}> Couchbase Cluster" as CC { - database DS [ - <$Couchbase{scale=0.15,color=red}> - .. - Data - .. - Service - .. - ] - rectangle " <$Couchbase{scale=0.15}> Index Service" as IS { - card COMPOSITE [ - Composite - Vector - Index - ] - } - - rectangle "<$Couchbase{scale=0.15}> Query Service" as QS { - - } - - } - - -DL ----> DS : <$ma_numeric_2_box{scale=0.4}> Data &\nVectors -DS --> COMPOSITE : <$ma_numeric_3_box{scale=0.4}> Scalars &\nVectors - -QS --> COMPOSITE : <$ma_numeric_6_box{scale=0.4}> Scan\nRequest - -QS <-- COMPOSITE : <$ma_numeric_7_box{scale=0.4}> Index Scan\nResults - -SE ----> QS : <$ma_numeric_5_box{scale=0.4}> Queries - -QS ----> SE :<$ma_numeric_8_box{scale=0.4}> Query Results - - -@enduml +skinparam maxMessageSize 60 +skinparam roundcorner 5 +skinparam responseMessageBelowArrow true +skinparam sequenceMessageAlign left +skinparam ParticipantPadding 10 +skinparam Padding 2 +skinparam BoxPadding 20 + +box Your Application #FloralWhite +queue "Data\nLoading" as Loading +queue "Search &\nQuery Logic" as Logic +collections "Embedding\nModels" as Models +end box + +box <$Couchbase{scale=0.15}> Couchbase Cluster #FloralWhite +participant "Query\nService" as Query +participant "Data\nService" as Data +participant "Index\nService" as Index +end box + +group Load +||| +?o-> Loading +activate Loading #Maroon +autonumber "(0)" +Loading -> Models: Complex data +activate Models #GoldenRod +autonumber stop +Models -> Loading: Vectors +deactivate Models +autonumber resume +Loading -> Data: Data & vectors +deactivate Loading +activate Data #midnightblue +Data -> Index: Scalars & vectors +deactivate Data +activate Index #deepskyblue +note left of Index: Composite\nVector\nIndex +end + +group Query +' blank message to align the group boxes +autonumber stop +Loading -[#transparent]> Loading +?o-> Logic +activate Logic #IndianRed +autonumber resume +Logic -> Models: Complex data +activate Models #GoldenRod +autonumber stop +Models -> Logic: Vector +deactivate Models +autonumber resume +Logic -> Query: Query +activate Query #teal +Query -> Index: Scan request +Index -> Query: Index scan result +deactivate Index +Query -> Logic: Query results +deactivate Query +deactivate Logic +||| +end + +@enduml \ No newline at end of file diff --git a/modules/vector-index/partials/fts-vector-app-workflow.puml b/modules/vector-index/partials/fts-vector-app-workflow.puml index 800174fe4..d7948cd4d 100644 --- a/modules/vector-index/partials/fts-vector-app-workflow.puml +++ b/modules/vector-index/partials/fts-vector-app-workflow.puml @@ -1,74 +1,67 @@ @startuml ai-app-workflow -!pragma layout smetana -!include -!include -!include -!include -!include -!include -!include -!include -!include sprite Couchbase -'title: Application Workflow with Search Vector Indexes - -skinparam defaultTextAlignment center - -skinparam linetype ortho - -top to bottom direction - - - frame "Your Application" as APP { - card DL [ - Data - Loading - ] - card EM [ - Embedding - Models - ] - card SE [ - Search & Query Logic - ] - - DL --> EM : <$ma_numeric_1_box{scale=0.4}>Complex\nData - EM -d-> DL : Vectors - SE --> EM : <$ma_numeric_4_box{scale=0.4}>Complex\nData - EM --> SE : Vectors - - } - - frame "<$Couchbase{scale=0.15}> Couchbase Cluster" as CC { - database DS [ - <$Couchbase{scale=0.15,color=red}> - .. - Data - .. - Service - .. - ] - - rectangle " <$Couchbase{scale=0.15}> Search Service" as SSERV { - card SI [ - FTS Vector - Index - ] - } - - } - - -DS ----> SI : Text &\nVectors -DL ----> DS : <$ma_numeric_2_box{scale=0.4}> Data &\nVectors - -SE ----> SSERV : <$ma_numeric_5_box{scale=0.4}>Searches - -SSERV ----> SE :<$ma_numeric_6_box{scale=0.4}> Results - -@enduml +skinparam maxMessageSize 60 +skinparam roundcorner 5 +skinparam responseMessageBelowArrow true +skinparam sequenceMessageAlign left +skinparam ParticipantPadding 10 +skinparam Padding 2 +skinparam BoxPadding 50 + +box Your Application #FloralWhite +queue "Data\nLoading" as Loading +queue "Search &\nQuery Logic" as Logic +collections "Embedding\nModels" as Models +end box + +box <$Couchbase{scale=0.15}> Couchbase Cluster #FloralWhite +participant "Data\nService" as Data +participant "Search\nService" as Search +end box + +group Load +||| +?o-> Loading +activate Loading #Maroon +autonumber "(0)" +Loading -> Models: Complex data +activate Models #GoldenRod +autonumber stop +Models -> Loading: Vectors +deactivate Models +autonumber resume +Loading -> Data: Data & vectors +deactivate Loading +activate Data #midnightblue +Data -> Search: Text & vectors +deactivate Data +activate Search #LightGreen +note left of Search: Search\nVector\nIndex +end + +group Search +' blank message to align the group boxes +autonumber stop +Loading -[#transparent]> Loading +?o-> Logic +activate Logic #IndianRed +autonumber resume +Logic -> Models: Complex data +activate Models #GoldenRod +autonumber stop +Models -> Logic: Vector +deactivate Models +autonumber resume +Logic -> Search: Search +Search -> Logic:Results +deactivate Search +deactivate Logic +||| +end + +@enduml \ No newline at end of file diff --git a/modules/vector-index/partials/hyperscale-vector-app-workflow.puml b/modules/vector-index/partials/hyperscale-vector-app-workflow.puml index 59bf46d23..cb216dcf7 100644 --- a/modules/vector-index/partials/hyperscale-vector-app-workflow.puml +++ b/modules/vector-index/partials/hyperscale-vector-app-workflow.puml @@ -1,82 +1,72 @@ @startuml ai-app-workflow -!pragma layout smetana -!include -!include -!include -!include -!include -!include -!include -!include -!include sprite Couchbase -'title: Application Workflow with Hyperscale Vector Indexes - -skinparam defaultTextAlignment center - -skinparam linetype ortho - -top to bottom direction - - - frame "Your Application" as APP { - card DL [ - Data - Loading - ] - card EM [ - Embedding - Models - ] - card SE [ - Search & Query Logic - ] - - DL --> EM : <$ma_numeric_1_box{scale=0.4}>Complex\nData - EM --> DL : Vectors - SE --> EM : <$ma_numeric_4_box{scale=0.4}>Complex\nData - EM --> SE : Vectors - - } - - frame "<$Couchbase{scale=0.15}> Couchbase Cluster" as CC { - database DS [ - <$Couchbase{scale=0.15,color=red}> - .. - Data - .. - Service - .. - ] - rectangle " <$Couchbase{scale=0.15}> Index Service" as IS { - card HVI [ - Hyperscale - Vector - Index - ] - } - - rectangle "<$Couchbase{scale=0.15}> Query Service" as QS { - - } - - } - - -DL ----> DS : <$ma_numeric_2_box{scale=0.4}> Data &\nVectors -DS --> HVI : <$ma_numeric_3_box{scale=0.4}> Vectors - -QS --> HVI : <$ma_numeric_6_box{scale=0.4}> Scan\nRequest -QS <-- HVI : <$ma_numeric_7_box{scale=0.4}> Index\nScan\nResult - -SE ----> QS : <$ma_numeric_5_box{scale=0.4}>Queries - -QS ----> SE :<$ma_numeric_8_box{scale=0.4}> Query\nResults - - -@enduml +skinparam maxMessageSize 50 +skinparam roundcorner 5 +skinparam responseMessageBelowArrow true +skinparam sequenceMessageAlign left +skinparam ParticipantPadding 10 +skinparam Padding 2 +skinparam BoxPadding 20 + +box Your Application #FloralWhite +queue "Data\nLoading" as Loading +queue "Search &\nQuery Logic" as Logic +collections "Embedding\nModels" as Models +end box + +box <$Couchbase{scale=0.15}> Couchbase Cluster #FloralWhite +participant "Query\nService" as Query +participant "Data\nService" as Data +participant "Index\nService" as Index +end box + +group Load +||| +?o-> Loading +activate Loading #Maroon +autonumber "(0)" +Loading -> Models: Complex data +activate Models #GoldenRod +autonumber stop +Models -> Loading: Vectors +deactivate Models +autonumber resume +Loading -> Data: Data & vectors +deactivate Loading +activate Data #midnightblue +Data -> Index: Vectors +deactivate Data +activate Index #deepskyblue +note left of Index: Hyperscale\nVector\nIndex +end + +group Query +' blank message to align the group boxes +autonumber stop +Loading -[#transparent]> Loading +?o-> Logic +activate Logic #IndianRed +autonumber resume +Logic -> Models: Complex data +activate Models #GoldenRod +autonumber stop +Models -> Logic: Vector +deactivate Models +autonumber resume +Logic -> Query: Query +activate Query #teal +Query -> Index: Scan request +Index -> Query: Index scan result +deactivate Index +Query -> Logic: Query results +deactivate Query +deactivate Logic +||| +end + +@enduml \ No newline at end of file