Skip to content

Releases: rgbkrk/chatlab

v2.1.1

07 Mar 18:01
Compare
Choose a tag to compare

Fixed

  • Fixed a bug where the final render of a tool call wasn't using the custom render.

v2.1.0

04 Mar 23:04
Compare
Choose a tag to compare

Added

  • New tools namespace to replace the builtins namespace.
  • Simplified Palette class in colors.py for displaying color palettes, now leveraging Pydantic for validation.

Changed

  • Default model in Chat class constructor now uses the GPT_3_5_TURBO enum.
  • Migrated run_cell to run_python to avoid naming confusion and deprecated run_cell.
  • Updated documentation and examples to reflect the new tools namespace and usage patterns.
  • Removed __required__ from extract_model_from_function in registry.py to suppress Pydantic warnings.

Fixed

  • Ensured the final tool call result properly updates the UI to reflect the outcome of tool execution.

v2.0.0

28 Feb 01:14
Compare
Choose a tag to compare
  • Support parallel tool calling by default in Chat.
  • Legacy support for function calling is available by passing legacy_function_calling=True to the Chat constructor.
  • 🆕 @incremental_display decorator (see #136) that allows you to stream visualizations to the user as the model fills out function arguments.
Area.mp4

v1.3.0

16 Jan 20:34
7b5f466
Compare
Choose a tag to compare
  • Support tool call format from FunctionRegistry. Enables parallel function calling (note: not in Chat yet). #122

v1.2.1

10 Jan 19:25
1909bd4
Compare
Choose a tag to compare
  • Drop Noteable builtin
  • ⏃ Automatically instantiate pydantic models when they are passed as parameters to a function call

v1.1.1

21 Nov 02:32
Compare
Choose a tag to compare
  • Support setting a custom base_url
from chatlab import Chat
chat = Chat(
  base_url="http://localhost:8000/v1",
  api_key="functionary"
)

v1.0.3

15 Nov 23:39
Compare
Choose a tag to compare

Fixed

  • 🐛 input prompts were appearing after assistant and function calls

v1.0.1

09 Nov 17:42
Compare
Choose a tag to compare

Added

  • 📚 Documentation now available at chatlab.dev

  • 📚 Pre-release Documentation now available at pre.chatlab.dev

  • 🎛️ New option replace_hallucinated_python to replace any hallucinated python function with a custom one. This allows you to create notebook cells, run IPython, or even shell out to a regular python interpreter.

  • 🪄 Introduced make_magic on a Chat so that you can use a current chat as a cell magic in IPython and Jupyter notebooks

  • ⏩ Accept async functions as chat functions

  • 👉🏻 You MUST now call await chat() instead of just chat() now that chat is async

  • 📗 New experimental builtin: Noteable. Create notebooks on Noteable like you can via ChatGPT Plugins with even more flexibility.

  • 🧩 Accept collections of functions to Chat and FunctionRegistry to register multiple functions at once

  • 🧩 Enhanced type support in the registry, including handling of Union, List, Dict, Literal, and Enum types.

  • 🎨 Added a decorator for registering functions with a schema, allowing more flexible function registration.

  • 📑 Added registry.get_schema method to retrieve a function schema by name.

  • [Builtins] 📁 Chat File functions:

    • list_files: List all files in a directory.
    • get_file_size: Get the size of a file.
    • is_file: Check if a path points to a file.
    • is_directory: Check if a path points to a directory.
    • write_file: Write content to a file.
    • read_file: Read content from a file.
  • [Builtins] 🐚 Chat Shell Functions:

    • run_shell_command: Run a shell command and return the output.

Changed

  • 🔄 chatlab.Chat is now chatlab.Conversation to improve readability
  • ⚠️ Deprecated chatlab.Conversation
  • 🔄 submit is now an async function to allow registering functions
  • 📜 Improved UI: Scrollbars for function inputs and outputs now only appear on the x-axis when content is too large
  • 🛑🔙 Enhanced error handling: Python interpreter traceback is no longer displayed in the notebook when it is included in the ChatLab output pane.
  • 🐍 The python builtin's name has been changed to run_python
  • 🧹 Refactored generate_function_schema and register methods in the registry to simplify and enhance functionality.
  • 🚨 Updated error handling and messages related to type annotations.

Deprecated

  • ⚠️ Both chatlab.Session and chatlab.Conversation are now deprecated in favor of chatlab.Chat

v1.0.0-alpha.34

07 Nov 05:35
Compare
Choose a tag to compare

Added

  • 📚 Documentation now available at chatlab.dev

  • 📚 Pre-release Documentation now available at pre.chatlab.dev

  • 🎛️ New option replace_hallucinated_python to replace any hallucinated python function with a custom one. This allows you to create notebook cells, run IPython, or even shell out to a regular python interpreter.

  • 🪄 Introduced make_magic on a Chat so that you can use a current chat as a cell magic in IPython and Jupyter notebooks

  • ⏩ Accept async functions as chat functions

  • 👉🏻 You MUST now call await chat() instead of just chat() now that chat is async

  • 📗 New experimental builtin: Noteable. Create notebooks on Noteable like you can via ChatGPT Plugins with even more flexibility.

  • 🧩 Accept collections of functions to Chat and FunctionRegistry to register multiple functions at once

  • 🧩 Enhanced type support in the registry, including handling of Union, List, Dict, Literal, and Enum types.

  • 🎨 Added a decorator for registering functions with a schema, allowing more flexible function registration.

  • 📑 Added registry.get_schema method to retrieve a function schema by name.

  • [Builtins] 📁 Chat File functions:

    • list_files: List all files in a directory.
    • get_file_size: Get the size of a file.
    • is_file: Check if a path points to a file.
    • is_directory: Check if a path points to a directory.
    • write_file: Write content to a file.
    • read_file: Read content from a file.
  • [Builtins] 🐚 Chat Shell Functions:

    • run_shell_command: Run a shell command and return the output.

Changed

  • 🔄 chatlab.Chat is now chatlab.Conversation to improve readability
  • ⚠️ Deprecated chatlab.Conversation
  • 🔄 submit is now an async function to allow registering functions
  • 📜 Improved UI: Scrollbars for function inputs and outputs now only appear on the x-axis when content is too large
  • 🛑🔙 Enhanced error handling: Python interpreter traceback is no longer displayed in the notebook when it is included in the ChatLab output pane.
  • 🐍 The python builtin's name has been changed to run_python
  • 🧹 Refactored generate_function_schema and register methods in the registry to simplify and enhance functionality.
  • 🚨 Updated error handling and messages related to type annotations.

Deprecated

  • ⚠️ Both chatlab.Session and chatlab.Conversation are now deprecated in favor of chatlab.Chat

v1.0.0

07 Nov 05:57
Compare
Choose a tag to compare

Added

  • 📚 Documentation now available at chatlab.dev

  • 🎛️ New option replace_hallucinated_python to replace any hallucinated python function with a custom one. This allows you to create notebook cells, run IPython, or even shell out to a regular python interpreter.

  • 🪄 Introduced make_magic on a Chat so that you can use a current chat as a cell magic in IPython and Jupyter notebooks

  • ⏩ Accept async functions as chat functions

  • 👉🏻 You MUST now call await chat() instead of just chat() now that chat is async

  • 📗 New experimental builtin: Noteable. Create notebooks on Noteable like you can via ChatGPT Plugins with even more flexibility.

  • 🧩 Accept collections of functions to Chat and FunctionRegistry to register multiple functions at once

  • 🧩 Enhanced type support in the registry, including handling of Union, List, Dict, Literal, and Enum types.

  • 🎨 Added a decorator for registering functions with a schema, allowing more flexible function registration.

  • 📑 Added registry.get_schema method to retrieve a function schema by name.

  • [Builtins] 📁 Chat File functions:

    • list_files: List all files in a directory.
    • get_file_size: Get the size of a file.
    • is_file: Check if a path points to a file.
    • is_directory: Check if a path points to a directory.
    • write_file: Write content to a file.
    • read_file: Read content from a file.
  • [Builtins] 🐚 Chat Shell Functions:

    • run_shell_command: Run a shell command and return the output.

Changed

  • 🔄 chatlab.Chat is now chatlab.Conversation to improve readability
  • ⚠️ Deprecated chatlab.Conversation
  • 🔄 submit is now an async function to allow registering functions
  • 📜 Improved UI: Scrollbars for function inputs and outputs now only appear on the x-axis when content is too large
  • 🛑🔙 Enhanced error handling: Python interpreter traceback is no longer displayed in the notebook when it is included in the ChatLab output pane.
  • 🐍 The python builtin's name has been changed to run_python
  • 🧹 Refactored generate_function_schema and register methods in the registry to simplify and enhance functionality.
  • 🚨 Updated error handling and messages related to type annotations.

Deprecated

  • ⚠️ Both chatlab.Session and chatlab.Conversation are now deprecated in favor of chatlab.Chat