AI chatbot for applicants and students – get instant answers about studies, teaching, and campus life.
Documentation is available at: docs/
- Getting Started - Quick setup and installation
- Architecture - System design and components
- Deployment - Docker and production deployment
ask.UOS is designed to provide an interactive interface for users to communicate with a chatbot and access up-to-date university information. It leverages the LangChain library for natural language processing and Streamlit for the web interface. The system supports both German and English, and can be easily extended to other languages.
ask.UOS can answer a wide range of general questions about university life in just a few moments, including inquiries about the application process, academic requirements, and various study programs. The chatbot enables users to receive quick support in a conversational manner, without having to wait for office hours or search for the right contact person—available 24/7. For university departments such as student advisory services, the chatbot also helps reduce the volume of support requests.
- Interactive chatbot interface for students and applicants
- Content summarization and document insights
- PDF reading and processing
- Web scraping and data extraction
- Multilingual support (German and English)
- Customizable prompts and responses
- Vector database for efficient unstructured data retrieval
ask.UOS supports both German and English, allowing users to switch languages seamlessly. The translation mechanism is implemented using Python’s gettext library.
-
Translation Setup
- The system generates a
base.mofile fromlocale/de/LC_MESSAGES/base.po(automatically during Docker build). - The project sets up German translation using
gettext.translationand provides a function for dynamic text translation.
- The system generates a
-
Language Initialization
- Streamlit presents a radio button for language selection (default: German).
- The selected language is stored in the session state and query parameters.
-
Usage in Streamlit
- Throughout the app, the translation function is used to display text in the user’s chosen language.