read-only demo

Videos Akm1sqvWG4A

Bypassing the Multimodal Tax: Hybrid RAG, SQL RRF & UI Telemetry - Abed Matini, Ogilvy

index_state ready data_status ok

AI Engineer· published 2026-06-28· 0:45:47· en-US· indexed 2026-08-11 07:48

Open on YouTube

Scene timeline

  1. Shot 0, 0:00 to 0:33, 1 of 1 keyframes kept
  2. Shot 1, 0:33 to 1:06, 1 of 1 keyframes kept
  3. Shot 2, 1:06 to 1:35, 1 of 1 keyframes kept
  4. Shot 3, 1:35 to 2:05, 1 of 1 keyframes kept
  5. Shot 4, 2:05 to 2:35, 0 of 1 keyframes kept
  6. Shot 5, 2:35 to 3:22, 0 of 1 keyframes kept
  7. Shot 6, 3:22 to 3:32, 1 of 1 keyframes kept
  8. Shot 7, 3:32 to 3:38, 0 of 1 keyframes kept
  9. Shot 8, 3:38 to 3:53, 0 of 1 keyframes kept
  10. Shot 9, 3:53 to 4:02, 0 of 1 keyframes kept
  11. Shot 10, 4:02 to 4:04, 0 of 1 keyframes kept
  12. Shot 11, 4:04 to 4:31, 0 of 1 keyframes kept
  13. Shot 12, 4:31 to 4:57, 0 of 1 keyframes kept
  14. Shot 13, 4:57 to 5:23, 0 of 1 keyframes kept
  15. Shot 14, 5:23 to 5:50, 0 of 1 keyframes kept
  16. Shot 15, 5:50 to 6:15, 0 of 1 keyframes kept
  17. Shot 16, 6:15 to 6:41, 0 of 1 keyframes kept
  18. Shot 17, 6:41 to 7:06, 0 of 1 keyframes kept
  19. Shot 18, 7:06 to 7:32, 0 of 1 keyframes kept
  20. Shot 19, 7:32 to 7:57, 0 of 1 keyframes kept
  21. Shot 20, 7:57 to 8:23, 0 of 1 keyframes kept
  22. Shot 21, 8:23 to 8:48, 0 of 1 keyframes kept
  23. Shot 22, 8:48 to 9:14, 0 of 1 keyframes kept
  24. Shot 23, 9:14 to 9:39, 0 of 1 keyframes kept
  25. Shot 24, 9:39 to 10:12, 0 of 1 keyframes kept
  26. Shot 25, 10:12 to 10:44, 0 of 1 keyframes kept
  27. Shot 26, 10:44 to 10:58, 0 of 1 keyframes kept
  28. Shot 27, 10:58 to 11:03, 1 of 1 keyframes kept
  29. Shot 28, 11:03 to 11:13, 0 of 1 keyframes kept
  30. Shot 29, 11:13 to 11:14, 1 of 1 keyframes kept
  31. Shot 30, 11:14 to 11:15, 1 of 1 keyframes kept
  32. Shot 31, 11:15 to 11:16, 0 of 1 keyframes kept
  33. Shot 32, 11:16 to 11:34, 0 of 1 keyframes kept
  34. Shot 33, 11:34 to 11:38, 1 of 1 keyframes kept
  35. Shot 34, 11:38 to 11:43, 1 of 1 keyframes kept
  36. Shot 35, 11:43 to 11:44, 0 of 1 keyframes kept
  37. Shot 36, 11:44 to 11:45, 0 of 1 keyframes kept
  38. Shot 37, 11:45 to 11:46, 1 of 1 keyframes kept
  39. Shot 38, 11:46 to 11:53, 1 of 1 keyframes kept
  40. Shot 39, 11:53 to 11:54, 1 of 1 keyframes kept
  41. Shot 40, 11:54 to 11:55, 1 of 1 keyframes kept
  42. Shot 41, 11:55 to 12:10, 0 of 1 keyframes kept
  43. Shot 42, 12:10 to 12:13, 0 of 1 keyframes kept
  44. Shot 43, 12:13 to 12:16, 0 of 1 keyframes kept
  45. Shot 44, 12:16 to 12:20, 0 of 1 keyframes kept
  46. Shot 45, 12:20 to 12:25, 1 of 1 keyframes kept
  47. Shot 46, 12:25 to 12:29, 0 of 1 keyframes kept
  48. Shot 47, 12:29 to 12:33, 0 of 1 keyframes kept
  49. Shot 48, 12:33 to 12:37, 1 of 1 keyframes kept
  50. Shot 49, 12:37 to 12:39, 1 of 1 keyframes kept
  51. Shot 50, 12:39 to 12:42, 1 of 1 keyframes kept
  52. Shot 51, 12:42 to 12:43, 0 of 1 keyframes kept
  53. Shot 52, 12:43 to 12:45, 1 of 1 keyframes kept
  54. Shot 53, 12:45 to 12:59, 0 of 1 keyframes kept
  55. Shot 54, 12:59 to 13:02, 1 of 1 keyframes kept
  56. Shot 55, 13:02 to 13:07, 0 of 1 keyframes kept
  57. Shot 56, 13:07 to 13:24, 1 of 1 keyframes kept
  58. Shot 57, 13:24 to 13:27, 0 of 1 keyframes kept
  59. Shot 58, 13:27 to 13:28, 1 of 1 keyframes kept
  60. Shot 59, 13:28 to 13:30, 1 of 1 keyframes kept
  61. Shot 60, 13:30 to 13:36, 0 of 1 keyframes kept
  62. Shot 61, 13:36 to 13:40, 1 of 1 keyframes kept
  63. Shot 62, 13:40 to 13:50, 0 of 1 keyframes kept
  64. Shot 63, 13:50 to 13:56, 0 of 1 keyframes kept
  65. Shot 64, 13:56 to 14:00, 0 of 1 keyframes kept
  66. Shot 65, 14:00 to 14:02, 1 of 1 keyframes kept
  67. Shot 66, 14:02 to 14:04, 1 of 1 keyframes kept
  68. Shot 67, 14:04 to 14:07, 1 of 1 keyframes kept
  69. Shot 68, 14:07 to 14:52, 1 of 1 keyframes kept
  70. Shot 69, 14:52 to 15:05, 1 of 1 keyframes kept
  71. Shot 70, 15:05 to 15:06, 0 of 1 keyframes kept
  72. Shot 71, 15:06 to 15:11, 0 of 1 keyframes kept
  73. Shot 72, 15:11 to 15:26, 1 of 1 keyframes kept
  74. Shot 73, 15:26 to 15:57, 1 of 1 keyframes kept
  75. Shot 74, 15:57 to 16:13, 0 of 1 keyframes kept
  76. Shot 75, 16:13 to 16:50, 0 of 1 keyframes kept
  77. Shot 76, 16:50 to 16:52, 0 of 1 keyframes kept
  78. Shot 77, 16:52 to 16:53, 1 of 1 keyframes kept
  79. Shot 78, 16:53 to 17:02, 1 of 1 keyframes kept
  80. Shot 79, 17:02 to 17:11, 0 of 1 keyframes kept
  81. Shot 80, 17:11 to 17:13, 0 of 1 keyframes kept
  82. Shot 81, 17:13 to 17:27, 1 of 1 keyframes kept
  83. Shot 82, 17:27 to 18:16, 0 of 1 keyframes kept
  84. Shot 83, 18:16 to 18:19, 1 of 1 keyframes kept
  85. Shot 84, 18:19 to 18:20, 1 of 1 keyframes kept
  86. Shot 85, 18:20 to 18:25, 1 of 1 keyframes kept
  87. Shot 86, 18:25 to 18:38, 0 of 1 keyframes kept
  88. Shot 87, 18:38 to 18:42, 1 of 1 keyframes kept
  89. Shot 88, 18:42 to 18:45, 1 of 1 keyframes kept
  90. Shot 89, 18:45 to 18:48, 1 of 1 keyframes kept
  91. Shot 90, 18:48 to 18:49, 0 of 1 keyframes kept
  92. Shot 91, 18:49 to 18:51, 0 of 1 keyframes kept
  93. Shot 92, 18:51 to 18:52, 1 of 1 keyframes kept
  94. Shot 93, 18:52 to 19:02, 0 of 1 keyframes kept
  95. Shot 94, 19:02 to 19:03, 1 of 1 keyframes kept
  96. Shot 95, 19:03 to 19:08, 1 of 1 keyframes kept
  97. Shot 96, 19:08 to 19:11, 0 of 1 keyframes kept
  98. Shot 97, 19:11 to 19:14, 1 of 1 keyframes kept
  99. Shot 98, 19:14 to 19:15, 0 of 1 keyframes kept
  100. Shot 99, 19:15 to 19:18, 0 of 1 keyframes kept
  101. Shot 100, 19:18 to 19:23, 0 of 1 keyframes kept
  102. Shot 101, 19:23 to 19:26, 1 of 1 keyframes kept
  103. Shot 102, 19:26 to 20:06, 0 of 1 keyframes kept
  104. Shot 103, 20:06 to 20:07, 0 of 1 keyframes kept
  105. Shot 104, 20:07 to 20:11, 0 of 1 keyframes kept
  106. Shot 105, 20:11 to 20:23, 0 of 1 keyframes kept
  107. Shot 106, 20:23 to 20:26, 0 of 1 keyframes kept
  108. Shot 107, 20:26 to 20:31, 1 of 1 keyframes kept
  109. Shot 108, 20:31 to 20:47, 1 of 1 keyframes kept
  110. Shot 109, 20:47 to 20:49, 0 of 1 keyframes kept
  111. Shot 110, 20:49 to 21:20, 1 of 1 keyframes kept
  112. Shot 111, 21:20 to 21:36, 1 of 1 keyframes kept
  113. Shot 112, 21:36 to 21:40, 1 of 1 keyframes kept
  114. Shot 113, 21:40 to 21:57, 0 of 1 keyframes kept
  115. Shot 114, 21:57 to 22:10, 1 of 1 keyframes kept
  116. Shot 115, 22:10 to 22:11, 1 of 1 keyframes kept
  117. Shot 116, 22:11 to 22:21, 0 of 1 keyframes kept
  118. Shot 117, 22:21 to 22:43, 0 of 1 keyframes kept
  119. Shot 118, 22:43 to 22:44, 0 of 1 keyframes kept
  120. Shot 119, 22:44 to 22:46, 0 of 1 keyframes kept
  121. Shot 120, 22:46 to 22:54, 1 of 1 keyframes kept
  122. Shot 121, 22:54 to 23:04, 0 of 1 keyframes kept
  123. Shot 122, 23:04 to 23:07, 1 of 1 keyframes kept
  124. Shot 123, 23:07 to 23:08, 0 of 1 keyframes kept
  125. Shot 124, 23:08 to 23:27, 1 of 1 keyframes kept
  126. Shot 125, 23:27 to 23:31, 0 of 1 keyframes kept
  127. Shot 126, 23:31 to 23:34, 0 of 1 keyframes kept
  128. Shot 127, 23:34 to 23:37, 1 of 1 keyframes kept
  129. Shot 128, 23:37 to 23:51, 1 of 1 keyframes kept
  130. Shot 129, 23:51 to 23:55, 1 of 1 keyframes kept
  131. Shot 130, 23:55 to 24:01, 1 of 1 keyframes kept
  132. Shot 131, 24:01 to 24:26, 1 of 1 keyframes kept
  133. Shot 132, 24:26 to 24:53, 1 of 1 keyframes kept
  134. Shot 133, 24:53 to 25:21, 0 of 1 keyframes kept
  135. Shot 134, 25:21 to 25:27, 0 of 1 keyframes kept
  136. Shot 135, 25:27 to 25:45, 0 of 1 keyframes kept
  137. Shot 136, 25:45 to 25:50, 1 of 1 keyframes kept
  138. Shot 137, 25:50 to 25:51, 0 of 1 keyframes kept
  139. Shot 138, 25:51 to 25:56, 0 of 1 keyframes kept
  140. Shot 139, 25:56 to 25:57, 1 of 1 keyframes kept
  141. Shot 140, 25:57 to 26:02, 0 of 1 keyframes kept
  142. Shot 141, 26:02 to 26:04, 1 of 1 keyframes kept
  143. Shot 142, 26:04 to 26:11, 0 of 1 keyframes kept
  144. Shot 143, 26:11 to 26:46, 1 of 1 keyframes kept
  145. Shot 144, 26:46 to 27:20, 0 of 1 keyframes kept
  146. Shot 145, 27:20 to 27:22, 0 of 1 keyframes kept
  147. Shot 146, 27:22 to 27:23, 0 of 1 keyframes kept
  148. Shot 147, 27:23 to 27:53, 1 of 1 keyframes kept
  149. Shot 148, 27:53 to 28:23, 0 of 1 keyframes kept
  150. Shot 149, 28:23 to 28:53, 0 of 1 keyframes kept
  151. Shot 150, 28:53 to 28:54, 0 of 1 keyframes kept
  152. Shot 151, 28:54 to 28:57, 0 of 1 keyframes kept
  153. Shot 152, 28:57 to 29:19, 0 of 1 keyframes kept
  154. Shot 153, 29:19 to 29:45, 0 of 1 keyframes kept
  155. Shot 154, 29:45 to 30:10, 0 of 1 keyframes kept
  156. Shot 155, 30:10 to 30:36, 0 of 1 keyframes kept
  157. Shot 156, 30:36 to 31:01, 0 of 1 keyframes kept
  158. Shot 157, 31:01 to 31:26, 0 of 1 keyframes kept
  159. Shot 158, 31:26 to 31:52, 0 of 1 keyframes kept
  160. Shot 159, 31:52 to 32:17, 0 of 1 keyframes kept
  161. Shot 160, 32:17 to 32:42, 0 of 1 keyframes kept
  162. Shot 161, 32:42 to 33:08, 0 of 1 keyframes kept
  163. Shot 162, 33:08 to 33:33, 0 of 1 keyframes kept
  164. Shot 163, 33:33 to 33:58, 0 of 1 keyframes kept
  165. Shot 164, 33:58 to 34:24, 0 of 1 keyframes kept
  166. Shot 165, 34:24 to 34:56, 0 of 1 keyframes kept
  167. Shot 166, 34:56 to 35:29, 1 of 1 keyframes kept
  168. Shot 167, 35:29 to 35:47, 0 of 1 keyframes kept
  169. Shot 168, 35:47 to 36:13, 1 of 1 keyframes kept
  170. Shot 169, 36:13 to 36:49, 1 of 1 keyframes kept
  171. Shot 170, 36:49 to 36:54, 0 of 1 keyframes kept
  172. Shot 171, 36:54 to 36:55, 1 of 1 keyframes kept
  173. Shot 172, 36:55 to 36:59, 1 of 1 keyframes kept
  174. Shot 173, 36:59 to 37:06, 1 of 1 keyframes kept
  175. Shot 174, 37:06 to 37:08, 0 of 1 keyframes kept
  176. Shot 175, 37:08 to 37:14, 0 of 1 keyframes kept
  177. Shot 176, 37:14 to 37:44, 0 of 1 keyframes kept
  178. Shot 177, 37:44 to 38:14, 1 of 1 keyframes kept
  179. Shot 178, 38:14 to 38:18, 0 of 1 keyframes kept
  180. Shot 179, 38:18 to 38:21, 1 of 1 keyframes kept
  181. Shot 180, 38:21 to 38:50, 1 of 1 keyframes kept
  182. Shot 181, 38:50 to 39:22, 0 of 1 keyframes kept
  183. Shot 182, 39:22 to 39:51, 0 of 1 keyframes kept
  184. Shot 183, 39:51 to 40:20, 0 of 1 keyframes kept
  185. Shot 184, 40:20 to 40:49, 0 of 1 keyframes kept
  186. Shot 185, 40:49 to 41:12, 1 of 1 keyframes kept
  187. Shot 186, 41:12 to 41:13, 0 of 1 keyframes kept
  188. Shot 187, 41:13 to 41:27, 1 of 1 keyframes kept
  189. Shot 188, 41:27 to 41:33, 1 of 1 keyframes kept
  190. Shot 189, 41:33 to 41:37, 1 of 1 keyframes kept
  191. Shot 190, 41:37 to 41:48, 1 of 1 keyframes kept
  192. Shot 191, 41:48 to 41:55, 0 of 1 keyframes kept
  193. Shot 192, 41:55 to 42:29, 0 of 1 keyframes kept
  194. Shot 193, 42:29 to 42:32, 0 of 1 keyframes kept
  195. Shot 194, 42:32 to 42:33, 0 of 1 keyframes kept
  196. Shot 195, 42:33 to 42:40, 1 of 1 keyframes kept
  197. Shot 196, 42:40 to 42:56, 1 of 1 keyframes kept
  198. Shot 197, 42:56 to 42:58, 1 of 1 keyframes kept
  199. Shot 198, 42:58 to 43:07, 0 of 1 keyframes kept
  200. Shot 199, 43:07 to 43:34, 0 of 1 keyframes kept
  201. Shot 200, 43:34 to 43:35, 0 of 1 keyframes kept
  202. Shot 201, 43:35 to 43:41, 1 of 1 keyframes kept
  203. Shot 202, 43:41 to 43:42, 1 of 1 keyframes kept
  204. Shot 203, 43:42 to 43:44, 0 of 1 keyframes kept
  205. Shot 204, 43:44 to 44:00, 0 of 1 keyframes kept
  206. Shot 205, 44:00 to 44:31, 0 of 1 keyframes kept
  207. Shot 206, 44:31 to 45:13, 0 of 1 keyframes kept
  208. Shot 207, 45:13 to 45:47, 1 of 1 keyframes kept

