Skip to content

Releases: ericmjl/llamabot

v0.13.8

10 Sep 12:01
Compare
Choose a tag to compare

Version 0.13.8

This release includes new features enhancing data handling and integration capabilities, along with critical bug fixes improving the robustness of error handling in code execution tools.

New Features

  • Added a new dataset containing IC50 values with additional confounders such as instrument, operator, temperature, pH, and passage number for enhanced data analysis in notebooks. (b84edb) (Eric Ma)
  • Introduced CSV file upload and processing capabilities, along with API key input for enhanced ToolBot integration, providing a more robust and user-friendly interface for data manipulation and configuration. (1ffe62) (Eric Ma)

Bug Fixes

  • Modified error handling in llamabot.components.tools to raise exceptions directly instead of returning error strings, ensuring clearer error reporting and compliance with best practices in error management. (ce082b) (Eric Ma)

Deprecations

  • No deprecations in this version.

v0.13.7

09 Sep 17:12
Compare
Choose a tag to compare

Version 0.13.7

This release introduces several enhancements to the ToolBot and context engineering functionalities, improving error handling, callable support, and data analysis capabilities. Additionally, the release includes various refactoring efforts to streamline code and improve clarity.

New Features

  • Added callable support to ToolBot, allowing dynamic message generation and enhanced output handling for the write_and_execute_code tool. This update also includes comprehensive tests and documentation for new features. (9392bd) (Eric Ma)
  • Introduced convenience functions in the context_engineering module to describe DataFrames and nested data structures within globals, providing detailed column analysis and support for recursive traversal. (3eaee0) (Eric Ma)
  • Launched the ToolBot module with detailed documentation, a tutorial, and an example script for single-turn tool execution and function calling, integrated into the llamabot package. (408699) (Eric Ma)

Bug Fixes

  • There are no specific bug fixes listed in this release.

Deprecations

  • There are no deprecations in this release.

v0.13.6

23 Aug 20:10
Compare
Choose a tag to compare

Version 0.13.6

This release introduces enhancements to tool serialization and documentation, along with the addition of new computational tools in the notebooks.

New Features

  • Added default parameter values to function schema serialization to enhance clarity and usability in tool interactions. This update includes improvements to documentation and handling of keyword arguments in function execution wrappers. (1d4b338) (Eric Ma)
  • Enhanced the agentbot tutorial to include comprehensive parsing and utilization of various docstring styles, improving the self-documentation capabilities of tools. This update makes it easier to understand and use LlamaBot tools effectively. (adbc9fc) (Eric Ma)
  • Introduced a new compound interest calculation tool in the notebooks, which is exposed through the llamabot module. This feature includes the ability to access the JSON schema of the tool, facilitating its use in financial computations. (5ca44f3) (Eric Ma)

Bug Fixes

  • None listed in this release.

Deprecations

  • None listed in this release.

v0.13.5

23 Aug 01:20
Compare
Choose a tag to compare

Version 0.13.5

This release includes enhancements to developer tools and general maintenance updates.

New Features

  • Enhanced the function_to_dict tool to merge short and long docstring descriptions into a single output, improving documentation clarity. This update also includes a new example notebook demonstrating the function's application in compound interest calculations, along with additional tests to ensure functionality. (14b3bf5) (Eric Ma)

Bug Fixes

  • None

Deprecations

  • None

v0.13.4

23 Aug 01:03
Compare
Choose a tag to compare

Version 0.13.4

This release includes significant improvements in docstring parsing and function metadata extraction, enhancing performance and compatibility with various docstring styles.

