RAG MVP for Chat - Documentation
The first iteration of RAG customization for a self-hosted feature will begin with documentation Q&As within Duo Chat. Duo Chat is currently configured to enable question answering on GitLab documentation. We can offer customizations that would allow a user to ask and answer questions on their own documentation. ## Pre-Conditions 1. Customer is hosting ElasticSearch that can be configured with a self-managed GitLab instance for indexing/embedding 2. Customer is self-hosting a LLM to support Chat functionality ### Self-Hosted Chat Development Steps * [ ] Prompt Routing in GitLab Rails * [ ] Baselines of Chat capabilities * [ ] Mistral series * [ ] Prompt Iteration for RAG injections for baseline models ### RAG Flow * [Instance-Level Configuration for External Documentation](https://gitlab.com/gitlab-org/gitlab/-/issues/464630 "Instance-Level Configuration for External Documentation") * customer configures their self managed GitLab instance to connect to a self-hosted embedding/indexing model (ie ElasticSearch) * customer provides routing for documentation(s) that serve as context for question answering * within the GitLab UI, the customer can configure indexing/chunking approach * the index(s) are stored within their Gitlab instance * within the GitLab UI, the user can set their retrieval methodology * within the GitLab UI, the customer can configure hotkeys (ie @companyx) to indicate when they want to invoke their specific documentation * the customer can ask questions to Duo chat using an @ hotkey to invoke specific documentation
epic