208 shot(s).

keyframes kept every frame deduplicated

What was stored

cues
390
whisperx 390
chunks
81
from 390 cues
keyframes
86
kept of 208 captured
frames with text
86
8,850 lines read
chapters
0
from the source metadata
keyframe bytes
27.3 MB
word timings on 390 cues

Provenance

Each pipeline stage, its state and the model that produced it
stage state model started took
fetch done 2026-08-11 07:41 1m 14s
stt done 2026-08-11 07:42 49s
chunk done 2026-08-11 07:43 0s
text_embed done 2026-08-11 07:43 5s
keyframe done 2026-08-11 07:43 2m 54s
ocr done 2026-08-11 07:46 2m 03s
frame_embed done 2026-08-11 07:48 14s

Frames, and what the machine read

  • 0:26 #0 done77 line(s)

    shot 0·sharpness 1081.1

    1. ○×0.79
    2. ×0.94
    3. FAC ×0.94
    4. Tra×0.97
    5. Mic1.00
    6. x0.55
    7. Scr0.94
    8. ×0.82
    9. M0.90
    10. hea0.87
    11. x0.70
    12. M hea0.81
    13. ×0.78
    14. Pre1.00
    15. x0.75
    16. Go:0.90
    17. tre1.00
    18. x0.58
    19. Byp1.00
    20. x0.78
    21. obs rec0.99
    22. World1.00
    23. Present1.00
    24. +0.96
    25. ā0.69
    26. ×0.83
    27. C0.78
    28. localhost:3030/1?clicks=01.00
    29. 1.00
    30. C0.98
    31. M0.89
    32. WPP Bookmarks0.99
    33. 0.98
    34. Free Pictures0.98
    35. Ogilvy1.00
    36. 0.76
    37. M&M1.00
    38. AI0.98
    39. BTrust0.93
    40. PGPMS1.00
    41. Websites1.00
    42. Website Test0.99
    43. Decoupled1.00
    44. RAG Tutorials1.00
    45. Al Trend0.96
    46. Follow Up1.00
    47. temp1.00
    48. 0.88
    49. Google Cloud1.00
    50. »0.85
    51. ← Back to Help Centre0.96
    52. FAQ Assistant1.00
    53. ×0.51
    54. hi0.99
    55. Bypassing the Multimodal Tax0.98
    56. Hi there!I'm the FAQ assistant.1.00
    57. Framework-Free Hybrid RAG, Raw SQL RRF, and Live UI Telemetry1.00
    58. A0.82
    59. I can help with questions answered in1.00
    60. our uploaded FAQ documents —0.97
    61. policies, procedures, product details,1.00
    62. troubleshooting steps, and more.1.00
    63. What would you like to know?1.00
    64. Abed Matini1.00
    65. Senior Backend Developer· Ogilvy0.99
    66. AI Engineer World's Fair 2026 - Online Track0.97
    67. K0.86
    68. 1.00
    69. 1.00
    70. Q0.53
    71. 00.61
    72. p0.77
    73. 1/261.00
    74. Type a message...0.98
    75. x0.51
    76. localhost:51741.00
    77. x0.86
  • 0:59 #1 done75 line(s)

    shot 1·sharpness 1146.8

    1. BO0.99
    2. ×0.82
    3. x0.66
    4. S0.50
    5. FAQs—0.90
    6. x0.51
    7. Tracing0.97
    8. ×0.71
    9. Microso0.93
    10. x0.71
    11. Screens1.00
    12. ×0.73
    13. heading1.00
    14. x0.82
    15. M0.81
    16. heading1.00
    17. Present:0.96
    18. x0.57
    19. treat illr0.85
    20. x0.52
    21. Bypassi0.97
    22. x0.73
    23. obs rec0.94
    24. +0.80
    25. ā0.80
    26. ×0.87
    27. C0.65
    28. localhost:3030/1?clicks=00.98
    29. 1.00
    30. C0.63
    31. obs record screen with best quality -1.00
    32. Google Search1.00
    33. Co0.64
    34. WPP Bookmarks0.99
    35. 0.98
    36. Free Pictures0.99
    37. Ogilvy0.97
    38. 0.80
    39. M&M1.00
    40. AI0.98
    41. BTrust0.99
    42. PGPMS1.00
    43. Websites1.00
    44. Website Test0.99
    45. Decoupled1.00
    46. RAG Tutorials1.00
    47. Al Trend0.96
    48. Fc0.69
    49. google.com1.00
    50. »0.98
    51. G0.87
    52. Memory usage: 165 MB1.00
    53. hi1.00
    54. Bypassing the Multimodal Tax1.00
    55. Hi there!I'm the FAQ assistant.0.99
    56. I can help with questions answered in1.00
    57. Framework-Free Hybrid RAG, Raw SQL RRF, and Live UI Telemetry1.00
    58. our uploaded FAQ documents —0.98
    59. policies, procedures, product details,1.00
    60. troubleshooting steps, and more.0.99
    61. What would you like to know?1.00
    62. Abed Matini1.00
    63. Senior Backend Developer· Ogilvy0.99
    64. AI Engineer World's Fair 2026 - Online Track0.97
    65. K0.85
    66. 1.00
    67. 1.00
    68. Q0.62
    69. 00.61
    70. p0.89
    71. 1/261.00
    72. Type a message...1.00
    73. x0.53
    74. localhost:51741.00
    75. x0.77
  • 1:09 #2 done73 line(s)

    shot 2·sharpness 2631.2

    1. x0.79
    2. FA( ×0.93
    3. FAQs — Help Ce0.90
    4. ×0.80
    5. Tracing | Langfu:0.96
    6. x0.58
    7. Microsoft Word0.98
    8. ×0.78
    9. Screenshot 2021.00
    10. x0.89
    11. heading-faq-1.×0.98
    12. heading-faq-2.1.00
    13. x0.50
    14. Presenter - Byp0.99
    15. x0.65
    16. +0.98
    17. ā0.81
    18. ×0.85
    19. C0.86
    20. localhost:3030/20.98
    21. 1.00
    22. C0.98
    23. M0.79
    24. Co0.61
    25. WPP Bookmarks0.98
    26. 0.99
    27. Free Pictures0.97
    28. Ogilvy0.95
    29. M&M1.00
    30. AI0.99
    31. BTrust1.00
    32. PGPMS1.00
    33. Websites1.00
    34. Website Test0.98
    35. Decoupled1.00
    36. RAG Tutorials1.00
    37. Al Trend0.96
    38. Follow Up0.98
    39. 0.88
    40. temp1.00
    41. Google Cloud1.00
    42. »0.91
    43. ← Back to Help Centre0.98
    44. Two problems every document chatbot hits1.00
    45. FAQ Assistant1.00
    46. ×0.50
    47. hi0.99
    48. Paying to read documents twice1.00
    49. Search split across too many tools0.99
    50. Hi there!I'm the FAQ assistant.0.99
    51. Cloud vision APIs charge ~500-1,000 tokens per0.98
    52. Good answers need meaning (vectors) and exact1.00
    53. I can help with questions answered in1.00
    54. page just to turn a PDF into text —before a user asks0.98
    55. words (keywords). Teams often run a vector DB, a1.00
    56. our uploaded FAQ documents —0.97
    57. anything. A 200-page manual can cost 100k+ tokens1.00
    58. search engine, and wrapper code to combine them —0.97
    59. troubleshooting steps, and more.1.00
    60. policies, procedures, product details,1.00
    61. at ingest, and tables still break.0.98
    62. so when results are wrong, you fix config files, not the0.99
    63. query.1.00
    64. What would you like to know?0.99
    65. This talk: parse locally · one Postgres database · hybrid search in plain Python0.98
    66. K0.94
    67. 70.99
    68. 1.00
    69. 00.52
    70. p0.79
    71. 2/261.00
    72. Type a message...0.97
    73. localhost:5174 ×0.93
  • 1:39 #3 done74 line(s)

    shot 3·sharpness 2619.7

    1. x0.78
    2. FA( ×0.95
    3. FAQs—Help Ce0.95
    4. ×0.77
    5. Tracing | Langfu:0.97
    6. x0.77
    7. Microsoft Word0.94
    8. S0.51
    9. Screenshot 20260.99
    10. x0.81
    11. heading-faq-1.×0.94
    12. heading-faq-2.0.99
    13. ×0.61
    14. Presenter - Byp0.99
    15. x0.59
    16. +0.98
    17. ā0.55
    18. ×0.77
    19. C0.86
    20. localhost:3030/20.94
    21. 1.00
    22. C0.99
    23. M0.78
    24. WPP Bookmarks1.00
    25. 0.99
    26. Free Pictures1.00
    27. Ogilvy0.95
    28. 0.82
    29. M&M1.00
    30. AI0.99
    31. BTrust1.00
    32. PGPMS1.00
    33. Websites0.93
    34. Website Test0.98
    35. Decoupled0.96
    36. RAG Tutorials1.00
    37. Al Trend0.94
    38. Follow Up0.95
    39. 0.91
    40. temp1.00
    41. Google Cloud1.00
    42. »0.96
    43. ← Back to Help Centre0.99
    44. Two problems every document chatbot hits1.00
    45. FAQ Assistant1.00
    46. ×0.52
    47. hi1.00
    48. Paying to read documents twice0.98
    49. Search split across too many tools1.00
    50. Hi there!I'm the FAQ assistant.1.00
    51. Cloud vision APIs charge ~500-1,000 tokens per0.98
    52. Good answers need meaning (vectors) and exact1.00
    53. I can help with questions answered in1.00
    54. page just to turn a PDF into text — before a user asks0.98
    55. words (keywords). Teams often run a vector DB, a0.99
    56. our uploaded FAQ documents —0.98
    57. anything. A 200-page manual can cost 100k+ tokens1.00
    58. search engine, and wrapper code to combine them —0.98
    59. policies, procedures, product details,1.00
    60. troubleshooting steps, and more.0.99
    61. at ingest, and tables still break.0.99
    62. so when results are wrong, you fix config files, not the0.99
    63. query.1.00
    64. What would you like to know?1.00
    65. This talk: parse locally · one Postgres database · hybrid search in plain Python1.00
    66. 40.97
    67. K0.88
    68. 70.99
    69. 1.00
    70. 00.63
    71. p0.85
    72. 2/261.00
    73. Type a message...0.98
    74. localhost:5174 X0.93
  • 2:09 #4 skipped

    shot 4·duplicate of #3

  • 2:41 #5 skipped

    shot 5·duplicate of #3

  • 3:31 #6 done51 line(s)

    shot 6·sharpness 1055.0

    1. Byp0.99
    2. O0.82
    3. S0.74
    4. FAQs1.00
    5. FAQs-Help C×0.94
    6. Tracing|Langfu:×0.98
    7. Microsoft Word0.99
    8. S0.58
    9. Screenshot 202×0.99
    10. heading-faq-1.×heading-faq-2.0.98
    11. ×0.57
    12. Presenter- Byp0.93
    13. x0.73
    14. +0.94
    15. ā0.56
    16. ×0.88
    17. C0.74
    18. ① File0.94
    19. C:/Users/AbedMatini/OneDrive%20-%20Ogilvy/Documents/HCP%20Chat/Sample%20Employee%20Handbook%20-%20National%20C...1.00
    20. C0.96
    21. M0.90
    22. 0.70
    23. 0.59
    24. 10.55
    25. WPP Bookmarks0.99
    26. 0.97
    27. Free Pictures0.96
    28. Ogilvy0.93
    29. M&M0.99
    30. □AI0.80
    31. BTrust0.99
    32. PGPMS1.00
    33. Websites1.00
    34. Website Test1.00
    35. Decoupled1.00
    36. RAG Tutorials0.99
    37. Al Trend0.96
    38. Follow Up1.00
    39. temp1.00
    40. 0.87
    41. Google Cloud1.00
    42. »0.97
    43. 0.53
    44. Microsoft Word - Sample Employee Handbook for web.doc1.00
    45. 1/281.00
    46. 100%1.00
    47. +0.98
    48. 0.99
    49. 50.53
    50. 40.98
    51. SAMPLE EMPLOYEE HANDBOOK0.99
  • 3:37 #7 skipped

    shot 7·duplicate of #6

  • 3:52 #8 skipped

    shot 8·duplicate of #6

  • 3:58 #9 skipped

    shot 9·duplicate of #6

  • 4:02 #10 skipped

    shot 10·duplicate of #6

  • 4:12 #11 skipped

    shot 11·duplicate of #3

  • 4:46 #12 skipped

    shot 12·duplicate of #3

  • 5:20 #13 skipped

    shot 13·duplicate of #3

  • 5:26 #14 skipped

    shot 14·duplicate of #3

  • 5:53 #15 skipped

    shot 15·duplicate of #3

  • 6:21 #16 skipped

    shot 16·duplicate of #3

  • 6:53 #17 skipped

    shot 17·duplicate of #3

  • 7:26 #18 skipped

    shot 18·duplicate of #3

  • 7:52 #19 skipped

    shot 19·duplicate of #3

  • 8:10 #20 skipped

    shot 20·duplicate of #3

  • 8:28 #21 skipped

    shot 21·duplicate of #3

  • 9:01 #22 skipped

    shot 22·duplicate of #3

  • 9:31 #23 skipped

    shot 23·duplicate of #3

Transcript

390 cues· 5,746 words· 30,153 chars

  1. 0:01 Hello, everyone.
  2. 0:03 I'm Abed Mattini.
  3. 0:05 I'm senior backend developer at Ogilvy.
  4. 0:09 Thanks to AI Engineer World Fair 2026 for giving me a time slot for online track.
  5. 0:18 And I'm going to walk you through bypassing the multimodal text today, how we can have a framework-free hybrid drag.
  6. 0:29 Withdraw SQLRF and live telemetry.
  7. 0:32 As you can see, I have got my live demo in the right side of the screen, so any slide that I pass and if there is anything related.
  8. 0:46 Related to my.
  9. 0:49 presentation I can show you I have few tabs also ready here for you to show and walk you through the slides and the demos okay let's begin so
  10. 1:11 We have two problems that we try to solve today.
  11. 1:17 One is when we start to chat with any LLM and if we have to upload a document, we usually going to just drag and drop a PDF or a Word doc or an image and ask the chatbot to get ready for the questions that are going to come up.
  12. 1:34 after we upload those documents.
  13. 1:36 The issue with that is as soon as we upload these documents, we're going to basically lose some of our tokens that we're supposed to have only for processing these documents without even asking a question.
  14. 1:54 So we already spent some tokens there without even asking any questions.
  15. 2:01 That would be the first issue.
  16. 2:03 And then if we're building a chatbot and we want to have vector database there, we want to have keyword search and semantic search there, and we want to just add more tools, this is going to be too many tools combined altogether.
  17. 2:19 So in the production, basically chatbot, we're going to have too many tools and it's going to be complicated for us to manage
  18. 2:32 our production chatbot properly.
  19. 2:35 So today I'm going to walk you through in three main sections.
  20. 2:44 One is how we can upload our documents and get our documents and make it ready.
  21. 2:52 for our chatbot before users gonna chat.
  22. 2:56 So on the right side, I do have a FAQ assistant chatbot that's running locally now for me.
  23. 3:07 And
  24. 3:09 I'm going to show you the dashboard, the dashboard that I've created for it and how we can chat and how we get the results.
  25. 3:15 So this is going to be a supposedly FAQ assistant for a sample employee handbook.
  26. 3:26 So imagine that you have an HR company and this HR has uploaded the handbook
  27. 3:35 for the employees to ask their question, any question they have about leave, about different kinds of leave, a sickness, or parental leave, or any other questions related to possibly an HR would have as a common question that they get every day.
  28. 4:00 So that would be one sample that we're going to use to upload.
  29. 4:06 So our documents can get in the different formats or we can upload in different formats of PDF, like PowerPoint documents and Word documents or even image.
  30. 4:18 so we're going to talk about that we're going to talk about how we have to chunk these because we're talking about drag here we need to know how we can chunk this information uh properly based on the document so we're going to talk about uh different type of chunking here as well we can show you in the admin how we can choose different uh
  31. 4:45 different strategies to chunk the documents.
  32. 4:48 Then we're going to see how the search is going to work, how the embedding is going to work, how our database is going to be, how the search is going to be based on the keyword search or the semantic search.
  33. 5:00 And we're going to see about how RRF in the Python is going to work.
  34. 5:06 And then we're going to talk about the observability, how we're going to check the safety, how we're going to observe all the process with blank views, and how
  35. 5:16 we can prevent problem injection pattern or
  36. 5:24 any risky question that might come to LLM.
  37. 5:27 I'm planning this talk for about under an hour.
  38. 5:30 And this, uh, the whole thing, the plan is the entire code base can be easily be running on a GitHub code space, which you can just pull from the repo and one command run, and it's gonna be ready to test on GitHub code spaces.
  39. 5:52 Um,
  40. 5:52 So the stack we're using here are Python, FastAPI for the back end, React for the front end, PostgreSQL for our database, Docker for just easily being able to have the containers and we can just reproduce it anywhere, rerun it anywhere, for example, in Codespaces or any other environment we want.
  41. 6:19 Then we have Ulama, local language models, some local language models, and embedding models that are running only locally.
  42. 6:26 That can be run on any server as well.
  43. 6:30 It doesn't need a GPU.
  44. 6:32 The CPU is going to be good enough for it.
  45. 6:34 So any staging server, any code space are going to be fine for it.
  46. 6:43 and length views for tracking what's going on and how we can see the chat and the latency so we can improve our chats better um
  47. 6:59 This is the end-to-end blueprint of what we're going to talk about.
  48. 7:03 So we're going to have a few documents as a source of truth for our chatbot.
  49. 7:12 So we're going to upload some documents.
  50. 7:15 So what we can do with Python is we're using Duckling to convert those raw documents to Markdown files.

Open at this second