New Features

  • Introduced function_to_dict and parse_docstring utilities to enhance function metadata extraction, supporting numpy, google, and sphinx-style docstrings. This feature allows for better integration with OpenAI function calling by using docstring parsing and type annotations. (609097) (Eric Ma)
  • Added comprehensive tests for the new parse_docstring utility to ensure graceful handling of malformed and long descriptions across different docstring styles. (7cf220) (Eric Ma)
  • Refactored docstring parsing in the llamabot.components.tools to use pre-compiled regex patterns, improving performance and readability while enhancing parameter parsing flexibility. (68fd2f) (Eric Ma)
  • Major refactor of docstring parsing to utilize the docstring-parser library, replacing custom regex-based parsing. This update simplifies the type extraction logic and improves handling of optional parameters, ensuring better compatibility and maintainability. (ac93d5) (Eric Ma)

Bug Fixes

  • None in this release.

Deprecations

  • None in this release.

v0.13.3

22 Aug 12:10
Compare
Choose a tag to compare

Version 0.13.3

This release includes an update to the llamabot dependency, enhancing stability and performance.

New Features

  • Updated llamabot dependency from version 0.13.1 to 0.13.2, ensuring compatibility with the latest features and improvements (d7d326) (Eric Ma)

Bug Fixes

  • None

Deprecations

  • None

v0.13.2

22 Aug 11:02
Compare
Choose a tag to compare

Version 0.13.2

This minor release includes refinements in code naming and logging, alongside routine version updates.

New Features

  • Renamed 'kwargs' to 'keyword_args' in the write_and_execute_code_wrapper function to enhance code readability and maintainability. (3ef8f7) (Eric Ma)
  • Replaced print statements with logger.debug in notebooks/agents.py to improve the logging system. (3ef8f7) (Eric Ma)

Bug Fixes

  • Corrected the version number in the release notes to align with the actual software version. (e41ef27) (Eric Ma)

Deprecations

  • None in this release.

This version continues to refine the project's codebase and documentation, ensuring greater clarity and control in logging functionalities.

v0.13.1

22 Aug 01:46
Compare
Choose a tag to compare

Version 0.13.1

This release introduces the new ToolBot agent for single-turn tool execution, major improvements to code execution tooling, enhanced error handling, and significant refactoring for clarity and maintainability. Several dependency and workflow updates are also included, along with targeted bug fixes and test improvements.

New Features

  • Added ToolBot agent for single-turn tool selection and execution, supporting core tools and optional chat memory integration. ToolBot processes user messages, selects the appropriate tool, and executes it in a single turn. (21f3c2, Eric Ma)
  • Implemented a detailed system prompt for ToolBot, guiding tool selection, argument extraction, and code generation best practices. (7b15fa, Eric Ma)
  • Introduced the write_and_execute_code tool, which dynamically parses, compiles, and executes user-defined Python functions with arguments in a sandboxed environment. (bb392b, Eric Ma)
  • Enhanced prompt generation in notebooks to include global variables, callable functions, dataframes, and other variables for improved context in user requests. (d0a7e8, Eric Ma)
  • Added example data generation and department info setup for testing and demonstration purposes in agent notebooks. (d0a7e8, Eric Ma)

Bug Fixes

  • Fixed argument name in ToolBot initialization for the write_and_execute_code tool, ensuring correct function signature usage. (70f597, Eric Ma)
  • Removed the token argument from the uv publish command in the release workflow, as it is no longer required. (868cfe, Eric Ma)
  • Fixed ToolBot test setup by passing an explicit globals dictionary to the write_and_execute_code tool, ensuring consistent and isolated test environments. (a4ff16, Eric Ma)
  • Marked LanceDB-related tests as expected to fail due to file system issues, improving test reliability. (4ef7f9, Eric Ma)

Deprecations

  • Removed the entire Zotero CLI and related components, including CLI commands, prompt library, completer, library wrappers, utilities, and tests. Also removed pyzotero and related dependencies from the project. (5981b0, Eric Ma)
  • Removed devcontainer configuration files and related GitHub workflows, discontinuing support for development container setup. (713552, Eric Ma)

