Python+Slack API를 사용하여 챗봇을 구현하는 방법에 대한 자세한 예
Chatbot(Bot)은 Slack과 같은 실용적인 대화형 채팅 서비스입니다. 이전에 챗봇을 구축한 적이 없다면 이 문서에서는 Python 및 Slack API를 사용하여 첫 번째 챗봇을 구축하는 방법에 대한 간단한 소개 가이드를 제공합니다.
개발 환경을 설정하고 Slack API 챗봇 토큰을 획득한 후 Pyhon을 사용하여 간단한 챗봇을 개발합니다.
필요한 도구
"StarterBot"이라고 부르는 챗봇에는 Python과 Slack API가 필요합니다. Python 코드를 실행하려면 다음이 필요합니다.
Python 2 또는 Python 3
Python 애플리케이션 종속성을 처리하기 위한 pip 및 virtualenv
API 계정에 액세스할 수 있는 무료 Slack 또는 Slack 개발자 행아웃 팀에 가입할 수 있습니다.
Slack 팀에서 구축한 공식 Python Slack 클라이언트 코드 베이스
Slack API 테스트 토큰
Slack API 문서는 매우 유용합니다.
이 튜토리얼의 모든 코드는 slack-starterbot 공개 라이브러리에 있으며 MIT 라이선스에 따라 오픈 소스로 제공됩니다.
환경 설정
이제 프로젝트에 필요한 도구가 무엇인지 알았으므로 개발 환경을 설정해 보겠습니다. 먼저 터미널(또는 Windows의 경우 명령 프롬프트)로 이동하여 이 프로젝트를 저장할 디렉터리로 변경합니다. 해당 디렉터리에서 새로운 virtualenv를 생성하여 애플리케이션 종속성을 다른 Python 프로젝트로부터 격리합니다.
virtualenv 활성화:
프롬프트는 이제 스크린샷과 같아야 합니다.
활성화된 starterbot virtualenv에 대한 명령 프롬프트 이 공식 Slack 클라이언트 API 도움말 라이브러리는 Build on Slack에서 제공되며 다음과 같이 보낼 수 있습니다. Slack 채널을 통해 메시지를 수신합니다. 다음 pip 명령을 통해 slackclient 라이브러리를 설치하십시오.
pip 명령이 완료되면 이와 유사한 출력이 표시되고 프롬프트로 돌아갑니다.
이미 활성화된 virtualenv에서 pip를 사용하여 slackclient를 설치한 출력 또한 챗봇이 이를 사용하여 Slack API에 연결할 수 있도록 Slack 프로젝트에 대한 액세스 토큰을 가져와야 합니다.
Slack 실시간 메시징(RTM) API
Slack을 사용하면 프로그램이 웹 API를 통해 메시징 채널에 액세스할 수 있습니다. 이 Slack 웹 API 페이지로 이동하여 자신만의 Slack 프로젝트를 등록하고 구축하세요. 관리 권한이 있는 기존 계정에 로그인할 수도 있습니다.
Web API 페이지 우측 상단의 로그인 버튼을 눌러 로그인을 하시면 챗봇 사용자 페이지로 이동하게 됩니다.
사용자 정의 Chatbot 사용자 페이지 챗봇 이름을 "starterbot"으로 지정하고 "봇 통합 추가" 버튼을 클릭하세요.
봇 통합을 추가하고 이름을 "starterbot"으로 지정합니다. 페이지가 다시 로드되고 새로 생성된 액세스 토큰이 표시됩니다. 로고를 원하는 디자인으로 변경할 수도 있습니다. 예를 들어 저는 "풀 스택 Python" 플래그를 지정했습니다.
새 Slack 챗봇에 대한 액세스 토큰을 복사하여 붙여넣으세요. 페이지 하단의 "통합 저장" 버튼을 클릭하세요. 이제 챗봇이 Slack API에 연결할 준비가 되었습니다.
Python 개발자들 사이의 일반적인 관행은 비밀 토큰을 환경 변수로 내보내는 것입니다. 출력 Slack 토큰의 이름은 SLACK_BOT_TOKEN입니다.
자, 이제 이 Slack API를 챗봇으로 사용할 수 있는 권한이 부여되었습니다.
챗봇을 구축하려면 챗봇의 ID라는 정보가 하나 더 필요합니다. 다음으로 Slack API에서 해당 ID를 가져오는 짧은 스크립트를 작성하겠습니다.
챗봇 ID 가져오기
마침내 Python 코드를 작성할 시간입니다. StarterBot의 ID를 가져오기 위한 간단한 Python 스크립트를 작성해 보겠습니다. 이 ID는 Slack 프로젝트에 따라 다릅니다.
Slack RTM에서 StarterBot으로 보낸 메시지를 구문 분석할 때 애플리케이션을 인증하려면 이 ID가 필요합니다. 또한 스크립트는 SLACK_BOT_TOKEN 환경 변수가 올바르게 설정되었는지 여부도 테스트합니다.
printbotid.py라는 새 파일을 만들고 다음 코드를 입력합니다.
코드는 SlackClient를 가져오고 우리가 설정한 환경 변수 SLACK_BOT_TOKEN을 사용하여 이를 인스턴스화합니다. Python 명령을 통해 스크립트가 실행되면 Slack API에 액세스하여 모든 Slack 사용자를 나열하고 "satrterbot"이라는 이름과 일치하는 ID를 얻습니다.
챗봇의 ID를 얻으려면 이 스크립트를 한 번만 실행하면 됩니다.
실행되어 챗봇의 ID를 제공하면 스크립트는 간단한 한 줄 출력을 인쇄합니다.
Slack 프로젝트에서 Slack 챗봇의 ID를 인쇄하려면 Python 스크립트를 사용하세요. 이 스크립트로 인쇄된 고유 ID를 복사하세요. 그리고 해당 ID를 환경 변수 BOT_ID로 출력합니다.
이 스크립트는 한 번만 실행하면 챗봇의 ID를 얻을 수 있습니다. 이제 StarterBot을 실행하는 Python 애플리케이션에서 이 ID를 사용할 수 있습니다.
StarterBot 코딩
이제 StarterBot을 코딩하는 데 필요한 모든 것이 준비되었습니다. starterbot.py라는 새 파일을 만들고 다음 코드를 포함합니다.
os 및 SlackClient 가져오기는 이미 theprintbotid.py에서 사용했기 때문에 우리에게 친숙해 보입니다.
가져온 종속성 패키지를 사용하여 환경 변수 값을 얻고 Slack 클라이언트를 인스턴스화할 수 있습니다.
이 코드는 우리가 내보낸 환경 변수 SLACK_BOT_TOKEN을 통해 SlackClient` 클라이언트를 인스턴스화합니다.
Slack 클라이언트는 Slack RTM API WebSocket에 연결한 다음 Firehose에서 메시지를 구문 분석하는 동안 계속 반복됩니다. StarterBot으로 전송된 메시지가 있는 경우, handler_command라는 함수가 수행할 작업을 결정합니다.
다음으로 Slack의 출력 및 프로세스 명령을 구문 분석하는 두 가지 기능을 추가합니다.
parse_slack_output 함수는 Slack의 메시지를 수락하고 해당 메시지가 StarterBot으로 전송되었는지 확인합니다. 메시지는 챗봇 ID에 대한 직접적인 명령으로 시작된 다음 처리를 위해 코드로 전달됩니다. 현재는 사용자에게 더 많은 Python 코드를 작성하라고 알리는 메시지를 Slack 파이프라인을 통해 게시하기만 하면 됩니다.
전체 프로그램을 합쳤을 때의 모습입니다(GitHub에서도 파일을 볼 수 있습니다):
이제 코드가 있으므로 Python starterbot.py를 통해 StarterBot 코드를 실행할 수 있습니다.
StarterBot이 실행을 시작하고 API의 출력 채널에 연결되면 Slack에서 새 채널을 만들고 StarterBot을 초대하거나 StarterBot을 기존 채널에 초대합니다.
Slack 인터페이스에서 새 채널을 만들고 StarterBot을 초대하세요. 이제 채널의 StarterBot에 명령을 보내세요.
Slack 채널의 StarterBot에 명령 보내기 챗봇의 응답에 문제가 발생하면 변경해야 할 수도 있습니다. 이 튜토리얼에서 위에서 설명한 대로 AT_BOT = ":" 줄에는 "@starter"(자신의 챗봇에 지정한 이름) 뒤에 콜론이 필요합니다. 제거: AT_BOT 문자열 끝에서. Slack에서는 @사람 이름 뒤에 콜론을 요구하는 것 같은데, 이는 다소 어색해 보입니다.
End
자, 이제 간단한 챗봇이 생겼고, 코드의 여러 위치에 만들고 싶은 기능을 추가할 수 있습니다.
Slack RTM API와 Python을 사용하여 많은 일을 할 수 있습니다. 다음 기사를 통해 배울 수 있는 다른 내용을 확인하세요.
영구 관계형 데이터베이스 또는 PostgreSQL, MySQL 또는 SQLite와 같은 NoSQL 백엔드를 연결하여 사용자 데이터 저장 및 검색
챗봇과 다른 상호 작용 채널 추가 , 문자 메시지 또는 전화 통화
GitHub, Twilio 또는 api.ai
위 내용은 Python+Slack API를 사용하여 챗봇을 구현하는 방법에 대한 자세한 예의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











국내 언론 보도에 따르면 샤오홍슈는 자사 메인 앱에서 '다빈치'라는 AI 애플리케이션을 내부적으로 테스트하고 있다. 이 애플리케이션은 여행 가이드, 음식 가이드, 지리 및 문화 지식, 생활 기술, 개인적 성장 및 심리적 구성 등을 포함한 지능적인 질문과 답변 등 AI 채팅 서비스를 사용자에게 제공할 수 있는 것으로 알려졌다. 보도에 따르면 '다빈치' 학습을 위해 Meta A 제품의 LLAMA 모델을 사용하며, 제품은 올해 9월부터 테스트되었습니다. 샤오홍슈도 그룹 AI 대화 기능에 대한 내부 테스트를 진행했다는 소문이 돌고 있다. 이 기능을 통해 사용자는 그룹 채팅에서 AI 캐릭터를 생성하거나 소개하고 대화 및 상호 작용을 할 수 있습니다. 이미지 출처 : T

이 기사에서는 ChatGPT와 Java를 사용하여 지능형 챗봇을 개발하는 방법을 소개하고 몇 가지 구체적인 코드 예제를 제공합니다. ChatGPT는 자연어를 이해하고 인간과 유사한 텍스트를 생성할 수 있는 신경망 기반 인공지능 기술인 OpenAI가 개발한 Generative Pre-training Transformer의 최신 버전입니다. ChatGPT를 사용하면 적응형 채팅을 쉽게 만들 수 있습니다.

Java를 사용하여 인공 지능 기반 지능형 챗봇을 개발하는 방법 인공 지능 기술의 지속적인 개발로 인해 지능형 챗봇이 다양한 애플리케이션 시나리오에서 점점 더 널리 사용되고 있습니다. 인공지능을 기반으로 한 지능형 챗봇을 개발하면 사용자 경험을 향상시킬 수 있을 뿐만 아니라 기업의 인건비도 절감할 수 있습니다. 본 글에서는 Java 언어를 활용하여 인공지능 기반 지능형 챗봇을 개발하는 방법을 소개하고 구체적인 코드 예시를 제공합니다. 지능형 챗봇을 개발하기 전에 먼저 봇의 기능과 도메인을 결정해야 합니다.

고객 서비스 및 글쓰기에서 창의성, 공감 및 진정성의 중요성 이 블로그 게시물에서는 고객 서비스 및 글쓰기 업계에서 챗봇 사용의 장단점에 대해 논의합니다. 챗봇은 고객 문의에 빠르고 정확한 답변을 제공할 수 있지만, 인간 작가나 고객 서비스 담당자가 갖고 있는 창의성, 공감, 진정성이 부족합니다. 또한 챗봇과 인공지능의 일반적인 사용을 둘러싼 윤리적 문제에 대해서도 논의할 것입니다. 전반적으로 챗봇은 인간 노동을 대체하기보다는 보완물로 보아야 합니다. 이 기사에서 인력 내 챗봇의 역할에 대해 자세히 알아보세요. 저는 AI가 인간 근로자를 대체할 가능성에 대해 많은 사람들이 우려하는 점을 이해합니다. 특히, 챗봇이 인간 고객 서비스를 대체할 가능성에 대한 추측이 있었습니다.

ChatGPT와 Python의 완벽한 조합: 실시간 챗봇 구축 소개: 인공지능 기술의 급속한 발전으로 인해 챗봇은 다양한 분야에서 점점 더 중요한 역할을 하고 있습니다. 챗봇은 사용자가 즉각적이고 개인화된 지원을 제공하는 동시에 기업에 효율적인 고객 서비스를 제공하도록 도울 수 있습니다. 이 기사에서는 OpenAI의 ChatGPT 모델과 Python 언어를 사용하여 실시간 채팅 로봇을 만드는 방법을 소개하고 구체적인 코드 예제를 제공합니다. 1. 채팅GPT

12월 25일 ChinaZ.com의 뉴스: Tech Planet에 따르면 Xiaohongshu는 메인 앱에서 "Davinic"이라는 AI 기능을 내부적으로 테스트했습니다. 이 기능은 9월부터 테스트를 진행 중이며, AI 그룹 채팅 이후 Xiaohongshu가 출시한 또 다른 새로운 AI 애플리케이션이기도 합니다. '다비닉'은 지능형 질문과 답변 등 AI 채팅 기능을 주로 사용자에게 제공한다. '다비닉'은 여행 가이드, 음식 가이드, 지리 및 문화 지식, 생활 기술, 개인 성장 및 심리적 조언은 물론 활동 추천 등 다양한 분야에 대한 질문과 답변을 제공하는 데 더욱 중점을 두고 있다고 합니다. "Davinic"은 Meta의 LLAMA 대형 모델을 기반으로 합니다.

이미 2월에 NVIDIA는 LLM 기반 챗봇인 ChatwithRTX를 출시했습니다. 5월에는 챗봇이 업데이트되어 새로운 모델과 새로운 기능이 추가되었으며, 패키징 패키지도 35G에서 11G로 축소되었으며, 소프트웨어 이름이 공식적으로 ChatRTX로 변경되었습니다. ChatwithRTX에 대한 이전 기사와 동영상에서 ChatwithRTX에는 자체 중국어 응답이 없다고 언급했습니다. 중국어 답변을 구현하려면 자체 환경, 대규모 언어 모델 등을 설치해야 합니다. 하지만 이 단계는 사용자에게 상대적으로 높은 문턱을 가지고 있으며, 중국어 질문과 답변을 얻기 위해서는 많은 복잡한 단계를 거쳐야 합니다. 소개에 앞서 ChatRTX가 무엇인지 간략하게 알아보겠습니다.

널리 사용되는 프로그래밍 언어인 PHP는 웹 개발에 널리 사용되었습니다. 인공지능 기술이 계속 발전함에 따라 점점 더 많은 개발자들이 PHP를 사용하여 챗봇을 구축하려고 노력하고 있습니다. 챗봇은 사용자의 질문에 자동으로 답변하고, 엔터테인먼트를 제공하며, 사용자가 일상 작업을 완료하도록 돕는 매우 유용한 도구가 되었습니다. 이번 글에서는 PHP를 사용하여 챗봇을 구축하는 방법을 소개하겠습니다. 채팅 로봇의 기본 원리 채팅 로봇의 원리는 자연어 처리 기술을 활용하여
