spaCy — это библиотека для расширенной обработки естественного языка в Python и Cython. Он создан на основе новейших исследований и с самого начала разрабатывался для использования в реальных продуктах.
SpaCy поставляется с предварительно обученными конвейерами и в настоящее время поддерживает токенизацию и обучение для более чем 70 языков . Он включает в себя новейшие модели скорости и нейронных сетей для маркировки, анализа, распознавания именованных объектов , классификации текста и многого другого, многозадачное обучение с предварительно обученными преобразователями, такими как BERT, а также готовую к использованию систему обучения и простую модель. упаковка, развертывание и управление рабочими процессами. spaCy — коммерческое программное обеспечение с открытым исходным кодом, выпущенное по лицензии MIT.
? Версия 3.7 уже вышла! Ознакомьтесь с примечаниями к выпуску здесь.
Документация | |
---|---|
️ спаСи 101 | Впервые в SpaCy? Вот все, что вам нужно знать! |
Руководства по использованию | Как использовать SpaCy и его возможности. |
Новое в версии 3.0 | Новые функции, обратная несовместимость и руководство по миграции. |
? Шаблоны проектов | Комплексные рабочие процессы, которые можно клонировать, изменять и запускать. |
? Справочник по API | Подробная ссылка на API SpaCy. |
⏩ Обработка графического процессора | Используйте SpaCy с CUDA-совместимой обработкой графического процессора. |
? Модели | Загрузите обученные конвейеры для spaCy. |
? Большие языковые модели | Интегрируйте LLM в конвейеры SpaCy. |
? Вселенная | Плагины, расширения, демоверсии и книги из экосистемы spaCy. |
SpaCy VS Расширение кода | Дополнительные инструменты и функции для работы с файлами конфигурации spaCy. |
?? Онлайн-курс | Изучите spaCy на этом бесплатном интерактивном онлайн-курсе. |
? Блог | Читайте о текущих разработках SpaCy и Prodigy, выпусках, докладах и многом другом от Explosion. |
Видео | Наш канал на YouTube с видеоуроками, докладами и многим другим. |
? Журнал изменений | Изменения и история версий. |
? Способствовать | Как внести свой вклад в проект SpaCy и базу кода. |
? Раскачиваться | Поддержите нас и нашу работу уникальными, специально разработанными сувенирами! |
Индивидуальные консультации по НЛП, внедрение и стратегические рекомендации от основной команды разработчиков spaCy. Оптимизированный, готовый к использованию, предсказуемый и удобный в обслуживании. Отправьте нам электронное письмо или пройдите 5-минутную анкету, и мы будем на связи! Узнать больше → |
Проект spaCy поддерживается командой spaCy. Пожалуйста, поймите, что мы не сможем предоставить индивидуальную поддержку по электронной почте. Мы также считаем, что помощь гораздо более ценна, если она предоставляется публично, чтобы ею могло воспользоваться больше людей.
Тип | Платформы |
---|---|
Отчеты об ошибках | Трекер проблем GitHub |
? Запросы на функции и идеи | Обсуждения на GitHub |
? Вопросы по использованию | Обсуждения на GitHub · Stack Overflow |
? Общая дискуссия | Обсуждения на GitHub |
Более подробную информацию можно найти в фактах, цифрах и контрольных показателях.
Подробные инструкции по установке смотрите в документации.
conda-forge
) Используя pip, выпуски spaCy доступны в виде исходных пакетов и бинарных дисков. Прежде чем устанавливать spaCy и его зависимости, убедитесь, что ваш pip
, setuptools
и wheel
обновлены.
pip install -U pip setuptools wheel
pip install spacy
Чтобы установить дополнительные таблицы данных для лемматизации и нормализации, вы можете запустить pip install spacy[lookups]
или отдельно установить spacy-lookups-data
. Пакет поиска необходим для создания пустых моделей с данными лемматизации, а также для лемматизации на языках, которые еще не имеют предварительно обученных моделей и не поддерживаются сторонними библиотеками.
При использовании pip обычно рекомендуется устанавливать пакеты в виртуальной среде, чтобы избежать изменения состояния системы:
python -m venv .env
source .env/bin/activate
pip install -U pip setuptools wheel
pip install spacy
Вы также можете установить spaCy из conda
через канал conda-forge
. Исходные материалы, включая рецепт сборки и конфигурацию, можно найти в этом репозитории.
conda install -c conda-forge spacy
Некоторые обновления spaCy могут потребовать загрузки новых статистических моделей. Если вы используете spaCy версии 2.0 или выше, вы можете использовать команду validate
, чтобы проверить, совместимы ли установленные вами модели, а если нет, распечатать подробную информацию о том, как их обновить:
pip install -U spacy
python -m spacy validate
Если вы обучали свои собственные модели, имейте в виду, что входные данные для обучения и выполнения должны совпадать. После обновления spaCy мы рекомендуем переобучить ваши модели с помощью новой версии.
Подробную информацию об обновлении SpaCy 2.x до SpaCy 3.x см. в руководстве по миграции.
Обученные конвейеры для spaCy можно установить как пакеты Python . Это означает, что они являются компонентом вашего приложения, как и любой другой модуль. Модели можно установить с помощью команды download
spaCy или вручную, указав в pip путь или URL-адрес.
Документация | |
---|---|
Доступные трубопроводы | Подробные описания трубопроводов, показатели точности и тесты. |
Документация моделей | Подробная инструкция по использованию и установке. |
Обучение | Как обучить собственные конвейеры на ваших данных. |
# Download best-matching version of specific model for your spaCy installation
python -m spacy download en_core_web_sm
# pip install .tar.gz archive or .whl from path or URL
pip install /Users/you/en_core_web_sm-3.0.0.tar.gz
pip install /Users/you/en_core_web_sm-3.0.0-py3-none-any.whl
pip install https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-3.0.0/en_core_web_sm-3.0.0.tar.gz
Чтобы загрузить модель, используйте spacy.load()
с именем модели или путем к каталогу данных модели.
import spacy
nlp = spacy . load ( "en_core_web_sm" )
doc = nlp ( "This is a sentence." )
Вы также можете import
модель напрямую, используя ее полное имя, а затем вызвать ее метод load()
без аргументов.
import spacy
import en_core_web_sm
nlp = en_core_web_sm . load ()
doc = nlp ( "This is a sentence." )
Для получения дополнительной информации и примеров ознакомьтесь с документацией модели.
Другой способ установить spaCy — клонировать его репозиторий GitHub и собрать его из исходного кода. Это обычный способ внесения изменений в базу кода. Вам необходимо убедиться, что у вас есть среда разработки, состоящая из дистрибутива Python, включая файлы заголовков, компилятор, pip, virtualenv и git. Компиляторная часть самая сложная. Как это сделать, зависит от вашей системы.
Платформа | |
---|---|
Убунту | Установите зависимости системного уровня через apt-get : sudo apt-get install build-essential python-dev git . |
Мак | Установите последнюю версию XCode, включая так называемые «Инструменты командной строки». macOS и OS X поставляются с предустановленными Python и git. |
Окна | Установите версию Visual C++ Build Tools или Visual Studio Express, соответствующую версии, которая использовалась для компиляции вашего интерпретатора Python. |
Дополнительные сведения и инструкции см. в документации по компиляции spaCy из исходного кода и в виджете быстрого запуска, чтобы получить подходящие команды для вашей платформы и версии Python.
git clone https://github.com/explosion/spaCy
cd spaCy
python -m venv .env
source .env/bin/activate
# make sure you are using the latest pip
python -m pip install -U pip setuptools wheel
pip install -r requirements.txt
pip install --no-build-isolation --editable .
Для установки с дополнениями:
pip install --no-build-isolation --editable .[lookups,cuda102]
spaCy поставляется с обширным набором тестов. Чтобы запустить тесты, вам обычно нужно клонировать репозиторий и собрать spaCy из исходного кода. При этом также будут установлены необходимые зависимости разработки и тестовые утилиты, определенные в файле requirements.txt
.
Альтернативно вы можете запустить pytest
для тестов из установленного пакета spacy
. Не забудьте также установить тестовые утилиты через requirements.txt
spaCy.txt:
pip install -r requirements.txt
python -m pytest --pyargs spacy