Project Overview
This Bachelor's thesis implements an AI-Powered Skill Assessment Chatbot designed for volunteer platforms. It identifies user qualifications using the ESCO and Freiwilligenpass competency frameworks through natural language conversations. The system features real-time skill extraction, dual competency models, persistent data storage, and advanced visualization capabilities to provide comprehensive skill profiles.
Advanced AI Integration
Utilizes cutting-edge language models for natural, context-aware conversations with intelligent response generation.
User Management
Comprehensive user authentication and session management system with persistent chat histories.
Skill-Based Architecture
Modular skill system allowing the chatbot to perform specific tasks and provide specialized responses.
Real-time Communication
WebSocket-based real-time messaging for instant response delivery and seamless user experience.
Secure Backend
FastAPI-powered backend with robust database integration and secure API endpoints.
Data Management
Sophisticated database schema for managing users, messages, chat sessions, and skill configurations.
Technical Architecture
The system is built using a modern tech stack that ensures scalability, maintainability, and performance:
- Backend: FastAPI with Python for high-performance API development
- Database: SQLModel/SQLite for data persistence and relationship management
- AI Integration: Custom LLM wrapper classes for flexible model integration
- Real-time Communication: WebSocket protocol for instant messaging
- Frontend: Clean HTML/CSS/JavaScript for user interface
- Environment Management: UV package manager for Python dependencies
Research Focus
This Bachelor Thesis explores several key areas in conversational AI and system architecture:
- Integration patterns for large language models in web applications
- Skill-based chatbot architectures for specialized task handling
- User session management in conversational AI systems
- Real-time communication protocols for chat applications
- Database design for conversational AI data persistence
- Scalable backend patterns for AI-powered applications