1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/mirrors-rasa

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Rasa Open Source

Присоединяйтесь к чату на форуме сообщества Rasa PyPI версия Поддерживаемые версии Python Статус непрерывной интеграции Состояние ворот качества Документация Документация сборки FOSSA Status PRs Welcome

💡 Мы переносим проблемы в Jira 💡

С января 2023 года проблемы для Rasa Open Source находятся на этой доске Jira. Вы можете просматривать проблемы, не входя в систему; если вы хотите создавать проблемы, вам нужно создать учетную запись Jira.

Rasa — это открытый фреймворк машинного обучения для автоматизации текстовых и голосовых диалогов. С помощью Rasa вы можете создавать контекстных помощников:

  • в Facebook Messenger;
  • Slack;
  • Google Hangouts;
  • Webex Teams;
  • Microsoft Bot Framework;
  • Rocket.Chat;
  • Mattermost;
  • Telegram;
  • Twilio;
  • собственных каналах общения;

или голосовых помощников:

  • Alexa Skills;
  • Google Home Actions.

Rasa помогает создавать контекстные помощники, способные вести многоуровневые диалоги с большим количеством обменов репликами. Чтобы человек мог вести осмысленный диалог с контекстным помощником, помощник должен уметь использовать контекст для развития тем, которые обсуждались ранее — Rasa позволяет создавать таких помощников в масштабируемом виде.

Более подробную информацию можно найти в этом блоге.


Где получить помощь

В документации Rasa есть обширная документация. Обязательно выберите правильную версию, чтобы вы смотрели документацию для установленной версии.

Для быстрых ответов на вопросы используйте форум сообщества Rasa.

Содержание README:

Как внести свой вклад

