ChernovAndrei commited on
Commit
9523e3c
Β·
1 Parent(s): 87f3cb8

added diagram

Browse files
Files changed (2) hide show
  1. README.md +135 -72
  2. diagram.svg +2 -0
README.md CHANGED
@@ -24,78 +24,141 @@ In this demo, we demonstrate how to build such a system. To showcase its ability
24
 
25
  The system follows a multi-stage pipeline that processes movie data and user current preferences to generate personalized recommendations:
26
 
27
- ```mermaid
28
- graph TD
29
- %% ========================
30
- %% Data Preparation Section
31
- %% ========================
32
- A["πŸ“½οΈ Movie Titles Dataset"] --> B["Mistral LLM Embedding<br/>(Text Representation)"]
33
- B --> C["Graph Convolution Layers<br/>(Relationship Learning)"]
34
- C --> D["πŸ”— Graph-Enhanced Embeddings"]
35
-
36
- %% ========================
37
- %% User Input Section
38
- %% ========================
39
- F["🎬 User's Liked Movies"] --> G["User Preference Profile<br/>(Average of Graph-Enhanced<br/>Movie Embeddings)"]
40
- H["πŸ” Natural Language Query<br/>(e.g. 'funny sci-fi movies')"] --> I["Query Embedding"]
41
- G --> J["🧩 Combined User Vector"]
42
- I --> J
43
-
44
- %% ========================
45
- %% System Flow
46
- %% ========================
47
- D --> K["πŸ“Š Similarity Matching"]
48
- J --> K
49
- K --> L["πŸ† Top 100 Candidates"]
50
- L --> M["πŸ€– AI Agent Ranking<br/>(Context-Aware Filtering)"]
51
- M --> N["🎯 Final Recommendations<br/>(Top 10 Movies)"]
52
-
53
- %% ========================
54
- %% Visual Grouping
55
- %% ========================
56
- subgraph "Data Preparation Pipeline"
57
- A
58
- B
59
- C
60
- D
61
- end
62
-
63
- subgraph "User Understanding"
64
- F
65
- H
66
- G
67
- I
68
- J
69
- end
70
-
71
- subgraph "Two-Stage Retrieval"
72
- K
73
- L
74
- end
75
-
76
- subgraph "Intelligent Ranking"
77
- M
78
- N
79
- end
80
-
81
- %% ========================
82
- %% Styling
83
- %% ========================
84
- style A fill:#e1f5fe,stroke:#039be5
85
- style N fill:#c8e6c9,stroke:#2e7d32
86
- style K fill:#fff3e0,stroke:#fb8c00
87
- style M fill:#fce4ec,stroke:#e91e63
88
-
89
- classDef data fill:#e1f5fe,stroke:#039be5
90
- classDef result fill:#c8e6c9,stroke:#2e7d32
91
- classDef process fill:#fff3e0,stroke:#fb8c00
92
- classDef ai fill:#fce4ec,stroke:#e91e63
93
-
94
- class A data
95
- class N result
96
- class K,L process
97
- class M ai
98
- ```
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
99
 
100
  ### Pipeline Stages
101
 
 
24
 
25
  The system follows a multi-stage pipeline that processes movie data and user current preferences to generate personalized recommendations:
26
 
