- Sourced 4 core documents for the knowledge base (DARVO, Duluth Power and Control Wheel, Biderman's Chart of Coercion, UK coercive control statutory guidance)
- Built the document ingestion pipeline (load, chunk, embed, store in ChromaDB)
- Currently working on: chunking strategy for long-form legal documents
- If you get
ModuleNotFoundError: No module named 'langchain.text_splitter', installlangchain-text-splittersseparately and import from that package directly, not fromlangchain.text_splitter. LangChain moved this out into its own package in recent versions.
Fixed a major retrieval bug: the coercive control guidance document (91 pages) was drowning out the shorter DARVO, Biderman, and Power and Control Wheel sources in search results. Trimmed the guidance PDF to relevant sections, discovered the Wheel PDF wasn't being read correctly (it's a graphic, not text) and rebuilt it as plain text, and added logic to guarantee each source gets retrieved rather than letting document size dominate. Retrieval now pulls relevant content from all four frameworks.