Discover and explore top open-source AI tools and projects—updated daily.
NingNing0111AI Q&A system for personal knowledge bases
Top 95.4% on SourcePulse
Summary
This project offers a personal knowledge base AI Q&A system built upon Retrieval-Augmented Generation (RAG) principles and the Spring AI framework. It targets developers and power users aiming to construct custom, context-aware AI assistants capable of querying specific knowledge repositories and handling multi-modal inputs, serving as a practical learning resource for Spring AI and RAG integration.
How It Works
The system leverages Spring AI 1.x to manage Large Language Model (LLM) interactions and RAG workflows. It integrates PGVector as a vector database for efficient semantic search over document embeddings, enabling granular knowledge base separation through custom query conditions. Conversation history is persisted using a custom DatabaseChatMemory implementation. Multi-modal support includes storing attachments like documents and images in Minio, with planned enhancements for extracting and describing embedded images to enrich conversational context.
Quick Start & Requirements
pnpm install followed by pnpm start. Backend: Modify application.yml and llm.yml (adjusting spring.config.import as needed), then start SystemApp.docker-compose.yml. The system is designed to interface with OpenAI-compatible APIs, potentially via a proxy like One-API.Highlighted Details
DatabaseChatMemory.Maintenance & Community
No specific details regarding project maintainers, community channels (e.g., Discord, Slack), roadmap, sponsorships, or partnerships were provided in the README snippet.
Licensing & Compatibility
The license type and any associated restrictions for commercial use or integration with closed-source projects are not specified in the provided text.
Limitations & Caveats
The project is explicitly positioned as a learning example. Core functionalities such as full multi-modal RAG and automated image extraction/description from documents remain as TODO items, indicating they are not yet implemented.
7 months ago
Inactive
a16z-infra