How viswam-aws/enterpise_rag_v3 works
This repository contains two local-first RAG chatbots: one for Jira tickets and one for Confluence documents. The main Jira workflow ingests ticket exports, splits them at ticket boundaries, preserves metadata through chunking, indexes them, and serves authenticated questions through a staged router and retrieval/LLM path. Confluence has a parallel document-ingestion and chat experience with conversation history. The graph retains major README-described capabilities; many implementation variants are indexed but not sampled, so uncertain links are omitted rather than inferred.
Main entry points: working_flask_bot_list_cc_new_v4_greet.py Query router · working_main_chroma_index_iterate_new_cc_count_export_name_v2.py Vector indexing · working_flask_confluence_bot_history_v4.py Flask interface · working_confuluence_chroma_cluster.py Vector indexing
Components 22
Jira ingestion
- Jira exports
jira_bot/jira_data - Ticket loader
jira_bot/jira_vectorizing/working_main_chroma_index_iterate_new_cc_count_export_name_v2.py - Ticket slicing
jira_bot/jira_vectorizing/working_main_chroma_index_iterate_new_cc_count_export_name_v2.py - Metadata chunks
jira_bot/jira_vectorizing/working_main_chroma_index_iterate_new_cc_count_export_name_v2.py - Vector indexing
jira_bot/jira_vectorizing/working_main_chroma_index_iterate_new_cc_count_export_name_v2.py
Jira chat
- Flask interface
jira_bot/widget_jira_bot/working_flask_bot_list_cc_new_v4_greet.py - Query router
jira_bot/widget_jira_bot/working_flask_bot_list_cc_new_v4_greet.py - Pinned context
jira_bot/widget_jira_bot/working_flask_bot_list_cc_new_v4_greet.py - Ticket lookup
jira_bot/widget_jira_bot/working_flask_bot_list_cc_new_v4_greet.py - Hybrid matching
jira_bot/widget_jira_bot/working_flask_bot_list_cc_new_v4_greet.py - Fallback RAG
jira_bot/widget_jira_bot/working_flask_bot_list_cc_new_v4_greet.py
Confluence ingestion
- Knowledge files
confluence_bot/confluence_data - Document loader
confluence_bot/confluence_vectorizing/working_confuluence_chroma_cluster.py - Text chunking
confluence_bot/confluence_vectorizing/working_confuluence_chroma_cluster.py - Vector indexing
confluence_bot/confluence_vectorizing/working_confuluence_chroma_cluster.py - Topic clustering
confluence_bot/confluence_vectorizing/working_confuluence_chroma_cluster.py
Confluence chat
- Flask interface
confluence_bot/widget_confluence_bot/working_flask_confluence_bot_history_v4.py - Context retrieval
confluence_bot/widget_confluence_bot/working_flask_confluence_bot_history_v4.py - Conversation history
confluence_bot/widget_confluence_bot/working_flask_confluence_bot_history_v1.py - Answer chain
confluence_bot/widget_confluence_bot/working_flask_confluence_bot_history_v4.py
Other components
- User
- Local Ollama
Connections 27
- Jira exports → Ticket loader: loads
README.md - Ticket loader → Ticket slicing: splits tickets
jira_bot/jira_vectorizing/working_main_chroma_index_iterate_new_cc_count_export_name_v2.py - Ticket slicing → Metadata chunks: chunks metadata
README.md - Metadata chunks → Vector indexing: embeds and stores
jira_bot/jira_vectorizing/working_main_chroma_index_iterate_new_cc_count_export_name_v2.py - Local Ollama → Vector indexing: embeds
README.md - User → Flask interface: asks
README.md - Flask interface → Query router: routes query
jira_bot/widget_jira_bot/working_flask_bot_list_cc_new_v4_greet.py - Query router → Pinned context: pins context
jira_bot/widget_jira_bot/working_flask_bot_list_cc_new_v4_greet.py - Query router → Ticket lookup: checks ticket ID
README.md - Query router → Hybrid matching: matches titles
README.md - Query router → Fallback RAG: falls back
README.md - Ticket lookup → Vector indexing: filters retrieval
jira_bot/widget_jira_bot/working_flask_bot_list_cc_new_v4_greet.py - Hybrid matching → Vector indexing: searches vectors
README.md - Fallback RAG → Vector indexing: retrieves context
jira_bot/widget_jira_bot/working_flask_bot_list_cc_new_v4_greet.py - Fallback RAG → Local Ollama: generates answer
README.md - Knowledge files → Document loader: loads
confluence_bot/confluence_vectorizing/working_confuluence_chroma_cluster.py - Document loader → Text chunking: splits text
confluence_bot/confluence_vectorizing/working_confuluence_chroma_cluster.py - Text chunking → Vector indexing: indexes chunks
confluence_bot/confluence_vectorizing/working_confuluence_chroma_cluster.py - Vector indexing → Topic clustering: clusters embeddings
confluence_bot/confluence_vectorizing/working_confuluence_chroma_cluster.py - Local Ollama → Vector indexing: embeds
confluence_bot/confluence_vectorizing/working_confuluence_chroma_cluster.py - User → Flask interface: asks
confluence_bot/widget_confluence_bot/working_flask_confluence_bot_history_v4.py - Flask interface → Context retrieval: prepares context
confluence_bot/widget_confluence_bot/working_flask_confluence_bot_history_v4.py - Context retrieval → Vector indexing: retrieves documents
- Flask interface → Conversation history: reads history
confluence_bot/widget_confluence_bot/working_flask_confluence_bot_history_v4.py - Flask interface → Answer chain: invokes chain
confluence_bot/widget_confluence_bot/working_flask_confluence_bot_history_v4.py - Answer chain → Local Ollama: generates answer
- Answer chain → Conversation history: records exchange