legco_ai_assistant/backend/app/services
Woody c6d4a38013 feat: add LLM-based batch highlight service and HTML rendering (Phase 5.4.4)
- ChunkHighlightService.compute_highlights_batch(): single LLM call across
  all cited chunks, grouped by sub-question, with structured output
- render_highlight_html(): self-contained HTML page with yellow-highlighted
  relevant sentences, LLM reason annotations, and View Original PDF footer
- Per-target error isolation, ChromaDB miss handling, graceful degradation
- 14 tests: 7 batch service + 7 HTML rendering
2026-04-29 09:26:33 +08:00
..
__init__.py feat: Phase 1.1 project setup with config, database, and models 2026-04-22 16:13:52 +08:00
chunk_highlight_service.py feat: add LLM-based batch highlight service and HTML rendering (Phase 5.4.4) 2026-04-29 09:26:33 +08:00
embedding_client.py feat(backend): add embedding client and update LLM client 2026-04-23 13:26:43 +08:00
highlight_cache.py feat: add SQLite highlight cache service (Phase 5.4.3) 2026-04-29 09:26:20 +08:00
history_service.py feat(db): update history schema and generate prompt template for Package 4 2026-04-26 23:28:28 +08:00
llm_client.py feat(llm): log structured LLM response and extra_body 2026-04-28 16:50:26 +08:00
prompt_service.py feat(prompts): integrate filter_per_subq with PromptService, fix seed bugs, restructure UI 2026-04-27 11:14:27 +08:00
query_decomposer.py feat: structured LLM output for decompose + citation fuzzy matching (Phase 5) 2026-04-28 15:39:17 +08:00
rag.py feat: structured LLM output for decompose + citation fuzzy matching (Phase 5) 2026-04-28 15:39:17 +08:00
relevance_filter.py fix(relevance): tolerate LLM score count mismatches via padding instead of discarding 2026-04-27 14:31:18 +08:00