Skip to content

Commit 00d1dfc

Browse files
committed
Merge branch 'main' of https://github.com/openviglet/docs
2 parents 6545803 + 7de31ec commit 00d1dfc

45 files changed

Lines changed: 9390 additions & 1004 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

diagrams/turing-agent-flow.mmd

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
%%{init: {'theme': 'base', 'themeVariables': {'fontSize': '14px'}}}%%
2+
sequenceDiagram
3+
participant User
4+
participant Turing as Turing ES
5+
participant LLM as LLM Instance
6+
participant Tool as Tool / MCP Server
7+
8+
User->>Turing: Send message
9+
Turing->>LLM: User message + system prompt + tool definitions
10+
loop Reasoning chain
11+
LLM->>Turing: Request tool call (tool name + arguments)
12+
Turing->>Tool: Execute tool
13+
Tool-->>Turing: Tool result
14+
Turing->>LLM: Tool result
15+
end
16+
LLM-->>Turing: Final response
17+
Turing-->>User: Streamed response (SSE)

diagrams/turing-architecture.mmd

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
%%{init: {'theme': 'base', 'themeVariables': {'fontSize': '14px'}}}%%
2+
graph TB
3+
subgraph DumontDEP ["Viglet Dumont DEP (External)"]
4+
CON["Connectors\nWebCrawler · Database · FileSystem\nAEM/WEM · WordPress"]
5+
end
6+
7+
subgraph TuringApp ["Turing ES Application"]
8+
API[REST & GraphQL API]
9+
Q[Apache Artemis\nMessage Queue]
10+
IDX[Indexing Pipeline\n+ Merge Provider]
11+
SN[Semantic Navigation\nSearch Engine]
12+
GENAI[GenAI / RAG Engine\n+ Tool Calling + AI Agents]
13+
ADMIN[Admin Console]
14+
end
15+
16+
subgraph Backends ["Backends & Storage"]
17+
SOLR[Apache Solr + Zookeeper]
18+
EMB[Embedding Stores\nChromaDB · PgVector · Milvus]
19+
DB[(Database\nMariaDB / MySQL / PostgreSQL)]
20+
MONGO[MongoDB\nApplication Logs]
21+
MINIO[MinIO\nAsset Store]
22+
end
23+
24+
LLM["LLM Providers\nClaude · OpenAI · Azure OpenAI\nGemini · Ollama"]
25+
KC[Keycloak\nOAuth2 / OIDC]
26+
CLIENTS["Clients\nJS SDK · Java SDK · Custom Apps"]
27+
28+
CON -->|POST via REST API| API
29+
API -->|Enqueue indexing job| Q
30+
Q --> IDX
31+
IDX --> SOLR
32+
IDX --> EMB
33+
IDX --> DB
34+
MINIO -->|RAG assets| IDX
35+
SN --> SOLR
36+
GENAI --> EMB
37+
GENAI --> LLM
38+
API --> SN
39+
API --> GENAI
40+
ADMIN --> API
41+
ADMIN -->|File/folder UI| MINIO
42+
IDX -.->|Application logs| MONGO
43+
KC -->|OAuth2 / OIDC| API
44+
CLIENTS --> API

diagrams/turing-chat-layout.mmd

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
%%{init: {'theme': 'base', 'themeVariables': {'fontSize': '14px'}}}%%
2+
graph TB
3+
A[Header] --> B[Tab navigation — Chat · Semantic Nav · AI Agents]
4+
A --> C[LLM model selector]
5+
A --> D[New Chat button]
6+
A --> E[Dark mode toggle]
7+
A --> F[Session history button]
8+
G[Message area] --> H[User messages with avatar]
9+
G --> I[Assistant messages with avatar + copy button]
10+
G --> J[Rich content — Markdown, code, D2 diagrams, HTML sandbox]
11+
K[Input area] --> L[Multiline textarea]
12+
K --> M[File drag-and-drop]
13+
K --> N[Send button — Enter to submit]
14+
O[Context Bar] --> P[Token counter]
15+
O --> Q[Context window % bar]
16+
O --> R[Compact button]

