Welcome to the official repository of the EAK-Copilot challenge, developed as part of the Innovation Fellowship 2024. This project is designed to enhance workplace efficiency and foster innovation by providing AI-supported tools that assist employees in their daily tasks.
This repository serves as a proof of concept (PoC), which is slated to conclude in February 2025. However, we are optimistic that the momentum generated by this innovative challenge will attract continued support and development beyond this timeframe.
Check the website for more information.
- Confluence Adapter
- Indexing Pipeline
- Anonymization/De-Anonymization Module
- Optimized RAG
- OnPrem LLM
- Survey Pipeline
- GUI Styleguide Bundle
- GUI
- Autocomplete
- Basic RAG
COMING SOON: a detailed overview of our project's vision and strategic alignment.
- Automation of Routine Tasks: Reduces monotonous research tasks and the finding of information, allowing employees to focus on more important tasks.
- Decision Support: Provides real-time assistance in decision-making through advanced algorithms.
Please check the CONTRIBUTORS.md
file to contribute to the EAK-Copilot project.
The EAK-Copilot currently features:
- Question autosuggest: High quality curated questions (from FAQ) are suggested in the chatbar based on the user input. Validated answers with sources are then returned in the chat. Autocomplete currently supports exact match, fuzzy match and semantic similarity match.
- RAG: When no known question/answer pairs are found through autosuggest, RAG is initiated. A semantic similarity search will match the most relevant indexed documents in a vector database and an LLM will generate an answer based on these documents, providing the source of the answer.
Here you will find instructions for installing and setting up EAK-Copilot:
Before starting, ensure you have the following software installed on your computer:
- Git: Needed for source code management. Install from here.
- Docker: Required for running containers. Install from here.
- Docker Compose: Necessary for managing multi-container Docker applications. Install from here.
Linux users may need to prepend sudo
to Docker commands depending on their Docker configuration.
-
Clone the Repository
Begin by cloning the EAK-Copilot repository to your local machine.
git clone https://github.com/CdC-SI/ZAS-EAK-CopilotGPT.git
cd ZAS-EAK-CopilotGPT
-
Setting Up Environment Variables
To use the ZAS/EAK-Copilot, you need to set up some environment variables. The
OPENAI_API_KEY
is a required field that must be filled in, all other fields are preconfigured with default settings (but can be configured as well). Copy the.env.example
file to a new file named.env
and fill in the appropriate values:cp .env.example .env
-
Build Docker Images
Build the Docker images using the Docker Compose configuration. This step compiles and launches your Docker environment.
docker-compose up --build -d
-
Verifying the Installation
Check the status of the containers to confirm everything is running as expected:
docker-compose ps
After the containers are successfully started, verify that the application is running correctly by accessing it through your web browser at http://localhost:4200.
-
Notes
-
To add some sample data for FAQ and RAG, you can navigate to http://localhost:8000/apy/indexing/docs/ and make a request to
/add_faq_data_from_csv
and/add_rag_data_from_csv
(setembed
parameter totrue
to enable semantic search). -
To index more extensive FAQ data from https://faq.bsv.admin.ch, navigate to http://localhost:8000/apy/indexing/docs and make a request to the
/index_faq_data
endpoint. -
To index more extensive RAG data, navigate to http://localhost:8000/apy/indexing/docs and make a request to the
/index_html_from_sitemap
and/index_pdfs_from_sitemap
endpoints (setembed
parameter totrue
to enable semantic search).
-