route.console
Status: ONLINE
paiva@jcpaiva.dev:~$cat ~/projects/toti/README.md

Toti AI Assistant — HUB Digital

Multilingual conversational AI assistant for the HUB Digital platform featuring routed RAG, Langflow orchestration, Qdrant vector retrieval, and strict catalog grounding.

ProductionAI Assistant
toti.md

Architected and engineered Toti, the conversational AI assistant integrated into the HUB Digital (INOV-NORTE) platform serving higher-education institutions in Portugal.

Toti acts as an intelligent, source-grounded companion helping educators, researchers, and students discover catalog resources, navigate learning pathways, and explore educational technologies through natural language conversations.

Key Capabilities & User Experience

  • Catalog Search & Discovery: Processes natural language queries (e.g., "Show me courses about AI in education", "Suggest a collaboration tool for students") against the multi-institutional catalog.
  • Structured Data Tables: Organizes multi-item comparisons, tool overviews, and course offerings into scannable markdown tables directly within the conversational interface.
  • Direct Navigation & Rich Action Cards: Renders interactive UI action cards with single-click deep links pointing straight to verified catalog entities.
  • Fully Bilingual Support: Automatically detects input query language and delivers fluent, culturally adapted responses in Portuguese and English.
  • Omnipresent & Contextual Access: Accessible via a persistent floating action widget across all platform pages, contextual "Ask Toti" buttons pre-seeding queries with active entity metadata, and a dedicated full-page chat dashboard.

Routed RAG Architecture & Engineering Highlights

  • Intent-Driven RAG Pipeline: Orchestrated using Langflow, user messages pass through a lightweight deterministic intent router classifying requests into Clarification, Restricted Retrieval, or Hybrid Retrieval.
  • Type-Aware Qdrant Vector Filtering: Indexes seven distinct catalog entity families (course, tool, resource, best_practice, case_study, pedagogical_method, community). Retrieval injects metadata payload filters to enforce clean boundary separation.
  • Strict Anti-Hallucination & Source Grounding Policies:
    • Restricted Agent: Courses and communities are strictly bounded to internal verified catalog data in Qdrant—external web augmentation is explicitly disallowed to prevent hallucinating dates, requirements, or availability.
    • Hybrid Agent: Tools, resources, and pedagogical methods query internal records first, allowing controlled external web search exclusively to enrich already-retrieved catalog entities.
  • Clarification-First Fallback: If query confidence is low or intent is underspecified, Toti immediately returns targeted clarification prompts without triggering costly or misleading vector searches.
  • Dual-Engine LLM Support: Designed for high-reliability production with Azure OpenAI and containerized local model inference via Ollama.
  • Real-Time Directus CMS Synchronization: Automated webhook and operation hooks keep Qdrant vector collections synchronized upon catalog create, update, and delete events.
  • Frontend State Management: Built on Nuxt 3 with a dedicated Pinia chat store (stores/chat.ts) and modular composables (useChat) managing streaming session lifecycles, history caching, and authenticated Directus AI endpoints.

$ open ./screenshots/*

screenshots.gallery
01/05
Toti AI Assistant — HUB DigitalScreenshot 1 of 5

$ git branch --related

// created: 2026-01e-learning platform

Multi-tenant learning academy, communities of practice, and central CMS platform for higher-education consortium.

Nuxt.jsTypeScriptNode.jsPostgreSQLMoodle API+3 more
// created: 2025-12ai assistant

AI-powered conversational pedagogical agent for Moodle combining RAG, Qdrant vector DB, and real-time gamification.

PythonQdrantRAGLLMMoodle Plugin+1 more
// created: 2021-08e-learning system

International Erasmus+ ecosystem for gamified programming learning, featuring GraphQL Gamification Service, React PWA learning environment, and AuthorKit exercise builder.

TypeScriptReactNode.jsGraphQLNestJS+5 more
start_conversation.sh
paiva@jcpaiva.dev:~$ ./start-conversation

Need expertise related to Toti AI Assistant — HUB Digital?

Share the context, constraints, and outcome you need. I can help shape the architecture and the delivery path.

privacy.config
Read the privacy and storage details