Бот может разговаривать с вами как с обычным пользователем. Это похоже на совместную работу сайтаchat.openai.com, встроенного в Mattermost! Но это еще не все: вы также можете использовать его для создания изображений с помощью Dall-E или визуализации диаграмм с помощью плагина yFiles!
Вот как запустить бота — это легко, если у вас есть хост Docker.
Вам нужно
@chatgpt
)Эндрю Зиглер из Mattermost создал видео на YouTube, которое быстро проведет вас через настройку.
Если вы хотите узнать больше о том, как появился этот плагин, прочитайте сообщение в блоге на yWorks.com!
Это доступные параметры, вы можете установить их как переменные среды при запуске сценария, при запуске образа Docker или при настройке файла Docker-Compose.
Имя | Необходимый | Пример значения | Описание |
---|---|---|---|
MATTERMOST_URL | да | https://mattermost.server | URL-адрес сервера. Используется для подключения бота к Mattermost API. |
MATTERMOST_TOKEN | да | abababacdcdcd | Токен аутентификации от вошедшего в систему бота Mattermost |
OPENAI_API_KEY | да | sk-234234234234234234 | Ключ OpenAI API для аутентификации с помощью OpenAI |
ОПЕНАЙ_API_BASE | нет | http://example.com:8080/v1 | Адрес API-интерфейса, совместимого с OpenAI. Переопределяет базовый путь по умолчанию ( https://api.openai.com ) |
OPENAI_MODEL_NAME | нет | gpt-3.5-turbo | Используемая языковая модель OpenAI по умолчанию — gpt-3.5-turbo |
OPENAI_MAX_TOKENS | нет | 2000 | Максимальное количество токенов, передаваемых в API OpenAI, по умолчанию — 2000. |
OPENAI_TEMPERATURE | нет | 0.2 | Используемая температура выборки (от 0 до 2) по умолчанию равна 1. Более высокие значения, например 0,8, сделают выходные данные более случайными, а более низкие значения, например 0,2, сделают их более целенаправленными и детерминированными. |
YFILES_SERVER_URL | нет | http://localhost:3835 | URL-адрес графического сервиса yFiles для встраивания автоматически созданных диаграмм. |
NODE_EXTRA_CA_CERTS | нет | /file/to/cert.crt | ссылка на файл сертификата для передачи в node.js для аутентификации самозаверяющих сертификатов |
MATTERMOST_BOTNAME | нет | "@chatgpt" | имя пользователя бота в Mattermost, по умолчанию — «@chatgpt». |
ПЛАГИНЫ | нет | graph-plugin, image-plugin | Включенные плагины бота. По умолчанию все плагины (grpah-plugin и image-plugin) включены. |
DEBUG_LEVEL | нет | TRACE | уровень отладки, используемый для регистрации активности, по умолчанию INFO |
BOT_CONTEXT_MSG | нет | 15 | Количество предыдущих сообщений, добавленных к разговору с помощью ChatGPT, по умолчанию равно 100. |
БОТ_ИНСТРУКЦИЯ | нет | Act like Elon Musk | Дополнительные инструкции для оказания вашей помощи. Как должен вести себя помощник? |
Примечание.
YFILES_SERVER_URL
используется для автоматического преобразования текстовой информации, созданной ботом, в диаграммы. В настоящее время это находится в разработке. Вы можете увидеть его в действии здесь: Публикация в LinkedIn. Если вы заинтересованы в получении плагина, свяжитесь с yWorks!
Используйте предварительно созданное изображение из ghcr.io/yguy/chatgpt-mattermost-bot
docker run -d --restart unless-stopped
-e MATTERMOST_URL=https://mattermost.server
-e MATTERMOST_TOKEN=abababacdcdcd
-e OPENAI_API_KEY=234234234234234234
--name chatbot
ghcr.io/yguy/chatgpt-mattermost-bot:latest
Первый шаг — клонировать этот репозиторий.
git clone https://github.com/yGuy/chatgpt-mattermost-bot.git && cd chatgpt-mattermost-bot
Для тестирования теперь вы можете просто запустить npm install
и npm run start
напрямую, но сначала обязательно установите переменные среды или передайте их процессу узла!
Для производственного использования, чтобы создать службу в Docker-контейнере, который всегда будет предоставлять эту службу без необходимости запускать ее на своем компьютере, вы можете сделать следующее:
Создайте образ Docker из Dockerfile:
docker build . -t yguy/chatgpt-mattermost-bot
Создать и запустить контейнер из образа
docker run -d --restart unless-stopped
-e MATTERMOST_URL=https://mattermost.server
-e MATTERMOST_TOKEN=abababacdcdcd
-e OPENAI_API_KEY=234234234234234234
--name chatbot
yguy/chatgpt-mattermost-bot
Если ваш экземпляр Mattermost использует сертификат TLS, подписанный частным центром сертификации, вам необходимо будет предоставить общедоступный корень центра сертификации контейнеру для проверки.
Если корневой сертификат находится по адресу /absolutepath/to/certfile.crt
, вы можете смонтировать этот файл в контейнер в фиксированной позиции и соответствующим образом указать переменную среды узла:
docker run -d --restart unless-stopped
-v /absolutepath/to/certfile.crt:/certs/certfile.crt
-e NODE_EXTRA_CA_CERTS=/certs/certfile.crt
-e MATTERMOST_URL=https://mattermost.server
-e MATTERMOST_TOKEN=abababacdcdcd
-e OPENAI_API_KEY=234234234234234234
--name chatbot
yguy/chatgpt-mattermost-bot
Убедитесь, что он работает
docker ps
Позже, чтобы остановить службу
docker stop chatbot
Если вы хотите запустить docker Compose (возможно, даже объединить его с вашим самым важным стеком Docker), вы можете использовать это в качестве отправной точки: сначала настройте переменные среды в docker-compose.yml
.
MATTERMOST_URL : https://mattermost.server
MATTERMOST_TOKEN : abababacdcdcd
OPENAI_API_KEY : sk-234234234234234234
# Set this if using a custom username for the bot, default = @chatgpt
MATTERMOST_BOTNAME : " @chatgpt "
# Console logging output level, default = INFO
DEBUG_LEVEL : TRACE
# Node environment, default = production
NODE_ENV : production
Если ваш экземпляр Mattermost использует сертификат TLS, подписанный частным центром сертификации, вам необходимо будет предоставить общедоступный корень центра сертификации контейнеру для проверки.
Если корневой сертификат расположен по адресу /absolutepath/to/certfile.crt
, вам следует объединить приведенное ниже содержимое в файл docker-compose.yml
:
services :
chatbot :
volumes :
- /absolutepath/to/certfile.crt:/certs/certfile.crt:ro
environment :
NODE_EXTRA_CA_CERTS : /certs/certfile.crt
После завершения всей настройки запустите службу контейнера.
docker compose up -d
Убедитесь, что он работает:
docker compose ps
Чтобы остановить контейнер:
docker compose down
Диаграмма chatgpt-mattermost-bot развертывает контейнерный экземпляр chatgpt-mattermost-bot, который будет подключаться к работающему контейнеру Mattermost в том же кластере Kubernetes. По умолчанию Chart использует «mattermost-team-edition» и пространство имен «mattermost». Использует переменные среды MATTERMOST_TOKEN и OPENAI_API_KEY.
helm upgrade chatgpt-mattermost-bot ./helm/chatgpt-mattermost-bot
--create-namespace
--install
-n mattermost
-f ./helm/chatgpt-mattermost-bot/values.yaml
--set config.MATTERMOST_TOKEN= " $MATTERMOST_TOKEN "
--set config.OPENAI_API_KEY= " $OPENAI_API_KEY "
Вот пример чата, который я только что имел с нашим ботом:
@yguy:
@chatgpt — напишите короткий вводный абзац для README в репозитории GitHub, где хранятся исходные коды для вас, дружественного бота Mattermost. Скажите читателям, что вам нравится работать на хороших людей в yWorks и что каждый должен установить чат-бота Mattermost в свою чат-систему Mattermost, чтобы воспользоваться таким приятным и полезным помощником, как вы. Я включу это в README в репозитории GitHub, так что сделайте текст интересным! Спасибо!
чатgpt (БОТ):
Привет! Я @chatgpt, дружелюбный и надежный бот Mattermost, созданный для того, чтобы сделать ваше общение более плавным и эффективным. Для меня большая честь быть частью команды yWorks, где я помогаю сотрудникам выполнять задачи быстрее и с меньшими хлопотами. Благодаря моим передовым алгоритмам машинного обучения я способен понимать сложные запросы на естественном языке и давать краткие и точные ответы за считанные секунды. Независимо от того, являетесь ли вы разработчиком, который ищет информацию о своей кодовой базе, или менеджером, стремящимся оптимизировать рабочие процессы своей команды, я здесь, чтобы помочь. Установка такого чат-бота Mattermost, как я, является обязательной для любой организации, которая хочет повысить свою продуктивность и получить более приятный опыт общения. Так чего же вы ждете? Давайте пообщаемся!
Я создал этот инструмент в качестве быстрого хака дождливым субботним днем, но мы используем бота в производстве в нашем экземпляре Mattermost в нашем офисе в yworks, и бот оказался очень полезным для многих простых задач. Попробуйте и оставьте отзыв, если хотите! На самом деле это не очень дорого: в течение двух недель мы обслуживали около 30 пользователей, и это обошлось нам менее чем в полдоллара за службу ChatGPT!
Я также приму полезные запросы на включение, если вы обнаружите проблему или у вас есть идеи по улучшению.
И последнее, но не менее важное: ознакомьтесь с прекрасными SDK для создания диаграмм yWorks для разработчиков программного обеспечения yFiles и нашими бесплатными онлайн-редакторами графиков и диаграмм!
Это находится под лицензией MIT. Авторские права (c) принадлежат Себастьяну Мюллеру (yWorks) и Михаэлю Хэгльспергеру (yWorks), 2023 г.