• This repository has been archived on 23/Aug/2024
  • Stars
    star
    159
  • Rank 235,916 (Top 5 %)
  • Language
    Shell
  • License
    Apache License 2.0
  • Created over 1 year ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Open source stack for applying AI to workflows in secure environments

OpenOps

OpenOps is an open source platform for applying generative AI to workflows in secure environments.

Getting started with OpenOps tutorial video

Open in Gitpod standard-readme compliant

OpenOps:

  • Enables AI exploration with full data control in a multi-user pilot.
  • Supports broad ecosystem of AI models from OpenAI and Microsoft to open source LLMs from Hugging Face.
  • Speeds development of custom security, compliance and data custody policy from early evaluation to future scale.

Unliked closed source, vendor-controlled environments where data controls cannot be audited, OpenOps provides a transparent, open source, customer-controlled platform for developing, securing and auditing AI-accelerated workflows.

Like what you see? Please give us a star! ⭐️

image

Table of Contents

Background

image

Why Open Ops?

Everyone is in a race to deploy generative AI solutions, but need to do so in a responsible and safe way. OpenOps lets you run powerful models in a safe sandbox to establish the right safety protocols before rolling out to users. Here's an example of an evaluation, implementation, and iterative rollout process:

  • Phase 1: Set up the OpenOps collaboration sandbox, a self-hosted service providing multi-user chat and integration with GenAI. (this repository)

  • Phase 2: Evaluate different GenAI providers, whether from public SaaS services like OpenAI or local open source models, based on your security and privacy requirements.

  • Phase 3: Invite select early adopters (especially colleagues focusing on trust and safety) to explore and evaluate the GenAI based on their workflows. Observe behavior, and record user feedback, and identify issues. Iterate on workflows and usage policies together in the sandbox. Consider issues such as data leakage, legal/copyright, privacy, response correctness and appropriateness as you apply AI at scale.

  • Phase 4: Set and implement policies as availability is incrementally rolled out to your wider organization.

What does OpenOps include?

Deploying the OpenOps sandbox includes the following components:

  • 🏰 Mattermost Server - Open source, self-hosted alternative to Discord and Slack for strict security environments with playbooks/workflow automation, tools integration, real time 1-1 and group messaging, audio calling and screenshare.
  • πŸ“™ PostgreSQL - Database for storing private data from multi-user, chat collaboration discussions and audit history.
  • πŸ€– Mattermost AI plugin - Extension of Mattermost platform for AI bot and generative AI integration.
  • πŸ¦™ Open Source, Self-Hosted LLM models - Models for evaluation and use case development from Hugging Face and other sources, including GPT4All (runs on a laptop in 4.2 GB) and Falcon LLM (example of leading scaled self-hosted models). Uses LocalAI.
  • πŸ”ŒπŸ§  (Configurable) Closed Source, Vendor-Hosted AI models - SaaS-based GenAI models from Azure AI, OpenAI, & Anthropic.
  • πŸ”ŒπŸ“± (Configurable) Mattermost Mobile and Desktop Apps - End-user apps for future production deployment.

Install

Local

Rather watch a video? πŸ“½οΈ Check out our YouTube tutorial video for getting started with OpenOps: https://www.youtube.com/watch?v=20KSKBzZmik

Rather read a blog post? πŸ“ Check out our Mattermost blog post for getting started with OpenOps: https://mattermost.com/blog/open-source-ai-framework/

  1. Clone the repository: git clone https://github.com/mattermost/openops && cd openops
  2. Start docker services and configure plugin
    • If using OpenAI:
      • Run env backend=openai ./init.sh
      • Run ./configure_openai.sh sk-<your openai key> to add your API credentials or use the Mattermost system console to configure the plugin
    • If using LocalAI:
      • Run env backend=localai ./init.sh
      • Run env backend=localai ./download_model.sh to download one or supply your own ggml formatted model in the models directory.
  3. Access Mattermost and log in with the credentials provided in the terminal.

When you log in, you will start out in a direct message with your AI Assistant bot. Now you can start exploring AI usages.

Gitpod

Open in Gitpod

  1. Click the above badge and start your Gitpod workspace
  2. You will see VSCode interface and the workspace will configure itself automatically. Wait for the services to start and for your root login for Mattermost to be generated in the terminal
  3. Run ./configure_openai.sh sk-<your openai key> to add your API credentials or use the Mattermost system console to configure the plugin
  4. Access Mattermost and log in with the credentials supplied in the terminal.

When you log in, you will start out in a direct message with your AI Assistant bot. Now you can start exploring AI usages.

Usage

There many ways to integrate generative AI into confidential, self-hosted workplace discussions. To help you get started, here are some examples provided in OpenOps:

