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

📝 RLFH UX Skeleton #31

Merged
merged 1 commit into from
Jul 25, 2023
Merged

Conversation

teresaqhoang
Copy link
Contributor

Motivation and Context

Added RLFH UI to demonstrate users can easily add this capability to their chatbot if they wanted.

Description

This feature is for demonstration purposes only. We don't actually hook up to the server to store the human feedback or send it to the model.

Details:

  • RLFH actions will only show on the most recent chat message in which the author is bot.
  • If user takes action, icon will be rendered to reflect action.
  • Data is only stored in frontend state. If app refreshes, all RLFH across all chats will be reset.

Actions on chat message:
image

Once user takes actions:
image

Future work

  • Add ability to turn of RLHF in settings dialog + add help link to docs there

Contribution Checklist

@teresaqhoang teresaqhoang self-assigned this Jul 25, 2023
@teresaqhoang teresaqhoang added enhancement New feature or request webapp Pull requests that update Typescript code PR: ready for review labels Jul 25, 2023
@dehoward
Copy link
Contributor

if we were to send the feedback to the model, do we know if it would have any impact on the responses? without doing this, I'm not sure that this change aligns with our recently updated first principles given that it doesn't seem like we're currently completing the loop on the AI usage pattern.

@teresaqhoang
Copy link
Contributor Author

teresaqhoang commented Jul 25, 2023

if we were to send the feedback to the model, do we know if it would have any impact on the responses? without doing this, I'm not sure that this change aligns with our recently updated first principles given that it doesn't seem like we're currently completing the loop on the AI usage pattern.

if we were to send the feedback to the model, do we know if it would have any impact on the responses? without doing this, I'm not sure that this change aligns with our recently updated first principles given that it doesn't seem like we're currently completing the loop on the AI usage pattern.

No, SK doesn't hook up to any feedback loop with the models, so this would be up to the developer to develop and expose their own endpoints to train their models.

This was a big push from John to showcase of the first principles of LLMs in general Human in Control, defined here, https://microsoft.sharepoint.com/teams/ExDAI/SitePages/GPT-UX-Guide.aspx which aligns with our principles to showcase experimental usage patterns in Microsoft. Even though we don't complete the loop, it's beneficial to call out this principal of augmentation over automation. Planning to add a help link in later PR with settings that will detail this process more.

@dehoward
Copy link
Contributor

No, SK doesn't hook up to any feedback loop with the models, so this would be up to the developer to develop and expose their own endpoints to train their models.

This was a big push from John to showcase of the first principles of LLMs in general Human in Control, defined here, https://microsoft.sharepoint.com/teams/ExDAI/SitePages/GPT-UX-Guide.aspx which aligns with our principles to showcase experimental usage patterns in Microsoft. Even though we don't complete the loop, it's beneficial to call out this principal of augmentation over automation. Planning to add a help link in later PR with settings that will detail this process more.

ok yeah that makes sense. thanks for sharing this, video is very insightful.

Planning to add a help link in later PR with settings that will detail this process more.

I think this will help a lot, especially if we can emphasize some of what you said here in that they will need to train their own models.

@dehoward dehoward added PR: ready to merge PR has been approved by all reviewers, and is ready to merge. and removed PR: ready for review labels Jul 25, 2023
@craigomatic
Copy link
Contributor

craigomatic commented Jul 25, 2023

No, SK doesn't hook up to any feedback loop with the models, so this would be up to the developer to develop and expose their own endpoints to train their models.

Is there a simple implementation we can bring in?

If we have buttons on the UI that are not wired up we are going to end up with people wondering why they aren't working.

Simple could be using them as few shot examples in conjunction with the chat message history? Could add a state to each message?

@alliscode alliscode added this pull request to the merge queue Jul 25, 2023
Merged via the queue into microsoft:main with commit 46f48cc Jul 25, 2023
7 checks passed
@teresaqhoang teresaqhoang deleted the rlfh-skeleton branch August 11, 2023 15:25
@teresaqhoang teresaqhoang linked an issue Aug 24, 2023 that may be closed by this pull request
teamleader-dev pushed a commit to vlink-group/chat-copilot that referenced this pull request Oct 7, 2024
### Motivation and Context

<!-- Thank you for your contribution to the copilot-chat repo!
Please help reviewers and future users, providing the following
information:
  1. Why is this change required?
  2. What problem does it solve?
  3. What scenario does it contribute to?
  4. If it fixes an open issue, please link to the issue here.
-->

Added RLFH UI to demonstrate users can easily add this capability to
their chatbot if they wanted.

### Description

<!-- Describe your changes, the overall approach, the underlying design.
These notes will help understanding how your code works. Thanks! -->

> This feature is for demonstration purposes only. We don't actually
hook up to the server to store the human feedback or send it to the
model.

Details:

- RLFH actions will only show on the most recent chat message in which
the author is `bot`.
- If user takes action, icon will be rendered to reflect action.
- Data is only stored in frontend state. If app refreshes, all RLFH
across all chats will be reset.

Actions on chat message:

![image](https:/microsoft/chat-copilot/assets/125500434/1b730018-ccf3-4356-a173-9c7d50c0cec8)

Once user takes actions:

![image](https:/microsoft/chat-copilot/assets/125500434/0d691a1a-970a-4847-98cb-c6f05e23941f)

Future work 
- Add ability to turn of RLHF in settings dialog + add help link to docs
there

### Contribution Checklist

<!-- Before submitting this PR, please make sure: -->

- [x] The code builds clean without any errors or warnings
- [x] The PR follows the [Contribution
Guidelines](https:/microsoft/copilot-chat/blob/main/CONTRIBUTING.md)
and the [pre-submission formatting
script](https:/microsoft/copilot-chat/blob/main/CONTRIBUTING.md#development-scripts)
raises no violations
~~- [ ] All unit tests pass, and I have added new tests where possible~~
- [x] I didn't break anyone 😄
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request PR: ready to merge PR has been approved by all reviewers, and is ready to merge. webapp Pull requests that update Typescript code
Projects
No open projects
Development

Successfully merging this pull request may close these issues.

Complete enhancement for chat copilot for customer demos
6 participants