Releases: rgbkrk/chatlab
v2.1.1
v2.1.0
Added
- New
tools
namespace to replace thebuiltins
namespace. - Simplified
Palette
class incolors.py
for displaying color palettes, now leveraging Pydantic for validation.
Changed
- Default model in
Chat
class constructor now uses theGPT_3_5_TURBO
enum. - Migrated
run_cell
torun_python
to avoid naming confusion and deprecatedrun_cell
. - Updated documentation and examples to reflect the new
tools
namespace and usage patterns. - Removed
__required__
fromextract_model_from_function
inregistry.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
- Support parallel tool calling by default in
Chat
. - Legacy support for function calling is available by passing
legacy_function_calling=True
to theChat
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
v1.2.1
- Drop Noteable builtin
- ⏃ Automatically instantiate pydantic models when they are passed as parameters to a function call
v1.1.1
- Support setting a custom
base_url
from chatlab import Chat
chat = Chat(
base_url="http://localhost:8000/v1",
api_key="functionary"
)
v1.0.3
Fixed
- 🐛 input prompts were appearing after assistant and function calls
v1.0.1
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 aChat
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 justchat()
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
andFunctionRegistry
to register multiple functions at once -
🧩 Enhanced type support in the registry, including handling of
Union
,List
,Dict
,Literal
, andEnum
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 nowchatlab.Conversation
to improve readability ⚠️ Deprecatedchatlab.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
andregister
methods in the registry to simplify and enhance functionality. - 🚨 Updated error handling and messages related to type annotations.
Deprecated
⚠️ Bothchatlab.Session
andchatlab.Conversation
are now deprecated in favor ofchatlab.Chat
v1.0.0-alpha.34
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 aChat
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 justchat()
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
andFunctionRegistry
to register multiple functions at once -
🧩 Enhanced type support in the registry, including handling of
Union
,List
,Dict
,Literal
, andEnum
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 nowchatlab.Conversation
to improve readability ⚠️ Deprecatedchatlab.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
andregister
methods in the registry to simplify and enhance functionality. - 🚨 Updated error handling and messages related to type annotations.
Deprecated
⚠️ Bothchatlab.Session
andchatlab.Conversation
are now deprecated in favor ofchatlab.Chat
v1.0.0
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 aChat
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 justchat()
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
andFunctionRegistry
to register multiple functions at once -
🧩 Enhanced type support in the registry, including handling of
Union
,List
,Dict
,Literal
, andEnum
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 nowchatlab.Conversation
to improve readability ⚠️ Deprecatedchatlab.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
andregister
methods in the registry to simplify and enhance functionality. - 🚨 Updated error handling and messages related to type annotations.
Deprecated
⚠️ Bothchatlab.Session
andchatlab.Conversation
are now deprecated in favor ofchatlab.Chat