Title Image Description
Streaming Conversation Streaming Conversation The OpenOps platform reproduces streamed replies from popular GenAI chatbots creating a sense of responsiveness and conversational engagement, while masking actual wait times.
Thread Summarization Thread Summarization Use the "Summarize Thread" menu option or the /summarize command to get a summary of the thread in a Direct Message from an AI bot. AI-generated summaries can be created from private, chat-based discussions to speed information flows and decision-making while reducing the time and cost required for organizations to stay up-to-date.
Contextual Interrogation Contextual Interrogation Users can ask follow-up questions to discussion summaries generated by AI bots to learn more about the underlying information without reviewing the raw input.
Meeting Summarization Meeting Summarization Create meeting summaries! Designed to work with the Mattermost Calls plugin recording feature.
Chat with AI Bots Chat with AI Bots End users can interact with the AI bot in any discussion thread by mentioning AI bot with an @ prefix, as they would get the attention of a human user. The bot will receive the thread information as context for replying.
Sentiment Analysis React for me Use the "React for me" menu option to have the AI bot analyze the sentiment of messages use its conclusion to deliver an emoji reaction on the user’s behalf.
Reinforcement Learning from Human Feedback RLHF Bot posts are distinguished from human posts by having πŸ‘ πŸ‘Ž icons available for human end users to signal whether the AI response was positive or problematic. The history of responses can be used in future to fine-tune the underlying AI models, as well as to potentially evaluate the responses of new models based on their correlation to positive and negative user ratings for past model responses.

Community Resources

OpenOps & AI

Mattermost

Contributing

Thank you for your interest in contributing to our open source project! ❀️ To get started, please read the contributor guidelines for this repository.

License

This repository is licensed under Apache-2.

More Repositories

1

mattermost

Mattermost is an open source platform for secure collaboration across the entire software development lifecycle..
TypeScript
30,433
star
2

focalboard

Focalboard is an open source, self-hosted alternative to Trello, Notion, and Asana.
TypeScript
20,596
star
3

mattermost-webapp

Archived web app of Mattermost. Moved to the monorepo: https://github.com/mattermost/mattermost
TypeScript
2,290
star
4

desktop

Mattermost Desktop application for Windows, Mac and Linux
TypeScript
1,921
star
5

mattermost-mobile

Next generation iOS and Android apps for Mattermost in React Native
TypeScript
1,898
star
6

mattermost-docker

Deprecated
Shell
964
star
7

docker

Install Mattermost server via Docker
Shell
320
star
8

mattermost-push-proxy

Go
217
star
9

docs

Mattermost documentation
Python
205
star
10

mattermost-redux

Redux for Mattermost
JavaScript
200
star
11

mattermost-plugin-jitsi

Jitsi plugin for Mattermost πŸ”Œ
Go
183
star
12

mattermost-android-classic

Mattermost app for Android phones and tablets
Java
175
star
13

mattermost-bot-sample-golang

Go
170
star
14

mattermost-ios-classic

Mattermost iOS application source code
Swift
156
star
15

mattermost-helm

Mattermost Helm charts for Kubernetes
Smarty
153
star
16

mattermost-plugin-gitlab

GitLab plugin for Mattermost
JavaScript
136
star
17

mattermost-plugin-github

GitHub plugin for Mattermost
Go
131
star
18

mattermost-plugin-ai

Mattermost Copilot plugin supporting multiple LLMs
Go
127
star
19

react-native-paste-input

React Native TextInput replacement to allow pasting files
Objective-C
124
star
20

mattermost-plugin-autolink

Automatically rewrite text matching a regular expression into a markdown link.
Go
123
star
21

mattermost-operator

Mattermost Operator for Kubernetes
Go
117
star
22

mattermost-plugin-zoom

Zoom plugin for Mattermost πŸ”Œ
Go
106
star
23

mattermost-plugin-starter-template

Build scripts and templates for writing Mattermost plugins.
Go
98
star
24

mattermost-plugin-jira

JIRA plugin for Mattermost πŸ”Œ
Go
97
star
25

mattermost-plugin-calls

TypeScript
95
star
26

xml-roundtrip-validator

Go
78
star
27

mattermost-api-reference

Mattermost API reference documentation.
HTML
76
star
28

mattermost-integration-gitlab

GitLab Integration Service for Mattermost
Python
75
star
29

mattermost-plugin-playbooks

Mattermost Playbooks enable reliable and repeatable processes for your teams using checklists, automation, and retrospectives.
TypeScript
72
star
30

mattermost-developer-documentation

Mattermost developer documentation.
CSS
71
star
31

mattermost-data-warehouse

Python
67
star
32

mattermost-cloud

Tools and services for running Mattermost Cloud ☁️
Go
67
star
33

mattermost-plugin-demo

A demo of what Mattermost plugins can do.
Go
64
star
34

mattermost-plugin-memes

Add culture to your Mattermost with memes πŸ”Œ
Go
61
star
35

mattermost-plugin-todo

Mattermost plugin for tracking to do items
JavaScript
60
star
36

mattermost-load-test

[DEPRECATED] replaced by https://github.com/mattermost/mattermost-load-test-ng
Go
59
star
37

mattermost-plugin-welcomebot

Go
57
star
38

mattermost-docker-preview

Mattermost Preview Docker Image
Dockerfile
57
star
39

mattermost-load-test-ng

Mattermost next generation loadtest agent
Go
55
star
40

mattermost-cloud-monitoring

HCL
53
star
41

mattermost-plugins

This project hosts plugins built by Mattermost staff and community.
45
star
42

