Summarization with LLMs
feat~ai.summarization~1
Rationale: to provide capabilities for distilling large amounts of text into concise summaries using LLMs
Needs: model
Covers: feat~ai~1
General AI summarization requirements
feat~ai.summarization.general~1
Rationale: basic functional requirements that apply to all summarization activities regardless of the specific algorithm
Covers: feat~ai.summarization~1
Handle documents of any size for AI summarization
req~ai.summarization.general.unlimited-size~1
Rationale: users upload documents of varying lengths, from single pages to books, and the system must process them without hitting context window limits
Needs: impl
Covers: feat~ai.summarization.general~1
Allow export of AI summaries
req~ai.summarization.general.export~1
Rationale: users would want to access a summary offline, or use it in some other program
Needs: impl
Covers: feat~ai.summarization.general~1
AI summaries should be preserved
req~ai.summarization.general.storage~1
Needs: impl, utest, dsn
Covers: feat~ai.summarization.general~1
AI summarization of entries
feat~ai.summarization.entries~1
Rationale: specific functionality related to the summarization of database entries or document records
Needs: impl, pp
Covers: feat~ai.summarization~1
Add ability for automatic AI summarization of new entries
req~ai.summarization.entries.auto~1
Rationale: users may wish to automatically generate the summaries for new entries in a library
Needs: impl, pp
Covers: feat~ai.summarization.entries~1
AI summarization algorithms
feat~ai.summarization.algorithms~1
Rationale: distinct strategies for processing text, necessary because different document lengths require different architectural approaches (e.g. single pass vs map-reduce)
Needs: impl
Covers: feat~ai.summarization~1
Allow users to select a default summarization algorithm
req~ai.summarization.algorithm.default~1
Needs: impl
Covers: feat~ai.summarization.algorithms~1
“Chunked” AI summarization algorithm
feat~ai.summarization.algorithms.chunked~1
Rationale: a strategy for large documents that splits text into pieces, summarizes them individually, and then combines the results
Needs: impl
Reference: simplified version of the algorithm described in https://arxiv.org/abs/2109.10862
Covers: feat~ai.summarization.algorithms~1
Allow customization of the system prompt for chunk task in “chunked” AI summarization
req~ai.summarization.algorithms.chunked.system-prompt-chunk~1
Rationale: users need to adjust the underlying prompt structures to refine AI outputs
Needs: impl
Covers: feat~ai.summarization.algorithms.chunked~1, feat~ai.expert-settings~1
Allow customization of the system prompt for combination task in “chunked” AI summarization
req~ai.summarization.algorithms.chunked.system-prompt-combine~1
Rationale: users need to adjust the underlying prompt structures to refine AI outputs
Needs: impl
Covers: feat~ai.summarization.algorithms.chunked~1, feat~ai.expert-settings~1
“Full document” AI summarization algorithm
feat~ai.summarization.algorithms.full~1
Rationale: a strategy for short documents that fit entirely within the LLM’s context window, allowing for a single-pass summary
Needs: impl
Reference: https://arxiv.org/abs/2307.03172
Covers: feat~ai.summarization.algorithms~1
Allow customization of the system prompt for “full document” AI summarization
req~ai.summarization.algorithms.full.system-prompt~1
Rationale: users need to adjust the underlying prompt structures to refine AI outputs
Needs: impl
Covers: feat~ai.summarization.algorithms.full~1, feat~ai.expert-settings~1