NLP project that works with news (NER, context generation, news trend analytics)

Overview

СоАвтор

СоАвтор – платформа и открытый набор инструментов для редакций и журналистов-фрилансеров, который призван сделать процесс создания контента максимально комфортным и быстрым.

Инструменты для СоАвтора разрабатываются на основе открытой аналитической платформы OT. В ближайших планах полная интеграция приложения с платформой: сбор и обработка данных, запуск аналитических алгоритмов, а также сборка и запуск приложения будет осуществляться на платформе. Публичный репозиторий с инструментами платформы OT coming soon.

Сейчас мы разрабатываем следующие инструменты:

  • Отслеживание событий и трендов в режиме реального времени (работа со структурированными новостными форматами и парсинг новостных источников). Для этого мы пишем модуль для непрерывного парсинга новостных изданий и придумываем, как отслеживать информативные изменения в статьях.
  • Подбор релевантных статей к готовому материалу для автоматического формирования модуля бэкграунда (справочной информации или предыстории события). Для этого мы используем инструменты для поиска семантически похожих текстов в архиве и инструменты для генерации саммари из нескольких документов.

Разработка ведется вместе с профессиональным сообществом, чтобы сделать рабочий процесс для редакций и фрилансеров максимально удобным. Платформа "СоАвтор" имеет модульную структуру. Вы можете придумать новый инструмент, который упрощает работу с текстом, или принять участие в работе над теми, что уже в разработке. Вступайте в наше сообщество на Discord и присылайте свои #идеи того, как можно использовать “СоАвтор” при работе с контентом.

СоАвтор интерфейс


English below


Запустить приложение у себя

Установка

  1. Скачайте файлы проекта или сделайте форк и воспользуйтесь командой git clone
  2. Скачайте файлы с данными: ru_stopwords.txt и news_df.parquet
  3. Скачайте файлы моделей: rubert_tiny и rut5_base_sum
  4. Откройте терминал и перейдите в директорию проекта
  5. Используйте pip install requirements.txt, чтобы установить все нужные библиотеки

Запуск

  1. Поменяйте в файле config.yaml пути к файлам данных и моделям
  2. Откройте терминал и перейдите в директорию проекта
  3. Наберите в терминале команду streamlit run menu.py
  4. Приложение по умолчанию будет доступно по адресу http://localhost:8501 P.S.: приложение можно запустить на своём датасете, если будет соблюдён формат. Пример датасета и описание формата в директории data.

Как участвовать в разработке проекта

Текущие задачи

  1. Обновляемая лента новостей
  2. Модуль для подключения к соцсетям
  3. Анализ трендов по постам из социальных сетей
  4. Классификация evergreen новостей

Помочь решить одну из текущих проблем

  1. Проверьте есть ли открытые проблемы в Issues и выберите одну из них
  2. Если у вас есть своя идея, как законтрибьютить в этот проект, откройте в Issues новый тикет (как это сделать, описано ниже).
  3. Сделайте форк проекта, начните работать над тикетом и внесите свои изменения через pull request.

Добавить проблему (issue)

  1. Если вы нашли баг или недоработку, мы будем признательны, если вы оставите её описание в разделе Issues с тегом bug.
  2. Если у вас есть вопросы по функционалу или вы не понимаете баг это или фича, оставьте нам вопрос в разделе Issues с тегом question.
  3. Если у вас есть идея, какие возможности вы хотели бы ещё видеть в приложении, но не уверены, что можете их самостоятельно реализовать, добавьте описание идеи в раздел Issues с тегом enhancement.

Что ещё я могу делать

  1. Принять участие в обсуждении этого проекта или ваших собственных идей в дискорде нашего сообщества WellnessDataClub.
  2. Взять СоАвтор за основу для разработки собственного open source продукта. СоАвтор сейчас работает с новостями и соцсетями, вы можете начать работать с другим типом данных :)
  3. Примите участие в другом нашем open source проекте OpenMask

Launch this project locally

Installation

  1. Download project files or make fork and use git clone
  2. Download data files: ru_stopwords.txt и news_df.parquet
  3. Download models: rubert_tiny и rut5_base_sum
  4. Using the terminal, change directory to the project's directory
  5. Use pip install requirements.txt

Launch

  1. Change paths to the data and models inside config.yaml
  2. Using the terminal, change directory to the project's directory
  3. Run streamlit run menu.py
  4. The app is available with http://localhost:8501 by default P.S.: this app can be launched with your own data in the right format Dataset example, format description are in the data directory.

How to participate in this project

Current tasks

  1. Updating news feed
  2. One module to collect social network data
  3. Trend analysis based on social network posts
  4. Evergreen news classification

Help to resolve one of current issues

  1. Check if there is an open issue that you'd like to solve
  2. If you have your own idea or see a bug, add a new issue (instructions below)
  3. Make fork from this project, make changes and add them with new pull request.