mattermost-handbook

Mattermost Community and Staff Handbook
44
star
43

mattermost-driver-javascript

Javascript library for interacting with the Mattermost API
JavaScript
42
star
44

action-mattermost-notify

GitHub Action for sending a notification to a Mattermost channel
JavaScript
42
star
45

mattermost-marketplace

The stateless HTTP service backing the Mattermost marketplace.
Go
38
star
46

mattermost-plugin-autotranslate

Go
36
star
47

mattermost-plugin-custom-attributes

Mattermost plugin for adding custom attributes to users!
Go
35
star
48

react-native-network-client

React Native network client by Mattermost
TypeScript
35
star
49

morph

Go
34
star
50

mattermost-plugin-google-calendar

Mattermost Google Calendar Plugin
TypeScript
34
star
51

mattermost-heroku

Run Mattermost on Heroku
Shell
34
star
52

mattermost-plugin-apps

Powers the Mattermost App Framework
Go
33
star
53

mattermost-plugin-antivirus

Antivirus plugin for scanning files uploaded to Mattermost
Go
30
star
54

mattermost-plugin-jenkins

A Mattermost plugin to interact with Jenkins
Go
30
star
55

mattermost-plugin-agenda

Mattermost plugin to handle meeting agendas
Go
29
star
56

mattermost-integration-giphy

Giphy Integration Service for Mattermost
Python
27
star
57

mattermost-interactive-post-demo

Interactive post demo for Mattermost
Python
27
star
58

mattermost-plugin-email-reply

Go
26
star
59

mattermost-ai-framework

The Mattermost AI Framework
TypeScript
26
star
60

rtcd

Go
25
star
61

mattermost-plugin-walltime

Timezone Message Convert for Mattermost πŸ•› πŸ•’ πŸ•• πŸ•˜
JavaScript
23
star
62

mattermost-webrtc

Dockerfile
22
star
63

mattermost-omnibus

A simple way to install Mattermost.
Go
22
star
64

logr

Fully asynchronous, structured, pluggable logging for Go.
Go
21
star
65

mattermost-plugin-aws-SNS

Plugin that receives SNS notification from Alerts created by AWS CloudWatch and sent via AWS SNS
Go
17
star
66

chewbacca

Chewbacca GitHub Bot
Go
17
star
67

mattermost-browser-extension

Demo Chrome extension for Mattermost 5.2+
JavaScript
16
star
68

mattermost-plugin-skype4business

Go
15
star
69

matterbuild

Matterbuild - An internal Mattermost chatops tool for generating Mattermost releases
Go
14
star
70

mattermost-plugin-docup

Mattermost plugin for marking messages for documentation.
JavaScript
14
star
71

mattermost-govet

Go
14
star
72

quality-assurance

Issues and test assignments for QA Contributors/Community
14
star
73

mattermost-plugin-profanity-filter

A profanity filter plugin.
Go
14
star
74

matrix-as-mm

Matrix ↔️ Mattermost bridge
PLpgSQL
13
star
75

mattermost-plugin-msteams

MS Teams plugin for Mattermost
Go
13
star
76

mattermost-plugin-mscalendar

Mattermost plugin for Microsoft Office365
Go
13
star
77

mattermost-plugin-confluence

A Mattermost Plugin to receive events from Confluence
Go
13
star
78

mattermost-app-examples

Examples for the Mattermost App Framework
Go
13
star
79

react-native-emm

React Native package for EMM managed configurations
Kotlin
12
star
80

mattermost-plugin-msteams-meetings

Mattermost Plugin for Microsoft Teams Meetings
Go
12
star
81

mattermost-oauth2-client-sample

Sample app for Mattermost OAuth2 and App Center
JavaScript
12
star
82

mattermost-app-zendesk

Zendesk App for Mattermost
TypeScript
11
star
83

dynamic-virtualized-list

Dynamic virtualized list
JavaScript
11
star
84

mattermost-plugin-api

A hackathon project to explore reworking the Mattermost Plugin API.
Go
11
star
85

builder

Mattermost builder
Go
11
star
86

mattermost-mattermod

Go
11
star
87

perseus

Multiplex connections
Go
10
star
88

mattermost-looker

LookML
10
star
89

dbcmp

database comparison tool
Go
10
star
90

mattermost-hackathon-nov2019

10
star
91

mattermost-test-management

Mattermost Test Management, an open testing initiative.
TypeScript
9
star
92

mattermost-plugin-cloud

Go
9
star
93

mattermost-utilities

JavaScript
9
star
94

mattermost-developer-kit

Command line tool for generating Mattermost integration and plugin templates
JavaScript
9
star
95

mmetl

Go
8
star
96

mattermost-plugin-webex

Go
8
star
97

mattermost-plugin-nps

Collect and Send NPS surveys
Go
8
star
98

compass-components

[DEPRECATED] Compass Components is a shared component library used to build appealing user interfaces from scratch with ease. It's based on the Mattermost Design style guide called the Compass Design System.
TypeScript
8
star
99

mattermost-app-nextcloud

Nextcloud App for Mattermost
Go
7
star
100

mattermost-plugin-demo-creator

Go
7
star