Building an AI Slackbot for your teams

Bernardo Aceituno

Bernardo Aceituno

@bernaceituno

Building an AI Slackbot for your teams

Slack is a common location for team members in an organization to communicate, assign tasks, and share knowledge. Channels are a popular place for employees to seek advice and find resources. However, a large volume of messaging is directed to back-office workflows and information requests, which can become a bottleneck for an organization.

This is where Generative AI comes into play. Large Language Models are effective tools for easily transferring knowledge from an organization to any employee or team member. By combining knowledge base search and language models, you can create a powerful AI assistant that can be embedded into your organization's Slack to answer common queries or even automate routine workflows.

In this blog post, we will explore how to build an enterprise-grade AI Slackbot that can support your organization.

Slack AI chatbots as a solution

Before we dive in, let's quickly review some common applications of AI assistants in a team. Slackbots powered by language models can easily streamline interactions with various knowledge bases. Common applications include:

  1. Staff Training: New hires can use the AI assistant to be quized on training materials, policies, and procedures, reducing the learning curve and enhancing productivity.
  2. Automating Support Desk: The assistant can support agents to quickly locate troubleshooting guides, product specifications, or customer histories, leading to faster and more accurate responses.
  3. Drafting Proposals: Teams can use the assistant to gather market research, historical data, and case studies, streamlining the proposal development process.
  4. Answering Questions on Policies and Procedures: Employees can query the assistant for company guidelines, HR policies, or project resources, ensuring timely access to the right information.

Embedding each of these applications as Slackbots can automate over 80% of the questions and tickets that teams manage in each channel.

How to build an AI chatbot on Slack

Let's dive into the process of setting up a Slackbot with Stack AI. In this section, we will build a support desk assistant using the key components of Stack AI:

  • Large Language Model (LLM): The language model, such as OpenAI's GPT-4, Anthropic's Claude, or Meta's Llama, is the engine of every AI application. Language models aggregate information from different sources to synthesize text based on a user request.
  • Knowledge Base: Knowledge bases in Stack AI are modules used to parse, index, and query information from documents. The backbone of knowledge bases are systems known as "vector databases," which use special language models known as Embedding Models to convert unstructured information into arrays of data that can be easily searched.

In Stack AI, we can quickly build a chatbot with these two modules by entering the main Dashboard > New Project > Chat with Knowledge Base.

We then configure the chatbot by setting:

  1. Knowledge Base: We upload our staff policies, procedures, and support desk manual as references to feed as knowledge to our chatbot.

    Hint: You can also sync your documents from sources such as Notion, Google Drive, OneDrive, SharePoint, Confluence, or S3 buckets.

  2. LLM: We configure the instructions of the language model to always return citations to the relevant sources of content and to respond briefly and politely.

    Hint: Select models such as OpenAI GPT-4, Anthropic Claude-3-Opus, or Mixtral-8x22b, which support more text from the knowledge bases.

This setup results in the workflow below:

The next step is to optimize our workflow to ensure appropriate data privacy.

How to build privacy in your slackbot

When building an AI Slackbot, ensuring data privacy and security is paramount. Here are some best practices to follow:

  • Restrict Access to Specific Files: When syncing knowledge bases from sources like Notion, SharePoint, or OneDrive, ensure that only necessary files are accessible to the Slackbot. This minimizes the risk of exposing sensitive information. Implement role-based access control (RBAC) on your Stack AI organization to limit who can view or edit the synced documents.
  • Enable PII Encryption: Personally Identifiable Information (PII) should be encrypted before being sent to the LLM provider. This ensures that sensitive data remains protected during transmission and processing.

  • Use Private LLM Providers: Opt for LLMs hosted in private cloude infrastructure like AWS Bedrock, Azure AI, or open-source LLMs hosted on secure platforms (Together AI, Groq, etc.). These providers offer robust security measures and compliance certifications. Regularly review and update your data privacy policies to align with the latest industry standards and regulations.

By following these best practices, you can build a secure and privacy-compliant AI Slackbot that effectively supports your organization while safeguarding sensitive information.

Connecting to Slack and Exporting

Once you complete the setup of your Slackbot, click on "Save" and "Publish," and you can proceed to export your AI chatbot.

Save and Publish

Then navigate to the "Interface" tab and select the interface "Slack App."

Once you select the Slack interface, you will receive a set of instructions to set up your chatbot in Slack:

  1. Navigate to the "Your Apps" page in Slack.

  2. Create a Slack app.

  3. Import an "app manifest" from Stack AI.

    Hint: You can customize additional privacy settings in this YAML manifest to suit your privacy requirements.

  4. Select the workspace where you want to install the Slack bot.

  5. Enter the manifest.

  6. Create the app.

  7. Get the app credentials and save them in Stack AI.

  8. Save and install the Slack app!

Once you complete these steps, you will have an AI chatbot deployed on your Slack workspace! You can interact with this AI assistant by:

  • Mentioning your chatbot in a channel: Running the conversation in a public thread to keep resources easily accessible for others.
  • Having private message conversations: Keeping conversations private between each user and the Slack bot.

Through both modalities, your organization can extract value from enterprise search while adapting to your privacy requirements.

Conclusion: an AI slackbot to support all your operation

Integrating an AI Slackbot into your Slack workspace can significantly streamline your operations. By leveraging Stack AI, you can quickly build a powerful assistant that handles common queries, automates workflows, and provides instant access to important information.

Follow the steps outlined in this guide to set up your AI assistant, ensure data privacy, and connect it to Slack. Once deployed, your AI Slackbot will help reduce the workload on your support teams and improve overall efficiency.

Get started today with Stack AI and see how an AI Slackbot can enhance your team's productivity and support your organization's operations.