Recent Releases of shinychat

shinychat - py-shinychat 0.1.0

This first release of the shinychat package simply copies the Chat and MarkdownStream components exactly as they are in version 1.4.0 of shiny. Future versions of shiny will import these components from shinychat. By maintaining these components via a separate library, we can ship features more quickly and independently of shiny.

- Python
Published by cpsievert 11 months ago

shinychat - py/v0.0.1a2

- Python
Published by gadenbuie about 1 year ago

shinychat - py/v0.0.1a1

- Python
Published by gadenbuie about 1 year ago

shinychat - py/v0.0.1a0

- Python
Published by gadenbuie about 1 year ago

shinychat - shinychat 0.2.0

New features and improvements

  • Added new output_markdown_stream() and markdown_stream() functions to allow for streaming markdown content to the client. This is useful for showing Generative AI responses in real-time in a Shiny app, outside of a chat interface. (#23)

  • Both chat_ui() and output_markdown_stream() now support arbitrary Shiny UI elements inside of messages. This allows for gathering input from the user (e.g., selectInput()), displaying of rich output (e.g., {htmlwidgets} like {plotly}), and more. (#29)

  • Added a new chat_clear() function to clear the chat of all messages. (#25)

  • Added chat_app(), chat_mod_ui() and chat_mod_server(). chat_app() takes an ellmer::Chat client and launches a simple Shiny app interface with the chat. chat_mod_ui() and chat_mod_server() replicate the interface as a Shiny module, for easily adding a simple chat interface connected to a specific ellmer::Chat client. (#36)

  • The promise returned by chat_append() now resolves to the content streamed into the chat. (#49)

Bug fixes

  • chat_append(), chat_append_message() and chat_clear() now all work in Shiny modules without needing to namespace the id of the Chat component. (#37)

  • chat_append() now logs and throws a silent error if the stream errors for any reason. This prevents the app from crashing if the stream is interrupted. You can still use promises::catch() to handle the error in your app code if desired. (#46)

- Python
Published by gadenbuie about 1 year ago

shinychat - shinychat 0.1.1

  • Initial CRAN submission.

- Python
Published by jcheng5 over 1 year ago