## Version 0.4.0

This release includes several enhancements and improvements to the document store, query bot, and CLI functionality. Additionally, LanceDB has been integrated as a new document store option, and the project dependencies have been updated.

### New Features

- **Bump version to 0.4.0** (3278cc4) ([github-actions](mailto:github-actions@github.com))
- **Switch QueryBot to use LanceDB instead of ChromaDB** (144534e) ([Eric Ma](mailto:ericmjl@users.noreply.github.com))
- **Add initial Dockerfile for doc_chat deployment** (fb3e873) ([Eric Ma](mailto:ericmajinglong@gmail.com))
- **Add post-document addition hook and enhance query flexibility** (04d6cb6) ([Eric Ma](mailto:ericmajinglong@gmail.com))
- **Remove BM25DocStore integration** (c2072de) ([Eric Ma](mailto:ericmajinglong@gmail.com))
- **Add tantivy to project dependencies** (64434bb) ([Eric Ma](mailto:ericmajinglong@gmail.com))
- **Add notebook to demonstrate URL markdown issue** (846d2b2) ([Eric Ma](mailto:ericmajinglong@gmail.com))
- **Prevent document duplication in LanceDBDocStore** (6d88525) ([Eric Ma](mailto:ericmajinglong@gmail.com))
- **Allow custom initial message in chat function** (84e3fd2) ([Eric Ma](mailto:ericmajinglong@gmail.com))
- **Enhance bot's system prompt for clarity** (6d71a36) ([Eric Ma](mailto:ericmajinglong@gmail.com))
- **Enhance logging and simplify document retrieval logic in QueryBot** (701669e) ([Eric Ma](mailto:ericmajinglong@gmail.com))
- **Update default model to gpt-4-0125-preview** (2cebeaa) ([Eric Ma](mailto:ericmajinglong@gmail.com))
- **Switch DocumentStore to LanceDBDocStore for question and document storage** (688b0fe) ([Eric Ma](mailto:ericmajinglong@gmail.com))
- **Remove DocumentStore alias and enhance test coverage** (7103b84) ([Eric Ma](mailto:ericmajinglong@gmail.com))
- **Add initial Jupyter notebook for LanceDB integration** (476d031) ([Eric Ma](mailto:ericmajinglong@gmail.com))
- **Add chromadb to project dependencies** (baa83f2) ([Eric Ma](mailto:ericmajinglong@gmail.com))
- **Ensure chat loop only runs in non-serve mode** (53ab092) ([Eric Ma](mailto:ericmajinglong@gmail.com))
- **Introduce abstract document store and LanceDB integration** (5d9d9c0) ([Eric Ma](mailto:ericmajinglong@gmail.com))
- **Integrate LanceDBDocStore and BM25DocStore for document retrieval** (f625e57) ([Eric Ma](mailto:ericmajinglong@gmail.com))
- **Add lancedb to project dependencies** (c8a4699) ([Eric Ma](mailto:ericmajinglong@gmail.com))
- **Add sentence-transformers and remove chromadb** (ce7c610) ([Eric Ma](mailto:ericmajinglong@gmail.com))

### Bug Fixes

- **Remove deprecated reproduce\_failure decorator** (4e6c007) ([Eric Ma](mailto:ericmajinglong@gmail.com))
- **Handle empty document retrieval gracefully** (8c12d93) ([Eric Ma](mailto:ericmajinglong@gmail.com))
- **Remove redundant reset call in test\_querybot** (e5e4bc9) ([Eric Ma](mailto:ericmajinglong@gmail.com))
- **Ensure proper reset of stores in querybot tests** (151a41d) ([Eric Ma](mailto:ericmajinglong@gmail.com))

### Deprecations

- **Remove scratch notebook docstore\_lancedb** (666dbf6) ([Eric Ma](mailto:ericmajinglong@gmail.com))
- **Remove obsolete cache prototype notebook** (6d88525) ([Eric Ma](mailto:ericmajinglong@gmail.com))
- **Remove DocumentStore alias** (7103b84) ([Eric Ma](mailto:ericmajinglong@gmail.com))
- **Remove chromadb from dependencies** (ce7c610) ([Eric Ma](mailto:ericmajinglong@gmail.com))
