feat(rag): implement RAG-style attachment handling for enhanced document indexing#687
Open
ba0f3 wants to merge 3 commits intonextlevelbuilder:devfrom
Open
feat(rag): implement RAG-style attachment handling for enhanced document indexing#687ba0f3 wants to merge 3 commits intonextlevelbuilder:devfrom
ba0f3 wants to merge 3 commits intonextlevelbuilder:devfrom
Conversation
…ent indexing - Introduced RAG (Retrieval-Augmented Generation) functionality to handle document attachments, enabling text extraction during LLM turns and asynchronous indexing into memory. - Updated `registerAllMethods` to include a new `MemoryStore` parameter for session management. - Enhanced `SessionsMethods` to purge RAG-related documents upon session deletion and reset. - Added new methods for document extraction and indexing, supporting various file types including .pdf, .docx, and .xlsx. - Created a comprehensive implementation guide in `docs/rag-implementation.md` detailing RAG functionality and configuration. - Implemented tests for RAG attachment handling and scope parsing to ensure correct behavior across different contexts. This commit lays the groundwork for improved document handling and retrieval in the system, enhancing user experience and operational efficiency.
- Added `AgentUpdateResponse` type to the imports in `agent-advanced-dialog.tsx` and `agent-overview-tab.tsx` to enhance type safety and clarity in agent data updates. - Improved the handling of RAG dependencies in `rag-page.tsx` by ensuring the last RAG dependencies are correctly retrieved from a filtered list, enhancing robustness in data management. This commit refines type definitions and improves data handling logic across the agent detail components.
- Introduced `RAG_SELECTED_AGENT_IDS` constant to manage selected agent IDs in localStorage, allowing persistence across sessions. - Updated `rag-page.tsx` to restore selected agent IDs from localStorage when the agent list is available and to save changes back to localStorage. - Enhanced comments for clarity regarding the behavior of selected agent IDs. This commit improves user experience by maintaining agent selection state across page reloads.
|
Very interesting |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary
Optional RAG attachment indexing hooks the agent loop to extract text from uploaded documents, inject it into the current user turn when possible, and async-index it into memory under scoped rag/... paths for later memory_search.
See
docs/rag-implementation.mdfor architecture and usage.Type
main)Target Branch
Checklist
go build ./...passesgo build -tags sqliteonly ./...passes (if Go changes)go vet ./...passesgo test -race ./...cd ui/web && pnpm build(if UI changes)$1, $2(no string concat)internal/upgrade/version.go(if new migration)Test Plan