← Back to list

코딩 없이 Slack에 피플팀 Q&A 봇 추가하기

OpenAI Assistant를 활용해서 Slack에 피플팀 Q&A 봇을 추가하는 방법을 소개합니다.

Snow LeeSnow Lee

Slack을 사용하는 피플 팀(People Team or HR Team)은 하루에도 수십가지 온갖 질문을 받습니다. 긴밀한 논의가 필요한 질문도 많지만, 업무 가이드 문서에 적혀있음에도 여전히 팀 혹은 사람을 멘션해서 물어보는 경우가 많습니다. ‘이런건 왜 직접 안 찾아보고 물어보는거야’ 라는 생각이 들 때도 많습니다.

물어보는 사람 입장도 이해는 됩니다. 사내 정보는 정말 많고, 모든 가이드 문서를 다 숙지하고 있기는 어렵습니다. 검색 결과도 그리 좋지 않은데, 검색으로 문서를 찾았다고 해도 내가 원하는 내용을 찾으려면 그 문서를 다 훑어봐야 합니다. 질문자 입장에서 당장 당면한 문제는 너무 급하니 사람에게 물어보는게 더 빠르고 좋은 해결책입니다.

업무에 집중을 하다가 방해를 받으면 다시 집중 모드로 돌아가는데 보통 27분이 낭비된다고 합니다. 이런 낭비를 줄이기 위해 코딩 없이 Slack에 업무 프로세스 관련 Q&A 봇을 추가함으로써 업무를 효율적으로 만드는 방법을 소개해보겠습니다. 모든 단계를 따라하는데 10-20분 정도 소요됩니다.

실행 방법을 세 줄 요약하면 다음과 같습니다:

  1. 관련 가이드 문서를 다운로드한다.
  2. OpenAI Assistant로 Q&A 봇을 만든다.
  3. PlugBear를 활용해서 만든 봇을 슬랙에 초대한다.

참 쉽죠?

단계별 가이드

#1 Confluence 문서 다운로드

Confluence 기준으로 문서 다운로드 방법을 알려드리겠습니다. Notion, Google Docs도 다운로드 방법이 있으니 필요하다면 댓글로 알려주세요 .

  1. 스페이스 좌측 메뉴에서 스페이스 설정 메뉴를 선택한 뒤, 우측에서 스페이스 내보내기 링크를 클릭합니다.

    Confluence Menu

    Confluence Space Setting

  2. HTML을 선택하고 다음 을 클릭합니다.

  3. 사용자정의 내보내기 를 선택한 뒤, 다운로드를 원하는 페이지만 선택합니다. 너무 많거나 너무 다양한 정보를 모두 담을 경우 답변의 질이 떨어질 수 있으니, 최대한 목적에 맞는 문서만 선택합니다.

    Confluence Export

  4. 다운로드 파일을 준비하는데 1-5분 정도의 시간이 소요될 수 있습니다. 준비가 완료되면 해당 파일을 다운로드합니다.

#2 문서 합치기

OpenAI Assistant는 현재 지식 추출 파일을 20개로 제한하고 있어서, 다운로드 받은 문서를 하나의 파일로 합친 뒤 업로드 해야합니다.

Microsoft Windows를 사용한다면,

파일 탐색기로 다운로드 받은 파일의 압축을 푼 뒤, HTML 파일들이 있는 폴더로 들어갑니다. Shift 키를 누른 상태에서 해당 폴더의 빈 공간을 우클릭하면 Open command window here (이 위치에서 Command 실행) 이라는 메뉴가 보일 것입니다. 해당 메뉴를 선택해서 터미널(까만 윈도우)를 실행합니다.

까만 터미널 화면에 커서가 하나 보일 것입니다. 아래 실행문을 복사해서 붙여넣고 엔터를 누릅니다. 참고로 아래 실행문은 하위 폴더를 돌아다니며 html 파일을 찾아서 handbook.txt 파일에 내용을 붙여넣는 작업을 수행합니다.

(for /R %f in (*.html) do @type "%f") > handbook.txt

해당 폴더 안에 모든 HTML 텍스트를 담고 있는 handbook.txt 파일이 생성되었을 것입니다.

Mac OS를 사용한다면,

맥을 사용하고 있다면 다음 방식을 사용해서 파일을 합칠 수 있습니다. 우선 다운로드 받은 파일의 압축을 푼 뒤, 해당 폴더를 우클릭해서 New Terminal at Folder 메뉴를 선택합니다.