diagrams/turing-indexing-flow.mmd

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
%%{init: {'theme': 'base', 'themeVariables': {'fontSize': '13px'}}}%%
2+
sequenceDiagram
3+
participant Dumont as Viglet Dumont DEP<br/>(Connector)
4+
participant API as Turing ES REST API
5+
participant Artemis as Apache Artemis Queue
6+
participant Pipeline as Indexing Pipeline
7+
participant SNSite as SN Site Configuration
8+
participant Merge as Merge Provider Engine
9+
participant Solr as Apache Solr
10+
participant DB as Database
11+
participant Emb as Embedding Store<br/>(Chroma / PgVector / Milvus)
12+
13+
Dumont->>API: POST document to SN Site
14+
API->>SNSite: Load site configuration<br/>(fields, facets, search behavior, spotlights)
15+
SNSite-->>API: Site config
16+
API->>Artemis: Enqueue indexing job (async)
17+
Artemis->>Pipeline: Deliver job
18+
19+
Pipeline->>Merge: Check Merge Provider rules<br/>for this site and document
20+
alt Merge rule matched
21+
Merge->>Solr: Fetch existing document by join key
22+
Solr-->>Merge: Existing document fields
23+
Merge-->>Pipeline: Merged document<br/>(overwrite configured fields)
24+
else No merge rule
25+
Merge-->>Pipeline: Document unchanged
26+
end
27+
28+
Pipeline->>Solr: Index document with mapped fields and facets
29+
alt Document matches a Spotlight
30+
Pipeline->>DB: Persist spotlight content<br/>(title, description, URL, position)
31+
end
32+
Pipeline->>Emb: Store vector embedding<br/>(if GenAI enabled for this site)

diagrams/turing-rag-flow.mmd

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
%%{init: {'theme': 'base', 'themeVariables': {'fontSize': '14px'}}}%%
2+
sequenceDiagram
3+
participant User
4+
participant Chat as Chat / AI Agent
5+
participant LLM as LLM Instance
6+
participant Emb as Embedding Store
7+
participant RAGTool as RAG Tool Calling
8+
participant SN as Semantic Navigation
9+
10+
User->>Chat: Question or request
11+
Chat->>LLM: Send message with context
12+
LLM->>RAGTool: Call search_knowledge_base(query)
13+
RAGTool->>Emb: Vector similarity search<br/>(top-10, threshold 0.7)
14+
Emb-->>RAGTool: Relevant document chunks
15+
RAGTool-->>LLM: Retrieved context
16+
LLM->>SN: Call search_site(site, query) [optional]
17+
SN-->>LLM: Search results
18+
LLM-->>Chat: Generated response grounded in retrieved content
19+
Chat-->>User: Final response

diagrams/turing-search-flow.mmd

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
%%{init: {'theme': 'base', 'themeVariables': {'fontSize': '13px'}}}%%
2+
sequenceDiagram
3+
participant Client
4+
participant API as REST API
5+
participant SNProcess as TurSNSearchProcess
6+
participant Plugin as Search Engine Plugin
7+
participant Solr as Apache Solr
8+
participant Spotlight as Spotlight Engine
9+
participant TR as Targeting Rules Engine
10+
participant Metrics as Metrics Logger
11+
12+
Client->>API: GET /api/sn/{siteName}/search?q=...&profile attributes
13+
API->>SNProcess: search(context)
14+
15+
SNProcess->>SNProcess: Validate site configuration
16+
SNProcess->>TR: Translate profile attributes<br/>into Solr filter queries
17+
TR-->>SNProcess: Additional filter queries
18+
19+
SNProcess->>Plugin: Select plugin (Solr / ES / Lucene)
20+
Plugin->>Solr: Execute query<br/>+ facets + targeting filter queries
21+
Solr-->>Plugin: Filtered result set + facet counts
22+
Plugin-->>SNProcess: Structured results
23+
24+
SNProcess->>SNProcess: Enrich facets<br/>Map fields<br/>Apply highlighting
25+
26+
SNProcess->>Spotlight: Check for spotlight term match
27+
Spotlight-->>SNProcess: Inject curated documents<br/>at configured positions in response
28+
29+
SNProcess->>Metrics: Log query + result count (async)
30+
31+
SNProcess-->>API: Assembled response<br/>(results + facets + spotlights + locales + spellCheck + similar)
32+
API-->>Client: JSON response
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
%%{init: {'theme': 'base', 'themeVariables': {'fontSize': '14px'}}}%%
2+
sequenceDiagram
3+
participant Client
4+
participant API as TurSNSearchProcess
5+
participant Builder as TurSolrQueryBuilder
6+
participant Rules as TurSNTargetingRules
7+
participant Solr
8+
9+
Client->>API: POST /api/sn/{siteName}/search<br/>{ targetingRules / targetingRulesWithConditionAND / OR }
10+
API->>Builder: Format values (add quotes if needed)
11+
Builder->>Rules: Build filter query from rule type
12+
Rules-->>Builder: Solr fq clause (AND or OR logic)
13+
Builder->>Solr: Main query + fq (targeting filter)
14+
Solr-->>Client: Filtered results
15+
API->>API: Record applied rules in sn_site_metric_access_trs

0 commit comments

Comments
 (0)