kubeflow / community

Information about the Kubeflow community including proposals and governance information.
Apache License 2.0
156 stars 215 forks source link

Kubeflow and Peritus Slack Assistant #550

Open smsperitus opened 2 years ago

smsperitus commented 2 years ago

/kind feature

Why you need this feature: Thanks for the opportunity to present and demonstrate Peritus.AI to the Kubeflow Community on Tuesday, October 26, 2021. Pursuant to the recommendation at the meeting, I am opening this GitHub Issue to request the inclusion of the Peritus Slack Applications in the Kubeflow Channels on the Kubeflow Slack Workspace (instructions are attached).

Peritus.AI is an ML platform for community-led growth. We are focused on cloud-native technologies to provide community intelligence for developer success. Peritus provides an ML assistant that provides recommendations for questions from Slack users. Peritus is currently offering our platform for free for all non-profit OSS projects.

On-boarding time is typically less than 2 weeks. The sources of the recommendations are Product documentation, Blogs, Slack Channels, StackOverflow, Community Forums, GitHub Issues, etc.

The demonstration at the Kubeflow Community Meeting from October 26, 2021, is here

A shorter video that demonstrates the Peritus Assistant for Slack

Describe the solution you'd like: Ask for the Kubeflow community:

  1. Validate the Kubeflow published content source list with Peritus
  2. Install and enable the Peritus Connector on selected active Slack channels for sourcing Slack conversations
  3. Install and enable and promote the Peritus Assistant to community users
  4. Provide feedback on product experience

Peritus Assistant and Connector for Slack - Installation Guide.pdf

Anything else you would like to add: As the Assistant learns, its answers improve. Peritus will actively monitor the performance, and provide periodic updates to the Community. If the Community decides to disconnect the Assistant, Peritus will use their best effort to disconnect the Assistant and all related processes in a reasonable time period and there will be no impact on the Community's slack. The disconnect process can be initiated, approved, and tracked via another Kubeflow GitHub issue.

jbottum commented 2 years ago

@theadactyl I like the optics, benefits and the cost ($0) of this proposal. I am positive on moving this project forward. Is this a project that the Steering Committee would need to approve ?

thesuperzapper commented 2 years ago

@jbottum I believe that @Bobgy or @zijianjoy were planning to discuss this internally with @theadactyl.

theadactyl commented 2 years ago

This is interesting -- I think the main question I have is how this impacts user data. Does it scrape purely public docs?

theadactyl commented 2 years ago

A nit here is that this issue belongs in kubeflow/community

smsperitus commented 2 years ago

@theadactyl : apologies for creating the issue in the wrong repo. I did not notice. Please let me know if I can move it.

Regarding the question on public docs, recommendations are from publicly available trusted sources by the community. I listed the ones that I am aware of in the description.

theadactyl commented 2 years ago

Primarily wondering where the data is pulled in from (API ? scraping?)

On Thu, Nov 11, 2021 at 1:04 PM smsperitus @.***> wrote:

@theadactyl https://github.com/theadactyl : apologies for creating the issue in the wrong repo. I did not notice. Please let me know if I can move it.

Regarding the question on public docs, recommendations are from publicly available trusted sources by the community. I listed the ones that I am aware of in the description.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kubeflow/kubeflow/issues/6212#issuecomment-966623875, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABREJVOJ3QDI46LPN6GJRWDULQVU7ANCNFSM5HHNUGPQ .

smsperitus commented 2 years ago

@theadactyl : we use APIs where available and crawl/scrape only as a fallback.

theadactyl commented 2 years ago

Got it, we'd have to get this reviewed in that event. Let me get back to you on this.

On Fri, Nov 12, 2021 at 3:00 PM smsperitus @.***> wrote:

@theadactyl https://github.com/theadactyl : we use APIs where available and crawl/scrape only as a fallback.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kubeflow/kubeflow/issues/6212#issuecomment-967714719, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABREJVIY65KCE4PVCHRONTLULWMBDANCNFSM5HHNUGPQ .

smsperitus commented 2 years ago

@theadactyl : Thanks for moving this forward. I want to clarify my previous response. We use APIs for everything. The only place where we crawl is for the product documentation. Hope that helps. If you have any other questions please let me know.

smsperitus commented 2 years ago

@theadactyl : checking if you have any updates. Please let me know if you need anything else from me.

theadactyl commented 2 years ago

Still looking into this -- will try to follow up next week.

On Tue, Nov 30, 2021 at 5:27 AM smsperitus @.***> wrote:

@theadactyl https://github.com/theadactyl : checking if you have any updates. Please let me know if you need anything else from me.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kubeflow/kubeflow/issues/6212#issuecomment-982636357, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABREJVJ7655KM3HLTLKNQR3UOTGN3ANCNFSM5HHNUGPQ .

smsperitus commented 2 years ago

Hi @theadactyl : hope you had a good weekend. Please let me know if you have any updates. Thanks!

jbottum commented 2 years ago

@theadactyl Just checking back before tomorrow's meeting, will this PR be approved ?

theadactyl commented 2 years ago

Hi all, due to holiday schedules it's been hard to track down the right people to make sure we are good to go with implementing this. I want to make sure to due diligence here due to the privacy/security implications, and this app hasn't been reviewed by Slack: https://slack.com/apps/A027CU2L7P0-peritus-connector?tab=more_info

I see the value in this plugin, and need to ask for a bit more time. I will check back in first week in Jan.

smsperitus commented 2 years ago

Thanks for the update @theadactyl . Appreciate it given how close it's to the holidays. Have a good break!

theadactyl commented 2 years ago

Hi folks. Thanks for bringing this to our attention. I found time to speak with the PSG about this yesterday. We have concerns about the data privacy/consent implications of this plugin, and have decided not to install Peritus in our Slack Workspace. In these cases, we like to err on the conservative side, following the model set by the k8s community:

https://www.kubernetes.dev/docs/comms/slack/#requesting-a-bot-token-or-webhook

Among other things, we are concerned that individuals signing up for the Kubeflow Slack Workspace have not consented to be recommended as points of contact to be DMed, to have their GitHub/Slack/SO identities matched and published publicly, or to have their Slack messages and identities stored indefinitely on 3rd party servers. We as admins don't feel comfortable making these decisions on behalf of our Slack users.

smsperitus commented 2 years ago

@theadactyl : not sure why this Issue was closed. I have been on several open source projects over the past decade and a half but I am quite new to the Kubeflow community. While I am familiarizing myself with the community guidelines and etiquette, can you help me out with the following?

The PSG has shared some feedback and I would like an opportunity to respond.

  1. Is this Issue the best place to continue the conversation?
  2. Is there a PSG meeting that I can attend to discuss this in more detail?

Thanks!

smsperitus commented 2 years ago

Hi @theadactyl, happy new year!

In the Kubeflow community meeting yesterday, I asked if the issue can be reopened to continue the conversation. I am relatively new to the community and not familiar with the community guidelines and policies. The recommendation of the community was to reopen the issue. Since I don't have permission to do that, can you please reopen this issue to continue the conversation. Thanks!

thesuperzapper commented 2 years ago

@theadactyl after discussion @smsperitus has said he is open to the idea of working with us to establish a privacy policy and moving this forwards. I am reopening this issue to allow us to track this. /reopen

google-oss-prow[bot] commented 2 years ago

@thesuperzapper: Reopened this issue.

