Spaces:
Sleeping
Sleeping
Commit Β·
eea305d
1
Parent(s): 13c8d9b
Rename Gemini to Groq Llama 3 globally and remove pricing from mobile nav
Browse files
frontend/app/chat/page.tsx
CHANGED
|
@@ -102,7 +102,7 @@ function SidebarStats() {
|
|
| 102 |
<div>
|
| 103 |
<div className="text-xs text-black/30 tracking-widest uppercase mb-3">Tech Stack</div>
|
| 104 |
<div className="flex flex-wrap gap-2">
|
| 105 |
-
{["FastAPI", "FAISS", "LangChain", "
|
| 106 |
<span key={tech} className="px-2 py-1 text-xs text-black/40 bg-black/[0.03] rounded-lg border border-black/[0.06]">
|
| 107 |
{tech}
|
| 108 |
</span>
|
|
@@ -316,7 +316,7 @@ export default function ChatPage() {
|
|
| 316 |
</button>
|
| 317 |
</div>
|
| 318 |
<p className="text-[10px] text-black/30 text-center mt-3">
|
| 319 |
-
Powered by FastAPI + FAISS +
|
| 320 |
</p>
|
| 321 |
</form>
|
| 322 |
</div>
|
|
|
|
| 102 |
<div>
|
| 103 |
<div className="text-xs text-black/30 tracking-widest uppercase mb-3">Tech Stack</div>
|
| 104 |
<div className="flex flex-wrap gap-2">
|
| 105 |
+
{["FastAPI", "FAISS", "LangChain", "Llama 3"].map(tech => (
|
| 106 |
<span key={tech} className="px-2 py-1 text-xs text-black/40 bg-black/[0.03] rounded-lg border border-black/[0.06]">
|
| 107 |
{tech}
|
| 108 |
</span>
|
|
|
|
| 316 |
</button>
|
| 317 |
</div>
|
| 318 |
<p className="text-[10px] text-black/30 text-center mt-3">
|
| 319 |
+
Powered by FastAPI + FAISS + Llama 3 β querying 15.5K+ real documents.
|
| 320 |
</p>
|
| 321 |
</form>
|
| 322 |
</div>
|
frontend/app/layout.tsx
CHANGED
|
@@ -13,7 +13,7 @@ const _ibmPlexSans = IBM_Plex_Sans({ weight: ["300", "400", "500", "600"], subse
|
|
| 13 |
export const metadata: Metadata = {
|
| 14 |
title: 'SupportRAG β Dual Vector Store RAG for Customer Support',
|
| 15 |
description: 'Production-ready RAG system with dual vector stores, async processing, and FAISS IVF optimization. 4.2x throughput improvement with 337ms average latency across 15.5k+ documents.',
|
| 16 |
-
keywords: ['RAG', 'customer support', 'vector store', 'FAISS', 'LangChain', '
|
| 17 |
authors: [{ name: 'Saksham Yadav' }],
|
| 18 |
openGraph: {
|
| 19 |
title: 'SupportRAG β Dual Vector Store RAG for Customer Support',
|
|
|
|
| 13 |
export const metadata: Metadata = {
|
| 14 |
title: 'SupportRAG β Dual Vector Store RAG for Customer Support',
|
| 15 |
description: 'Production-ready RAG system with dual vector stores, async processing, and FAISS IVF optimization. 4.2x throughput improvement with 337ms average latency across 15.5k+ documents.',
|
| 16 |
+
keywords: ['RAG', 'customer support', 'vector store', 'FAISS', 'LangChain', 'Groq', 'AI support'],
|
| 17 |
authors: [{ name: 'Saksham Yadav' }],
|
| 18 |
openGraph: {
|
| 19 |
title: 'SupportRAG β Dual Vector Store RAG for Customer Support',
|
frontend/app/page.tsx
CHANGED
|
@@ -243,7 +243,7 @@ export default function AgenticPage() {
|
|
| 243 |
<div className="w-10 h-10 rounded-xl border border-black/10 flex items-center justify-center mb-5">
|
| 244 |
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="1.5"><path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"/></svg>
|
| 245 |
</div>
|
| 246 |
-
<h3 className="text-lg font-light mb-2">
|
| 247 |
<p className="text-sm text-black/45 leading-relaxed">State-of-the-art LLM for natural responses with context-aware answer generation.</p>
|
| 248 |
</BentoCard>
|
| 249 |
</div>
|
|
@@ -285,7 +285,7 @@ export default function AgenticPage() {
|
|
| 285 |
{[
|
| 286 |
{ n: "01", title: "Ingest", desc: "Load FAQs and support tickets into dual FAISS vector stores with IVF clustering.", delay: 0, img: "https://hebbkx1anhila5yf.public.blob.vercel-storage.com/define-5aafAmGBrxZpOqJ3XLHY3n3qzC2I5K.png" },
|
| 287 |
{ n: "02", title: "Search", desc: "Parallel async queries across both stores. Smart fallback at 65% confidence threshold.", delay: 80, img: "https://hebbkx1anhila5yf.public.blob.vercel-storage.com/compose-5RT5VR4f1Y3GoFmovqTKLTG4UXp3g2.png" },
|
| 288 |
-
{ n: "03", title: "Generate", desc: "
|
| 289 |
{ n: "04", title: "Respond", desc: "Return answer with source tracking, confidence scores, and latency metrics.", delay: 200, img: "https://hebbkx1anhila5yf.public.blob.vercel-storage.com/deploy-an8fgHSLzniojkcmRyGGIFQUJF9T5J.png" },
|
| 290 |
].map((step) => (
|
| 291 |
<BentoCard key={step.n} className="relative overflow-hidden flex flex-col min-h-[320px]" delay={step.delay}>
|
|
@@ -328,7 +328,7 @@ export default function AgenticPage() {
|
|
| 328 |
</RevealText>
|
| 329 |
</div>
|
| 330 |
<p className="text-sm text-black/45 leading-relaxed max-w-xs">
|
| 331 |
-
Built with FastAPI, FAISS, LangChain, and
|
| 332 |
</p>
|
| 333 |
</div>
|
| 334 |
|
|
@@ -421,7 +421,7 @@ export default function AgenticPage() {
|
|
| 421 |
|
| 422 |
{/* Tech badges β vertical stack */}
|
| 423 |
<div className="pt-4 flex flex-col gap-2">
|
| 424 |
-
{["FastAPI", "FAISS IVF", "LangChain", "
|
| 425 |
<div key={badge} className="flex items-center gap-2 text-xs text-black/25">
|
| 426 |
<span className="w-1 h-1 rounded-full bg-black/25" />
|
| 427 |
{badge}
|
|
|
|
| 243 |
<div className="w-10 h-10 rounded-xl border border-black/10 flex items-center justify-center mb-5">
|
| 244 |
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="1.5"><path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"/></svg>
|
| 245 |
</div>
|
| 246 |
+
<h3 className="text-lg font-light mb-2">Groq Llama 3</h3>
|
| 247 |
<p className="text-sm text-black/45 leading-relaxed">State-of-the-art LLM for natural responses with context-aware answer generation.</p>
|
| 248 |
</BentoCard>
|
| 249 |
</div>
|
|
|
|
| 285 |
{[
|
| 286 |
{ n: "01", title: "Ingest", desc: "Load FAQs and support tickets into dual FAISS vector stores with IVF clustering.", delay: 0, img: "https://hebbkx1anhila5yf.public.blob.vercel-storage.com/define-5aafAmGBrxZpOqJ3XLHY3n3qzC2I5K.png" },
|
| 287 |
{ n: "02", title: "Search", desc: "Parallel async queries across both stores. Smart fallback at 65% confidence threshold.", delay: 80, img: "https://hebbkx1anhila5yf.public.blob.vercel-storage.com/compose-5RT5VR4f1Y3GoFmovqTKLTG4UXp3g2.png" },
|
| 288 |
+
{ n: "03", title: "Generate", desc: "Groq Llama 3 generates context-aware answers with citations and metadata.", delay: 140, img: "https://hebbkx1anhila5yf.public.blob.vercel-storage.com/test-zm8guZwxJHtwWsJ7XO4B0CF7GzlNK8.png" },
|
| 289 |
{ n: "04", title: "Respond", desc: "Return answer with source tracking, confidence scores, and latency metrics.", delay: 200, img: "https://hebbkx1anhila5yf.public.blob.vercel-storage.com/deploy-an8fgHSLzniojkcmRyGGIFQUJF9T5J.png" },
|
| 290 |
].map((step) => (
|
| 291 |
<BentoCard key={step.n} className="relative overflow-hidden flex flex-col min-h-[320px]" delay={step.delay}>
|
|
|
|
| 328 |
</RevealText>
|
| 329 |
</div>
|
| 330 |
<p className="text-sm text-black/45 leading-relaxed max-w-xs">
|
| 331 |
+
Built with FastAPI, FAISS, LangChain, and Groq. Full REST + WebSocket API. Python 3.10+ compatible.
|
| 332 |
</p>
|
| 333 |
</div>
|
| 334 |
|
|
|
|
| 421 |
|
| 422 |
{/* Tech badges β vertical stack */}
|
| 423 |
<div className="pt-4 flex flex-col gap-2">
|
| 424 |
+
{["FastAPI", "FAISS IVF", "LangChain", "Llama 3"].map((badge) => (
|
| 425 |
<div key={badge} className="flex items-center gap-2 text-xs text-black/25">
|
| 426 |
<span className="w-1 h-1 rounded-full bg-black/25" />
|
| 427 |
{badge}
|
frontend/components/live-agent-feed.tsx
CHANGED
|
@@ -3,7 +3,7 @@
|
|
| 3 |
import { useEffect, useState, useRef } from "react"
|
| 4 |
|
| 5 |
const AGENT_NAMES = [
|
| 6 |
-
"faq-store", "ticket-store", "embedder", "
|
| 7 |
"retriever", "ranker", "generator", "validator",
|
| 8 |
"fallback", "metrics",
|
| 9 |
]
|
|
@@ -90,7 +90,7 @@ function ProgressBar({ initial }: { initial: number }) {
|
|
| 90 |
const SEED_ROWS: AgentRow[] = [
|
| 91 |
{ id: "A1B2C3", name: "faq-store", task: "How do I reset my password?", region: "faq", status: STATUSES[0], progress: 42, elapsed: "312ms", key: 0 },
|
| 92 |
{ id: "D4E5F6", name: "ticket-store", task: "My order hasn't arrived yet", region: "ticket", status: STATUSES[0], progress: 67, elapsed: "287ms", key: 1 },
|
| 93 |
-
{ id: "G7H8I9", name: "
|
| 94 |
{ id: "J0K1L2", name: "retriever", task: "Where is my order #54321?", region: "ticket", status: STATUSES[0], progress: 55, elapsed: "342ms", key: 3 },
|
| 95 |
{ id: "M3N4O5", name: "embedder", task: "Change my email address", region: "faq", status: STATUSES[0], progress: 80, elapsed: "198ms", key: 4 },
|
| 96 |
{ id: "P6Q7R8", name: "validator", task: "Payment declined twice", region: "ticket", status: STATUSES[4], progress: 99, elapsed: "401ms", key: 5 },
|
|
|
|
| 3 |
import { useEffect, useState, useRef } from "react"
|
| 4 |
|
| 5 |
const AGENT_NAMES = [
|
| 6 |
+
"faq-store", "ticket-store", "embedder", "groq-llm",
|
| 7 |
"retriever", "ranker", "generator", "validator",
|
| 8 |
"fallback", "metrics",
|
| 9 |
]
|
|
|
|
| 90 |
const SEED_ROWS: AgentRow[] = [
|
| 91 |
{ id: "A1B2C3", name: "faq-store", task: "How do I reset my password?", region: "faq", status: STATUSES[0], progress: 42, elapsed: "312ms", key: 0 },
|
| 92 |
{ id: "D4E5F6", name: "ticket-store", task: "My order hasn't arrived yet", region: "ticket", status: STATUSES[0], progress: 67, elapsed: "287ms", key: 1 },
|
| 93 |
+
{ id: "G7H8I9", name: "groq-llm", task: "How do I get a refund?", region: "faq", status: STATUSES[3], progress: 18, elapsed: "156ms", key: 2 },
|
| 94 |
{ id: "J0K1L2", name: "retriever", task: "Where is my order #54321?", region: "ticket", status: STATUSES[0], progress: 55, elapsed: "342ms", key: 3 },
|
| 95 |
{ id: "M3N4O5", name: "embedder", task: "Change my email address", region: "faq", status: STATUSES[0], progress: 80, elapsed: "198ms", key: 4 },
|
| 96 |
{ id: "P6Q7R8", name: "validator", task: "Payment declined twice", region: "ticket", status: STATUSES[4], progress: 99, elapsed: "401ms", key: 5 },
|
frontend/components/mobile-nav.tsx
CHANGED
|
@@ -7,8 +7,7 @@ const NAV_LINKS = [
|
|
| 7 |
{ label: "Data Sources", href: "#agents" },
|
| 8 |
{ label: "Workflow", href: "#workflow" },
|
| 9 |
{ label: "Tech Stack", href: "#integrations" },
|
| 10 |
-
|
| 11 |
-
]
|
| 12 |
|
| 13 |
const NAV_STYLE = {
|
| 14 |
backdropFilter: "blur(16px)",
|
|
|
|
| 7 |
{ label: "Data Sources", href: "#agents" },
|
| 8 |
{ label: "Workflow", href: "#workflow" },
|
| 9 |
{ label: "Tech Stack", href: "#integrations" },
|
| 10 |
+
]
|
|
|
|
| 11 |
|
| 12 |
const NAV_STYLE = {
|
| 13 |
backdropFilter: "blur(16px)",
|
frontend/components/stacking-agent-cards.tsx
CHANGED
|
@@ -26,7 +26,7 @@ const AGENTS = [
|
|
| 26 |
},
|
| 27 |
{
|
| 28 |
label: "LLM ENGINE",
|
| 29 |
-
title: "
|
| 30 |
desc: "State-of-the-art LLM for natural response generation. Context-aware answers with source tracking and confidence scoring.",
|
| 31 |
stats: [{ v: "337ms", l: "latency" }, { v: "4.2x", l: "throughput" }],
|
| 32 |
img: "https://hebbkx1anhila5yf.public.blob.vercel-storage.com/executor-o1q6509qMLXMtpBIGo49vcgOu34sI1.png",
|
|
|
|
| 26 |
},
|
| 27 |
{
|
| 28 |
label: "LLM ENGINE",
|
| 29 |
+
title: "Groq Llama 3",
|
| 30 |
desc: "State-of-the-art LLM for natural response generation. Context-aware answers with source tracking and confidence scoring.",
|
| 31 |
stats: [{ v: "337ms", l: "latency" }, { v: "4.2x", l: "throughput" }],
|
| 32 |
img: "https://hebbkx1anhila5yf.public.blob.vercel-storage.com/executor-o1q6509qMLXMtpBIGo49vcgOu34sI1.png",
|