27
+ [//]: # (```mermaid)
28
+
29
+ [//]: # (graph TD)
30
+
31
+ [//]: # ( %% ========================)
32
+
33
+ [//]: # ( %% Data Preparation Section)
34
+
35
+ [//]: # ( %% ========================)
36
+
37
+ [//]: # ( A["πŸ“½οΈ Movie Titles Dataset"] --> B["Mistral LLM Embedding<br/>&#40;Text Representation&#41;"])
38
+
39
+ [//]: # ( B --> C["Graph Convolution Layers<br/>&#40;Relationship Learning&#41;"])
40
+
41
+ [//]: # ( C --> D["πŸ”— Graph-Enhanced Embeddings"])
42
+
43
+ [//]: # ( )
44
+ [//]: # ( %% ========================)
45
+
46
+ [//]: # ( %% User Input Section)
47
+
48
+ [//]: # ( %% ========================)
49
+
50
+ [//]: # ( F["🎬 User's Liked Movies"] --> G["User Preference Profile<br/>&#40;Average of Graph-Enhanced<br/>Movie Embeddings&#41;"])
51
+
52
+ [//]: # ( H["πŸ” Natural Language Query<br/>&#40;e.g. 'funny sci-fi movies'&#41;"] --> I["Query Embedding"])
53
+
54
+ [//]: # ( G --> J["🧩 Combined User Vector"])
55
+
56
+ [//]: # ( I --> J)
57
+
58
+ [//]: # ( )
59
+ [//]: # ( %% ========================)
60
+
61
+ [//]: # ( %% System Flow)
62
+
63
+ [//]: # ( %% ========================)
64
+
65
+ [//]: # ( D --> K["πŸ“Š Similarity Matching"])
66
+
67
+ [//]: # ( J --> K)
68
+
69
+ [//]: # ( K --> L["πŸ† Top 100 Candidates"])
70
+
71
+ [//]: # ( L --> M["πŸ€– AI Agent Ranking<br/>&#40;Context-Aware Filtering&#41;"])
72
+
73
+ [//]: # ( M --> N["🎯 Final Recommendations<br/>&#40;Top 10 Movies&#41;"])
74
+
75
+ [//]: # ( )
76
+ [//]: # ( %% ========================)
77
+
78
+ [//]: # ( %% Visual Grouping)
79
+
80
+ [//]: # ( %% ========================)
81
+
82
+ [//]: # ( subgraph "Data Preparation Pipeline")
83
+
84
+ [//]: # ( A)
85
+
86
+ [//]: # ( B)
87
+
88
+ [//]: # ( C)
89
+
90
+ [//]: # ( D)
91
+
92
+ [//]: # ( end)
93
+
94
+ [//]: # ( )
95
+ [//]: # ( subgraph "User Understanding")
96
+
97
+ [//]: # ( F)
98
+
99
+ [//]: # ( H)
100
+
101
+ [//]: # ( G)
102
+
103
+ [//]: # ( I)
104
+
105
+ [//]: # ( J)
106
+
107
+ [//]: # ( end)
108
+
109
+ [//]: # ( )
110
+ [//]: # ( subgraph "Two-Stage Retrieval")
111
+
112
+ [//]: # ( K)
113
+
114
+ [//]: # ( L)
115
+
116
+ [//]: # ( end)
117
+
118
+ [//]: # ( )
119
+ [//]: # ( subgraph "Intelligent Ranking")
120
+
121
+ [//]: # ( M)
122
+
123
+ [//]: # ( N)
124
+
125
+ [//]: # ( end)
126
+
127
+ [//]: # ( )
128
+ [//]: # ( %% ========================)
129
+
130
+ [//]: # ( %% Styling)
131
+
132
+ [//]: # ( %% ========================)
133
+
134
+ [//]: # ( style A fill:#e1f5fe,stroke:#039be5)
135
+
136
+ [//]: # ( style N fill:#c8e6c9,stroke:#2e7d32)
137
+
138
+ [//]: # ( style K fill:#fff3e0,stroke:#fb8c00)
139
+
140
+ [//]: # ( style M fill:#fce4ec,stroke:#e91e63)
141
+
142
+ [//]: # ( )
143
+ [//]: # ( classDef data fill:#e1f5fe,stroke:#039be5)
144
+
145
+ [//]: # ( classDef result fill:#c8e6c9,stroke:#2e7d32)
146
+
147
+ [//]: # ( classDef process fill:#fff3e0,stroke:#fb8c00)
148
+
149
+ [//]: # ( classDef ai fill:#fce4ec,stroke:#e91e63)
150
+
151
+ [//]: # ( )
152
+ [//]: # ( class A data)
153
+
154
+ [//]: # ( class N result)
155
+
156
+ [//]: # ( class K,L process)
157
+
158
+ [//]: # ( class M ai)
159
+
160
+ [//]: # (```)
161
+ ![Recommendation System Diagram](./diagram.svg)
162
 
163
  ### Pipeline Stages
164
 
diagram.svg ADDED