In response to [this](https://github.com/kubeflow/kubeflow/issues/6212#issuecomment-1010571934): >@theadactyl after discussion @smsperitus has said he is open to the idea of working with us to establish a privacy policy and moving this forwards. I am reopening this issue to allow us to track this. >/reopen Instructions for interacting with me using PR comments are available [here](https://git.k8s.io/community/contributors/guide/pull-requests.md). If you have questions or suggestions related to my behavior, please file an issue against the [kubernetes/test-infra](https://github.com/kubernetes/test-infra/issues/new?title=Prow%20issue:) repository.
theadactyl commented 2 years ago

Hi there, the primary issue we see is that this behavior seems intrusive and is in general not in compliance with how we treat user data. We don't want community members to have to consent to this data use in order to participate in our community channels. I am free to explain and discuss this further in the community meeting on Jan 19, including potential remediations on your side that could change the decision. I do want to set the expectation that the tool as is is unlikely to be approved for installation in our Slack channel.

theadactyl commented 2 years ago

@thesuperzapper from an ops perspective, this issue belongs in kubeflow/community, as these decisions fall under the scope of the @kubeflow/project-steering-group and pertains to management and governance of our community properties.

smsperitus commented 2 years ago

Hi there, the primary issue we see is that this behavior seems intrusive and is in general not in compliance with how we treat user data. We don't want community members to have to consent to this data use in order to participate in our community channels. I am free to explain and discuss this further in the community meeting on Jan 19, including potential remediations on your side that could change the decision. I do want to set the expectation that the tool as is is unlikely to be approved for installation in our Slack channel.

@theadactyl, thanks for making time to share your feedback. I understand that the tool "as is" is not approved for installation on the Slack channel. I appreciate the opportunity to address your feedback and hopefully be approved pending your review.

theadactyl commented 2 years ago

Hi @smsperitus - apologies for the late notice, but I'll have to punt this conversations to the following community meeting for family reasons. Looking forward to discussing further.

On Mon, Jan 17, 2022 at 2:35 PM smsperitus @.***> wrote:

Hi there, the primary issue we see is that this behavior seems intrusive and is in general not in compliance with how we treat user data. We don't want community members to have to consent to this data use in order to participate in our community channels. I am free to explain and discuss this further in the community meeting on Jan 19, including potential remediations on your side that could change the decision. I do want to set the expectation that the tool as is is unlikely to be approved for installation in our Slack channel.

@theadactyl https://github.com/theadactyl, thanks for making time to share your feedback. I understand that the tool "as is" is not approved for installation on the Slack channel. I appreciate the opportunity to address your feedback and hopefully be approved pending your review.

— Reply to this email directly, view it on GitHub https://github.com/kubeflow/community/issues/550#issuecomment-1014929987, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABREJVM4EULKV7ZJC4YHOHTUWSKUNANCNFSM5L7UJGNQ . You are receiving this because you were mentioned.Message ID: @.***>

smsperitus commented 2 years ago

Hi @theadactyl , is today's community meeting (Tuesday, 5:30 PM Pacific) a good time for you?

theadactyl commented 2 years ago

Hi there, I think I'll have to push to next week's meeting as I wasn't able to get kindergarten pickup coverage.

On Tue, Jan 25, 2022 at 11:10 AM smsperitus @.***> wrote:

Hi @theadactyl https://github.com/theadactyl , is today's community meeting (Tuesday, 5:30 PM Pacific) a good time for you?

— Reply to this email directly, view it on GitHub https://github.com/kubeflow/community/issues/550#issuecomment-1021518547, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABREJVPKAKMVHITBYS73GGLUX3YS7ANCNFSM5L7UJGNQ . You are receiving this because you were mentioned.Message ID: @.***>

smsperitus commented 2 years ago

Thanks for the heads up. I can empathize having been in that situation.

smsperitus commented 2 years ago

Hi @theadactyl , does tomorrow's community meeting (Tuesday, 8 AM Pacific) work for you?

theadactyl commented 2 years ago

Hi! I think we should have a short one-off meeting about this during PT working hours as it will be much easier for me to attend. What is your availability? I will share a meeting invite here when we agree on a time.

smsperitus commented 2 years ago

Hi @theadactyl , I appreciate the flexibility. Pacific Timezone working hours are perfect. Will any of the following time(s) work for you?

Thursday (2/3) 11:30 AM - 2:30 PM Friday (2/4) 10:30 AM - 2:30 PM

theadactyl commented 2 years ago

Can you propose some times for next week? I don't see a time in those two days where we'd have a PSG quorum.

smsperitus commented 2 years ago

Hi @theadactyl , I have a suggestion and hopefully, it can make this easier. I wasn't aware that you were trying to coordinate with other PSG members. If you could suggest a couple of slots next week I can try to work my schedule around that.

theadactyl commented 2 years ago

Hi there, I added a review slot to the Kubeflow Community Calendar for Thursday, February 17⋅10:30 – 11:00am

smsperitus commented 2 years ago

Thanks, @theadactyl I will be on the call next Thursday. Appreciate the flexibility.

smsperitus commented 2 years ago

Hi @theadactyl , I am waiting to be admitted to the Google Meet shared on the Community Calendar.

zijianjoy commented 2 years ago

@smsperitus I am connecting with Thea for giving you access. Thank you for bringing this up!

smsperitus commented 2 years ago

Thanks @theadactyl @zijianjoy @james-jwu for making time and providing an opportunity to review the PSG feedback. I am sharing the notes from the call here. Please feel free to add/comment if it's not complete or accurate.

There are 4 main areas that need to be addressed in order to be considered for inclusion.

  1. The Peritus Slack Connector needs to be approved on the Slack Marketplace (similar to the Peritus Assistant).
  2. Terms of Service: Be compliant with GDPR
  3. Allow users to opt-in as an expert. Today, the list of experts is computed by default and needs to change.
  4. Provide admin controls for what data gets ingested and for enabling/disabling certain features (e.g.: merging user profiles)