Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Chat profiles improvements #1871

Open
jpolvto opened this issue Feb 6, 2025 · 2 comments
Open

Chat profiles improvements #1871

jpolvto opened this issue Feb 6, 2025 · 2 comments
Labels
enhancement New feature or request needs-triage

Comments

@jpolvto
Copy link
Contributor

jpolvto commented Feb 6, 2025

Currently, chat profiles in Chainlit can serve multiple purposes:
• Acting as “tabs” to differentiate between chats/flows.
• Providing customized system prompts/agents.
• Allowing users to switch between models.

While flexibility is advantageous, there are several downsides with this approach. The current dropdown-based implementation doesn’t effectively support any of these use cases. Dropdowns are not ideal for tabbed navigation, and the chat profile buttons feel too large and intrusive for the other use cases, especially on mobile devices.

All of these features are becoming common use cases, so I think it would be good to think about what should be the default way to support these use cases.

We propose splitting these functionalities:

  1. Tabs instead of chat profiles – Replace the dropdown with a tab-based UI, similar to Streamlit, for better chat/flow differentiation.
  2. Custom system prompts/agents – Introduce a sidebar section with a list of named entries (with icons), similar to Gemini’s Gems, ChatGPT’s Custom GPTs, or LibreChat’s agents (see mockup).
  3. Add examples for model choice using the Chainlit settings.

This approach would improve usability, remove clutter, and give developers using Chainlit better guidance on what functionality to use.

Mockup:

Image

Let me know what you think!

@dosubot dosubot bot added the enhancement New feature or request label Feb 6, 2025
@jpolvto
Copy link
Contributor Author

jpolvto commented Feb 18, 2025

Hi @constantinidan,

Just to be clear here, this is not about allowing users to create personas, it's about guidance in the UI for general functionality that users of Chainlit might want to use. Making chat profiles a bit less of a "catch all" type functionality.

Currently, here (https://docs.chainlit.io/advanced-features/chat-profiles), the text says:

Chat Profiles are useful if you want to let your users choose from a list of predefined configured assistants. For example, you can define a chat profile for a support chat, a sales chat, or a chat for a specific product.

The image shows using chat profiles as a way to change models.

@constantinidan
Copy link
Collaborator

constantinidan commented Feb 19, 2025

Yes, that's exactly that! It's pre-configured profiles.

Selection of pre-configured profiles as suggested in the mockup would be great though.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request needs-triage
Projects
None yet
Development

No branches or pull requests

2 participants