Add RAG-based chatbot for querying ingested data #53
Add this suggestion to a batch that can be applied as a single commit. This suggestion is invalid because no changes were made to the code. Suggestions cannot be applied while the pull request is closed. Suggestions cannot be applied while viewing a subset of changes. Only one suggestion per line can be applied in a batch. Add this suggestion to a batch that can be applied as a single commit. Applying suggestions on deleted lines is not supported. You must change the existing code in this line in order to create a valid suggestion. Outdated suggestions cannot be applied. This suggestion has been applied or marked resolved. Suggestions cannot be applied from pending reviews. Suggestions cannot be applied on multi-line comments. Suggestions cannot be applied while the pull request is queued to merge. Suggestion cannot be applied right now. Please check back later.
Related to #48
Integrate a RAG-based chatbot for querying ingested GitHub repository data.
Backend Changes:
src/gitingest/embedding.py
to handle vectorization of repository content.src/gitingest/rag_chatbot.py
to manage retrieval and generation logic.src/routers/chatbot.py
for chatbot communication.Frontend Updates:
src/templates/index.jinja
andsrc/templates/github.jinja
to include a chatbot UI with input and response display elements.Dependencies:
requirements.txt
to includesentence-transformers
,openai
,langchain
, andfaiss-cpu
.Testing:
src/gitingest/tests/test_embedding.py
to validate embedding generation and storage.src/gitingest/tests/test_rag_chatbot.py
to validate retrieval accuracy and response quality.src/gitingest/tests/test_chatbot_endpoints.py
to validate API endpoint functionality.