Мы будем рады получить и объединить ваши вклады в этот репозиторий! Как внести свой вклад через запрос на включение изменений (pull request)

  1. Создайте задачу, описывающую ошибку или улучшение, над которым вы хотите работать, или выберите существующую задачу в Jira (https://rasa-open-source.atlassian.net/jira/software/c/projects/OSS/boards/1).

  2. Следуйте нашим рекомендациям по запросу на включение изменений: напишите код, протестируйте его, создайте документацию и следуйте нашему Кодексу стиля (#code-style).

  3. Создайте запрос на включение ваших изменений.

Более подробные инструкции о том, как внести код, можно найти в руководстве для участников (CONTRIBUTING.md).

Дополнительную информацию о том, как участвовать в проекте Rasa (множеством разных способов!), можно найти на нашем веб-сайте (http://rasa.community).

Ваш запрос на включение будет рассмотрен сопровождающим, который свяжется с вами по поводу любых необходимых изменений или вопросов. Вас также попросят подписать Лицензионное соглашение участника (Contributor License Agreement) (https://cla-assistant.io/RasaHQ/rasa).

Внутренние разработки

Установка Poetry

Rasa использует Poetry для упаковки и управления зависимостями. Если вы хотите собрать его из исходного кода, вам необходимо сначала установить Poetry. Пожалуйста, следуйте официальному руководству (https://python-poetry.org/docs/#installation), чтобы увидеть все возможные варианты.

Чтобы обновить существующую версию поэзии до версии, используемой в настоящее время в rasa, выполните:

    poetry self update <version>

Управление средами

Официальное руководство по Poetry (https://python-poetry.org/docs/managing-environments/) предлагает использовать pyenv (https://github.com/pyenv/pyenv) или любой другой аналогичный инструмент для простого переключения между версиями Python. Вот как это можно сделать:

pyenv install 3.10.10
pyenv local 3.10.10  # Активировать Python 3.10.10 для текущего проекта

Примечание: если у вас возникли проблемы с установкой определённой версии Python на вашей системе, возможно, стоит попробовать другие поддерживаемые версии.

По умолчанию Poetry будет пытаться использовать активированную в данный момент версию Python для создания виртуальной среды для текущего проекта автоматически. Вы также можете создать и активировать виртуальную среду вручную — в этом случае Poetry должна подхватить её и использовать для установки зависимостей. Например:

python -m venv .venv
source .venv/bin/activate

Вы можете убедиться, что среда подхвачена, выполнив:

poetry env info

Сборка из исходного кода

Для установки зависимостей и самого rasa в редактируемом режиме выполните:

make install

Примечание для пользователей macOS: под macOS Big Sur мы наблюдали некоторые проблемы с компилятором для зависимостей. Использование export SYSTEM_VERSION_COMPAT=1 перед установкой помогло.

Установка дополнительных зависимостей

Чтобы установить дополнительные зависимости rasa, необходимо выполнить:

make install-full

Примечание для пользователей macOS: команда make install-full может привести к сбою при установке tokenizers (проблема подробно описана здесь (https://github.com/huggingface/tokenizers/issues/1050)).

Чтобы решить эту проблему, необходимо выполнить следующие шаги для установки компилятора Rust:

brew install rustup
rustup-init

После инициализации компилятора Rust следует перезапустить консоль и проверить его установку:

rustc --version

Если переменная PATH не была настроена автоматически, выполните:

export PATH="$HOME/.cargo/bin:$PATH"

Запуск и изменение документации

Прежде всего, установите все необходимые зависимости:

make install install-docs

После завершения установки вы можете запустить и просмотреть документацию локально, используя:

make livedocs

Он должен открыть новую вкладку с локальной версией документов в вашем браузере; если нет, посетите http://localhost:3000 в своём браузере. Теперь вы можете изменить документы локально, и веб-страница автоматически перезагрузится и применит ваши изменения.

Выполнение тестов

Чтобы запустить тесты, убедитесь, что у вас установлены требования для разработки:

make prepare-tests-ubuntu # Только в системах на основе Ubuntu и Debian
make prepare-tests-macos  # Только на macOS

Затем запустите тесты:

make test

Они также могут быть... Процесс выпуска новой версии ПО

  1. После того как версия была отправлена и пакет появляется на pypi, можно разрешить зависимости в репозитории rasa (см. ниже).

  2. Если это незначительный или основной выпуск: убедитесь, что все исправления из текущих поддерживаемых минорных версий были объединены из соответствующих ветвей выпуска (например, 3.3.x) обратно в основную.

  3. В случае незначительного выпуска создайте новую ветку, соответствующую новому выпуску, например:

     git checkout -b 1.2.x
     git push origin 1.2.x
  4. Переключитесь на ветку, с которой вы хотите выпустить релиз (main для основного, ветвь <major>.<minor>.x для миноров и патчей):

    • Обновите запись rasa-sdk в pyproject.toml новой версией релиза и запустите poetry update. Это создаст новый файл poetry.lock со всеми разрешёнными зависимостями.
    • Зафиксируйте изменения с помощью команды git commit -am "bump rasa-sdk dependency", но не отправляйте их. Они будут автоматически подобраны следующим шагом.
  5. Если это основной выпуск, обновите список активно поддерживаемых версий в README и в документации.

  6. Запустите make release.

  7. Создайте PR против ветки выпуска (например, 1.2.x).

  8. Как только ваш PR будет объединён, пометьте новый релиз (это ВСЕГДА должно происходить в ветке выпуска), например, используя:

    git checkout 1.2.x
    git pull origin 1.2.x
    git tag 1.2.0 -m "next release"
    git push origin 1.2.0 --tags

    GitHub создаст этот тег и опубликует артефакты сборки.

  9. После завершения всех шагов и если всё пройдёт хорошо, мы должны увидеть сообщение, автоматически опубликованное в Slack компании (product канал), подобное этому одному.

  10. Если сообщение не появляется в канале, вы можете выполнить следующие проверки:

  • Проверьте рабочие процессы в Github Actions и убедитесь, что объединённый PR текущего релиза успешно завершён. Чтобы легко найти свой PR, вы можете использовать фильтры event: push и branch: <номер версии> (пример на выпуске 2.4 вы можете увидеть здесь).
  • Если рабочий процесс не завершён, попробуйте повторно запустить рабочий процесс, если это решит проблему.
  • Если проблема сохраняется, проверьте также файлы журналов и попытайтесь найти причину проблемы.
  • Если вы всё ещё не можете устранить ошибку, обратитесь в инфраструктурную команду, предоставив любую полезную информацию из вашего расследования.
  1. После правильного публикации сообщения в канале product, проверьте также в канале product-engineering-alerts, есть ли какие-либо оповещения, связанные с выпуском Rasa Open Source, подобные этому одному.

Выпуск патча

Выпускать патчи проще, поскольку они предназначены только для исправления ошибок.

Единственное, что вам нужно сделать, чтобы выпустить патч:

  1. Сообщите команде инженеров в Slack, что вы планируете выпустить патч, на случай, если у кого-то есть важное исправление, которое нужно добавить.

  2. Убедитесь, что исправление(я) находится в ветви выпуска, которую вы будете использовать (например, если вы выпускаете патч 2.0.4, ваши исправления должны быть в ветви выпуска 2.0.x). Все патчи должны исходить из ветви .x!

  3. Как только вы будете готовы выпустить открытый патч Rasa, перейдите в эту ветку, запустите make release и следуйте шагам + получите объединённый PR.

  4. Как только PR будет получен, снова извлеките ветку .x и отправьте тег!

Дополнительные задачи по выпуску

Примечание: Это требуется только в том случае, если выпущенная версия является самой высокой доступной версией. Например, выполните следующие шаги, когда версия > версия на main.

Чтобы проверить совместимость между новой выпущенной версией Rasa и последней версией Rasa X/Enterprise, мы выполняем следующие действия:

  1. После нового выпуска Rasa в автоматическом режиме создаётся запрос на вытягивание в... Раса Икс Демо (Rasa-X-Demo)

  2. После объединения вышеуказанного PR следуйте инструкциям здесь, чтобы выпустить версию.

  3. Обновите новую версию в файле среды Rasa X/Enterprise env file.

Проект Раса Икс Демо использует новую обновлённую версию Раса для обучения и тестирования модели, которая, в свою очередь, используется нашим CI для запуска тестов в репозитории Rasa X/Enterprise, таким образом проверяя совместимость между Раса и Rasa X/Enterprise.

Активно поддерживаемые версии

Пожалуйста, обратитесь к странице Политика выпуска и поддержки продуктов Раса.

Лицензия

Лицензия Apache, версия 2.0. Авторское право 2022 Rasa Technologies GmbH. Копия лицензии.

Список лицензий зависимостей проекта можно найти внизу страницы Обзор библиотек.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Фреймворк машинного обучения с открытым исходным кодом для автоматизации текстовых и голосовых диалогов: понимание естественного языка, управление диалогом, подключение к Slack, Facebook и другим платформам — создание чат-ботов и голосовых помощников. Развернуть Свернуть
Python и 6 других языков
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/mirrors-rasa.git
git@api.gitlife.ru:oschina-mirror/mirrors-rasa.git
oschina-mirror
mirrors-rasa
mirrors-rasa
main