Additional Improvements:

  • Refactored ToolBot and write_and_execute_code for improved clarity, error handling, and maintainability. (bb392b, a31344, 490fcb, ca610c, 7b15fa, d0a7e8, Eric Ma)
  • Updated dependencies in notebooks, including upgrades to llamabot, marimo, and the addition of matplotlib, seaborn, and others. (d0a7e8, fb3617, Eric Ma)
  • Improved GitHub Actions workflows for Python package release and code review, including permissions and trigger simplifications. (53f466, 5d6965, fc1d2b, 4fda1a, Eric Ma)
  • Enhanced and updated documentation and tutorials for new agent features, usage, and best practices. (90f057, 0ad2f3, eefb61, 9b678a, Eric Ma)
  • Cleaned up codebase by removing unused code, commented-out docstrings, and trailing whitespace. (ca610c, 623baa, 366ceb, fb3617, Eric Ma)
  • Updated and improved test coverage for ToolBot and related components, including model name updates and tool naming consistency. (09864d, 4b9b14, a4ff16, 4ef7f9, Eric Ma)
  • Updated third-party dependencies via Dependabot for improved security and compatibility. (baff52, 311371, 876ea5, Dependabot)

This release lays the foundation for more flexible, tool-driven agents and improves the developer experience with better error handling, testing, and documentation.

v0.13.0

23 Jul 23:07
Compare
Choose a tag to compare

Version 0.13.0

This release introduces significant enhancements to the chat memory system, including new features for graph-based retrieval and improved node selection logic. Additionally, there are updates to testing frameworks, documentation improvements, and dependency updates.

New Features

  • Introduced a unified chat memory system that supports both linear and graph-based threading, complete with message summarization and node selection strategies. (ed4589b) (Eric Ma)
  • Added graph-aware retrieval capabilities to the chat memory system, allowing for context-sensitive message retrieval based on conversation threading. (1a994e9) (Eric Ma)
  • Enhanced the llamabot components to expose user, assistant, system, and dev roles directly from the messages module, facilitating easier component integration. (e6b8a9d) (Eric Ma)
  • Implemented a new assistant function in llamabot components to create AIMessages from multiple content types, improving message handling flexibility. (6b8a551) (Eric Ma)
  • Updated the example script to align with the new marimo version and included a clarifying bot message about the necessity of tests, enhancing the documentation's clarity and relevance. (6d8843c) (Eric Ma)

Bug Fixes

  • Corrected the order of retrieved messages in the chat memory's linear retrieval test to match the expected sequence. (b898a63) (Eric Ma)
  • Fixed the LinearNodeSelector to correctly select the last assistant node instead of the leaf node, aligning node selection with expected behavior. (b5941bc) (Eric Ma)
  • Addressed an issue in SimpleBot's test initialization by fixing the parameter name mismatch in the constructor. (453c1f3) (Eric Ma)

Deprecations

  • Removed outdated development container documentation, streamlining the project's documentation set. (9a3d17a) (Eric Ma)

v0.12.11

07 Jul 12:50
Compare
Choose a tag to compare

Version 0.12.11

This release includes several documentation improvements, enhancements in CI workflows, and updates to dependencies and testing strategies.

New Features

  • Added a GitHub Actions workflow to automatically update Ollama models daily and on demand, removing the need for a local pre-commit hook for this task. (7b1f7c2) (Eric Ma)
  • Introduced a new job in GitHub workflows to check for code changes and conditionally run tests, optimizing CI resources. (a7fcff3) (Eric Ma)
  • Added comprehensive tutorial for using the @prompt decorator, covering its usage, integration, and best practices. (4a41dce) (Eric Ma)
  • Updated README with instructions for using local models with LMStudio, including setup and example code. (7771976) (Eric Ma)

Bug Fixes

  • Removed test for StructuredBot unsupported model raising ValueError, reflecting changes in model support handling. (a79ebbe) (Eric Ma)

Deprecations

  • Removed extras from the chonkie dependency in pyproject.toml to simplify dependency management. (5c992fd) (Eric Ma)