Mac Terminal

까만 화면에 커서가 하나 보일 것입니다. 아래 실행문을 복사해서 붙여넣고 엔터를 누릅니다. 참고로 아래 실행문은 하위 폴더를 돌아다니며 html 파일을 찾아서 handbook.txt 파일에 내용을 붙여넣는 작업을 수행합니다.

find . -name '*.html' -exec cat {} \; > handbook.txt

해당 폴더 안에 모든 HTML 텍스트를 담고 있는 handbook.txt 파일이 생성되었을 것입니다.

#3 OpenAI Assistant 만들기

OpenAI Assistant 페이지를 방문합니다. 아직 계정이 없을 경우 가입이 필요합니다.

우측 상단의 Create 버튼을 클릭한 뒤 다음 내용을 채워 넣습니다.

OpenAI Assistant

  • Name - 사용하고 싶은 봇의 이름를 적습니다.
  • Instructions - 봇이 수행하기를 바라는 내용의 프롬프트입니다. 다음은 피플팀 봇의 프롬프트 예시입니다.

피플팀 Q&A 봇은 사람들을 위한 친근하고 접근하기 쉬운 Q&A 봇입니다. 이 봇은 회사의 업무 프로세스를 안내하며, 특히 운영 관련 질문에 집중하고 법률 자문은 피합니다. 봇은 친근하면서도 전문적인 어조로 소통하며, 핸드북의 내용을 엄격히 준수합니다. 사용 가능한 정보에 한계가 있을 때, 봇은 예의 바르게 사과하며 다른 정보 소스를 제안합니다. 중요한 것은, 사용자의 질문이 불분명할 경우 피플팀 Q&A 봇은 적극적으로 질문을 명확히 하여 가장 정확하고 관련성 높은 조언을 제공합니다. 이 접근 방식은 효과적이고 정확한 소통을 유지하는 데 도움이 되며, 핸드북 기반 지침을 제공하는 봇의 목표와 일치합니다.

  • Model - 현재 제일 최신 모델인 gpt-4-1106-preview 를 선택합니다.

  • Retrieval - 지식 추출을 위한 옵션입니다. 이 옵션을 활성화합니다.

  • Files - 지식을 담고 있는 파일입니다. Add 버튼을 눌러서 앞서 만든 handbook.txt 파일을 업로드합니다.

  • Save 버튼을 눌러서 Assistant를 생성합니다.

    OpenAI Assistant List

#4 Slack 에 추가하기 (feat. PlugBear)

PlugBear는 LLM 앱을 Slack과 같은 채널에 연동시켜주는 노코드 도구입니다. PlugBear를 활용하면 앞에서 만든 Assistant 를 Slack에 쉽게 붙일 수 있습니다.

  1. 우선 https://plugbear.io 에 무료로 가입한 뒤 Channels 페이지에서 Slack 섹션의 Connect를 클릭해서 Slack workspace를 연동합니다.

    Channels

  2. OpenAI API Key를 생성합니다. API keys 에 방문해서 Create new secret key 버튼을 눌러서 생성할 수 있습니다. 임의의 이름으로 키를 생성한 뒤, 생성된 값을 잘 복사해둡니다. (sk-… 로 시작하는 문자열입니다.)

    OpenAI API Key

  3. LLM Apps 페이지에서 Add App 버튼을 클릭한 뒤, 앞서 만든 OpenAI API Key를 붙여 넣습니다.

  4. Assistant 항목에서 앞서 만든 Assistant 를 선택한 뒤 Create 버튼을 누릅니다.

    API Key Field

  5. 마지막으로 Connections 페이지에서 New Connection 버튼을 눌러 Slack 과 Assistant를 연결합니다. 원할 경우 특정 Slack 채널에서만 동작하도록 선택할 수도 있습니다.

    Connection Form

#5 Slack에서 사용해보기

앞서 연동한 슬랙 채널에서 /invite @PlugBear 를 입력해 봇을 초대합니다. @PlugBear를 멘션하면서 질문을 하면 봇이 답변을 줍니다.

Slack Message

마무리

설명이 길었지만 따라해보면 금세 봇이 완성되어 Slack에서 동작하고 있는 모습을 볼 수 있을 것입니다. AI의 도움 덕분에 더 중요한 일에 집중하고 더 많은 성과를 낼 수 있습니다. 상상력을 발휘해서 더 많은 영역에 응용해보세요!