Add an issue

  1. Add bugs or smth that has to be finished to Issues with bug tag.
  2. If you have questions about functionality or code ask in Issues withquestion tag.
  3. If you have some ideas about new functions, suggest it in Issues with enhancement tag.

What else can I do

  1. Take part in the discussion of this project or your own ideas with our Discord community WellnessDataClub.
  2. Use this project as a base for your own open source product. We now work with news, you csn choose another data type :)
  3. Become a part of our another project OpenMask
VD-BERT: A Unified Vision and Dialog Transformer with BERT

VD-BERT: A Unified Vision and Dialog Transformer with BERT PyTorch Code for the following paper at EMNLP2020: Title: VD-BERT: A Unified Vision and Dia

Salesforce 44 Nov 01, 2022
A curated list of efficient attention modules

awesome-fast-attention A curated list of efficient attention modules

Sepehr Sameni 891 Dec 22, 2022
2021 AI CUP Competition on Traditional Chinese Scene Text Recognition - Intermediate Contest

繁體中文場景文字辨識 程式碼說明 組別:這就是我 成員:蔣明憲 唐碩謙 黃玥菱 林冠霆 蕭靖騰 目錄 環境套件 安裝方式 資料夾布局 前處理-製作偵測訓練註解檔 前處理-製作分類訓練樣本 part.py : 從 json 裁切出分類訓練樣本 Class.py : 將切出來的樣本按照文字分類到各資料夾

HuanyueTW 3 Jan 14, 2022
Natural Language Processing with transformers

we want to create a repo to illustrate usage of transformers in chinese

Datawhale 763 Dec 27, 2022
The source code of HeCo

HeCo This repo is for source code of KDD 2021 paper "Self-supervised Heterogeneous Graph Neural Network with Co-contrastive Learning". Paper Link: htt

Nian Liu 106 Dec 27, 2022
Sequence-to-Sequence Framework in PyTorch

nmtpytorch allows training of various end-to-end neural architectures including but not limited to neural machine translation, image captioning and au

LIUM 395 Nov 21, 2022
Labelling platform for text using distant supervision

With DataQA, you can label unstructured text documents using rule-based distant supervision.

245 Aug 05, 2022
🎐 a python library for doing approximate and phonetic matching of strings.

jellyfish Jellyfish is a python library for doing approximate and phonetic matching of strings. Written by James Turk James Turk 1.8k Dec 21, 2022

Spacy-ginza-ner-webapi - Named Entity Recognition API with spaCy and GiNZA

Named Entity Recognition API with spaCy and GiNZA I wrote a blog post about this

Yuki Okuda 3 Feb 27, 2022
Code for paper: An Effective, Robust and Fairness-awareHate Speech Detection Framework

BiQQLSTM_HS Code and data for paper: Title: An Effective, Robust and Fairness-awareHate Speech Detection Framework. Authors: Guanyi Mou and Kyumin Lee

Guanyi Mou 2 Dec 27, 2022
Subtitle Workshop (subshop): tools to download and synchronize subtitles

SUBSHOP Tools to download, remove ads, and synchronize subtitles. SUBSHOP Purpose Limitations Required Web Credentials Installation, Configuration, an

Joe D 4 Feb 13, 2022
An assignment on creating a minimalist neural network toolkit for CS11-747

minnn by Graham Neubig, Zhisong Zhang, and Divyansh Kaushik This is an exercise in developing a minimalist neural network toolkit for NLP, part of Car

Graham Neubig 63 Dec 29, 2022
Lattice methods in TensorFlow

TensorFlow Lattice TensorFlow Lattice is a library that implements constrained and interpretable lattice based models. It is an implementation of Mono

504 Dec 20, 2022
NAACL 2022: MCSE: Multimodal Contrastive Learning of Sentence Embeddings

MCSE: Multimodal Contrastive Learning of Sentence Embeddings This repository contains code and pre-trained models for our NAACL-2022 paper MCSE: Multi

Saarland University Spoken Language Systems Group 39 Nov 15, 2022
BMInf (Big Model Inference) is a low-resource inference package for large-scale pretrained language models (PLMs).

BMInf (Big Model Inference) is a low-resource inference package for large-scale pretrained language models (PLMs).

OpenBMB 377 Jan 02, 2023
MMDA - multimodal document analysis

MMDA - multimodal document analysis

AI2 75 Jan 04, 2023
Uncomplete archive of files from the European Nopsled Team

European Nopsled CTF Archive This is an archive of collected material from various Capture the Flag competitions that the European Nopsled team played

European Nopsled 4 Nov 24, 2021
A python gui program to generate reddit text to speech videos from the id of any post.

Reddit text to speech generator A python gui program to generate reddit text to speech videos from the id of any post. Current functionality Generate

Aadvik 17 Dec 19, 2022