Releases: ericmjl/llamabot
v0.4.6
Version 0.4.6
This release includes a new feature that allows users to choose between receiving the URL of the generated image or saving the image locally when using the ImageBot
class. Additionally, there is a fix for test readability and alignment with the expected use of the bot
function parameters.
New Features
- Added a
return_url
parameter to theImageBot
class to allow users to choose between receiving the URL of the generated image or saving the image locally. This change also includes an updated call signature and logic for handling the new parameter, as well as a new Jupyter notebook workflow for generating banner images based on blog post summaries. (64b1488, Eric Ma)
Bug Fixes
- Fixed an issue in the tests where the
bot
function call intest_call_outside_jupyter
was not using the named parametersave_path
for clarity and to match function signature expectations. This change improves test readability and aligns with the expected use of thebot
function parameters. (18f1095, Eric Ma)
Deprecations
- None in this release.
v0.4.5
Version 0.4.5
This release includes several improvements and updates to the Ollama model list, as well as addressing a compatibility issue with the numpy library.
New Features
- Expanded the list of available Ollama models and updated the Python version requirement to >=3.11 for better compatibility with the latest features (f2a5828, Eric Ma)
- Added "codestral" to the list of Ollama model names to enhance the bot's capabilities (0488db0, Eric Ma)
Bug Fixes
- Temporarily pinned the numpy version to <2 in both environment.yml and pyproject.toml to address a compatibility issue with the current codebase (e1021d2, Eric Ma)
Deprecations
- None in this release
Note: The Python version requirement has been updated to >=3.11, which may potentially break environments with older Python versions. Please ensure your environment meets the new requirement before upgrading.
v0.4.4
Version 0.4.4
This release includes several enhancements to the Docker deployments and command-line interface for the chat service.
New Features
- The base Docker image has been switched to
python:3.10-slim
and environment variables have been introduced for more flexible configuration. Dependencies are now installed directly viapip
andcurl
. Thellamabot
CLI andChatUIMixin
have been updated to support custom host and port configurations. (43fe652) (Eric Ma) - The command-line interface for the API has been updated to include address and port parameters, allowing for more flexible deployment options. (336ad23) (Eric Ma)
Bug Fixes
No bug fixes were included in this release.
Deprecations
- The use of the
condaforge/mambaforge
base Docker image has been deprecated in favor ofpython:3.10-slim
. The default port has also been changed to6363
. These changes may require updates to existing deployment configurations. (43fe652) (Eric Ma)
Note: The commit 8e66d0c
is a merge commit and does not contain any new features or bug fixes. The commit 04d2bc5
is a version bump commit and does not contain any new features or bug fixes. The commit 84736a0
is a release notes commit and does not contain any new features or bug fixes.
v0.4.3
Version 0.4.3
This release includes an update to the ollama
model names list and the panel
dependency.
New Features
- Added
codegemma
to the list ofollama
model names for enhanced functionality. (cdf1fa6, Eric Ma) - Updated the
panel
dependency from1.1.0
to1.3.0
for improved stability and features. This update ensures better performance and compatibility with the latest libraries. (cdf1fa6, Eric Ma)
Bug Fixes
No bug fixes were included in this release.
Deprecations
No deprecations were included in this release.
v0.4.2
Version 0.4.2
This release includes improvements to the Llamabot CLI documentation, enhanced code standards enforcement, and fixes for release notes generation.
New Features
- Improved Llamabot CLI documentation and usage, including new
chat
command details and optional parameters (f683efe, Eric Ma)
Bug Fixes
- Ensured single newline at end of release notes to prevent multiple newlines (ac80ce6, Eric Ma)
- Enforced pre-commit checks to run twice on failure for stricter code standards enforcement (26236c4, Eric Ma)
- Fixed missing newline at the end of the v0.4.1 release notes document (39f75a9, Eric Ma)
Deprecations
- None in this release
Note: The version bump commit (42331e3, github-actions) is not included in the release notes summary.
v0.4.1
Version 0.4.1
This release includes several improvements to the CLI tool's performance, test coverage, and code maintainability.
New Features
- Expanded model names list and increased default query results: Added
command-r
andmxbai-embed-large
to the model names list, and increased the default number of query results from 10 to 20 for better performance and more relevant search results. (1389534, Eric Ma)
Improvements
- Improved CLI tool execution time test: Introduced a new test case to measure the execution time of the llamabot CLI tool and ensured it does not exceed a predefined threshold (2 seconds) to maintain performance expectations. (09f776e, Eric Ma)
- Adjusted CLI tool execution time threshold: Increased the execution time assertion from 2.0 seconds to 3.0 seconds to accommodate changes in the CLI tool's performance characteristics and ensure reliable tests under varying execution conditions. (ca0d353, Eric Ma)
- Simplified
test_call_in_jupyter
with patching: Replacedmocker
usage withunittest.mock.patch
for consistency and clarity, utilizedMagicMock
directly for mocking responses, and streamlined the test by removing redundant setup and assertions. (ee29c25, Eric Ma) - Optimized import statements: Moved imports to function scope in
imagebot.py
anddocstore.py
to improve import efficiency and potentially reduce the initial load time of the modules. (d4e5920, Eric Ma) - Streamlined embedding and schema definition: Replaced
Optional
type import withCallable
, removedDocstoreEntry
class from global scope, integrated its definition withinLanceDBDocStore
constructor, and simplified embedding function retrieval. (7621520, Eric Ma)
Code Maintenance and Optimization
- Bumped version to 0.4.1: Updated the version number to 0.4.1 using GitHub Actions. (6b1df0c, github-actions)
- Merged pull request #50: Incorporated changes from the
improve-cli-timing
branch. (e24911a, Eric Ma) - Optimized imports and removed debug logs: Moved
openai.OpenAI
import toImageBot
constructor, removed unusedloguru.logger
imports and related debug log statements, and encapsulatedlancedb.embeddings.get_registry
import withinDocstoreEntry
constructor. (f158ddd, Eric Ma) - Optimized imports and dynamic loading: Removed unused imports, implemented dynamic import loading for
panel
,pandas
,chromadb
, andlancedb
, and adjusted the scope of import statements to function-level where applicable. (2339555, Eric Ma) - Ensured newline at end of v0.4.0 release notes: Added a newline at the end of the v0.4.0 release notes file to ensure compliance with POSIX standards and improve compatibility with various text processing tools. (b9bd9c5, Eric Ma)
Deprecations
- None in this release
v0.4.0
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)
- Switch QueryBot to use LanceDB instead of ChromaDB (144534e) (Eric Ma)
- Add initial Dockerfile for doc_chat deployment (fb3e873) (Eric Ma)
- Add post-document addition hook and enhance query flexibility (04d6cb6) (Eric Ma)
- Remove BM25DocStore integration (c2072de) (Eric Ma)
- Add tantivy to project dependencies (64434bb) (Eric Ma)
- Add notebook to demonstrate URL markdown issue (846d2b2) (Eric Ma)
- Prevent document duplication in LanceDBDocStore (6d88525) (Eric Ma)
- Allow custom initial message in chat function (84e3fd2) (Eric Ma)
- Enhance bot's system prompt for clarity (6d71a36) (Eric Ma)
- Enhance logging and simplify document retrieval logic in QueryBot (701669e) (Eric Ma)
- Update default model to gpt-4-0125-preview (2cebeaa) (Eric Ma)
- Switch DocumentStore to LanceDBDocStore for question and document storage (688b0fe) (Eric Ma)
- Remove DocumentStore alias and enhance test coverage (7103b84) (Eric Ma)
- Add initial Jupyter notebook for LanceDB integration (476d031) (Eric Ma)
- Add chromadb to project dependencies (baa83f2) (Eric Ma)
- Ensure chat loop only runs in non-serve mode (53ab092) (Eric Ma)
- Introduce abstract document store and LanceDB integration (5d9d9c0) (Eric Ma)
- Integrate LanceDBDocStore and BM25DocStore for document retrieval (f625e57) (Eric Ma)
- Add lancedb to project dependencies (c8a4699) (Eric Ma)
- Add sentence-transformers and remove chromadb (ce7c610) (Eric Ma)
Bug Fixes
- Remove deprecated reproduce_failure decorator (4e6c007) (Eric Ma)
- Handle empty document retrieval gracefully (8c12d93) (Eric Ma)
- Remove redundant reset call in test_querybot (e5e4bc9) (Eric Ma)
- Ensure proper reset of stores in querybot tests (151a41d) (Eric Ma)
Deprecations
v0.3.1
Version 0.3.1
This release includes several new features and improvements to enhance the functionality and performance of the project.
New Features
- Bumped version to 0.3.0, introducing new features and improvements (7a0bcbe, Eric Ma)
- Streamlined API key configuration for release notes generation by utilizing environment variables directly (48c9231, Eric Ma)
- Added reset call to querybot test to maintain test isolation and consistency (5d28f7e, Eric Ma)
- Enhanced
test_querybot
with stream target and input validations to improve test coverage and robustness (54a8a5c, Eric Ma) - Updated the underlying model in llamabot/prompt_library/git.py from
mistral/mistral-medium
togpt-4-0125-preview
to improve response quality and accuracy (603ad73, Eric Ma) - Added support for different LLM models, initial message, and Panel integration to the
chat
command (8fac319, Eric Ma) - Added ChatUIMixin to QueryBot and updated initialization and usage for more flexible handling of user input and output (a662e8b, Eric Ma)
- Added support for initial message and serving the chat interface to ChatUIMixin (d546a9c, Eric Ma)
- Added BM25 search algorithm to DocumentStore for more flexible and accurate document retrieval (c265c1a, Eric Ma)
- Added rank-bm25 library for BM25 ranking to improve search result accuracy (0eee328, Eric Ma)
- Added rank-bm25 library as a dependency for advanced search functionality (29cdb0d, Eric Ma)
- Updated commitbot model to mistral/mistral-medium for cost savings (00dc294, Eric Ma)
- Added new Jupyter notebook for parsing Zotero library with Ollama Mistral model (ae383cb, Eric Ma)
- Updated model name to mistral-medium in commitbot() function of git.py (a5f918f, Eric Ma)
- Updated transformer model to "mistralai/Mistral-7B-v0.1" for improved performance and accuracy (87208bf, Eric Ma)
- Added FastAPI example with async endpoint (fe20f55, Eric Ma)
- Ensured save_filename is a Path object before saving chat logs (0cb480d, Eric Ma)
- Added interactive JavaScript and HTML outputs to Jupyter notebook example (6ee552f, Eric Ma)
- Switched to micromamba for environment setup in docs (547b20e, Eric Ma)
- Copied README to docs/index.md during docs build process (6ce70ae, Eric Ma)
Bug Fixes
There are no bug fixes in this release.
Deprecations
There are no deprecations in this release.
v0.2.5
Here are the release notes based on the provided commit log:
Version 0.2.5
This release includes a small fix to the plaintext_loader
function in the doc_processor
module. The file open mode was changed from "r" to "r+" to allow for additional operations on the file if needed in the future.
New Features
There are no new features in this release.
Bug Fixes
- The file open mode in
plaintext_loader
function was changed from "r" (read-only) to "r+" (read and write). This allows for additional operations on the file if needed in the future. (8251fdc) (Eric Ma)
Deprecations
There are no deprecations in this release.
Note: The commit 48bb8c4
is related to version bump and does not introduce any new features or bug fixes. The commit faa971d
is related to adding release notes and does not introduce any new features or bug fixes. Therefore, they are not included in the release notes.
v0.2.4
Version 0.2.4
This release includes improvements to the autorecord function, enhanced chat command, and updates to Python kernel versions.
New Features
- Autorecord function has been streamlined to record only the last message content, reducing data processing and potential performance issues (268590, Eric Ma)
- The chat command in the CLI now includes a timestamped session name for better traceability and organization of chat sessions (268590, Eric Ma)
Bug Fixes
- The Python kernel version in sembr notebook has been updated to 3.11.7 to ensure compatibility with the latest libraries and features (0ad4701, Eric Ma)
Deprecations
- No deprecations in this release
Note: The commit 9153c5d is a refactoring commit that improves the readability and maintenance of the notebook code, but it does not introduce any new features or bug fixes. The commit b120061 and 31b1056 are related to version bumping and release notes, respectively. The merge commit ae66c86 is not associated with any new features, bug fixes, or deprecations.