Qwen2.5-NLI-7B

Авторы: Потанин М.В., Понимаш З. А.

Описание модели

Qwen2.5-NLI-7B — специализированная модель для преобразования команд на естественном языке в структурированные описания задач с использованием формата MASL (Multi-agent system language). Модель основана на Qwen/Qwen2.5-7B-Instruct и дообучена на синтетическом датасете NLI Task Specification Dataset (MASL).

Возможности

  • Парсинг текстовых команд в семантические структуры
  • Определение типов данных (файлы, структурированные данные, их подтипы)
  • Классификация семантических категорий (raw, speak, question, answer, summary, reasoning, report)
  • Определение областей знаний (general, physics, biology, math, medicine, legal, psychology, economy, ML/AI, IT)
  • Построение спецификаций входных и выходных коннекторов для мультиагентных систем

Архитектура

  • Базовая модель: Qwen/Qwen2.5-7B-Instruct
  • Параметры: 7 миллиардов
  • Тип обучения: Instruction tuning на специализированном датасете
  • Формат вывода: JSON с определённой схемой

Датасет

Модель обучена на датасете из 9 999 примеров пар "команда → JSON структура":

Использование

Быстрый старт

Полный код для работы с моделью доступен в Google Colab.

import torch
from transformers import AutoModelForCausalLM, AutoTokenizer

# Токенизатор от базовой модели
tokenizer = AutoTokenizer.from_pretrained("Qwen/Qwen2.5-7B", trust_remote_code=True)

# Веса модели
model_name_or_path = "Ponimash/Qwen2.5-nli-7b"
model = AutoModelForCausalLM.from_pretrained(
    model_name_or_path,
    trust_remote_code=True,
    torch_dtype=torch.bfloat16,
    device_map="auto"
)

Схема выходных данных

Структура JSON (развернуть)

Коннектор (Connector)

{
  "input_connector": {
    "dataType": {
      "complexType": "file | structured",
      "subtype": "txt | csv | json | pdf | docx | pptx | jpg | png | wav | mp3 | flac | ogg | matrix | vector | tensor | signal | text | image | sound"
    },
    "semanticType": {
      "semanticCategory": "raw | specter | cepstrum | speak | question"
    },
    "knowledgeDomain": "general | physics | biology | math | medicine | legal | psychology | economy | ML/AI | IT"
  },
  "output_connector": {
    "dataType": {
      "complexType": "file | structured",
      "subtype": "..."
    },
    "semanticType": {
      "semanticCategory": "specter | cepstrum | speak | answer | summary | reasoning | report"
    },
    "knowledgeDomain": "..."
  },
  "can_llm_answer": true | false  // опционально
}

Типы данных

complexType:

  • file — файловое представление
  • structured — структурированное представление в памяти

subtype для файлов:

  • Текстовые: txt, csv, json
  • Документы: pdf, docx, pptx
  • Изображения: jpg, png
  • Аудио: wav, mp3, flac, ogg

subtype для structured:

  • Математические: matrix, vector, tensor
  • Сигналы: signal
  • Пользовательские: text, image, sound

Семантические категории

Входные:

  • raw — необработанные данные
  • specter — спектральное представление
  • cepstrum — кепстральные коэффициенты
  • speak — устная речь
  • question — вопрос/запрос

Выходные:

  • specter, cepstrum, speak — обработанные данные
  • answer — ответ на вопрос
  • summary — краткое изложение
  • reasoning — логический анализ
  • report — структурированный отчёт

Области знаний

  • general — общие знания
  • physics — физика
  • biology — биология
  • math — математика
  • medicine — медицина
  • legal — право
  • psychology — психология
  • economy — экономика
  • ML/AI — машинное обучение и ИИ
  • IT — информационные технологии

Примеры использования

Пример 1: Транскрипция аудио

Команда:

"Возьми то сообщение что я тебе продиктовал и переведи в текст"

Вывод:

{
  "input_connector": {
    "dataType": {
      "complexType": "structured",
      "subtype": "sound"
    },
    "semanticType": {
      "semanticCategory": "speak"
    },
    "knowledgeDomain": "general"
  },
  "output_connector": {
    "dataType": {
      "complexType": "file",
      "subtype": "txt"
    },
    "semanticType": {
      "semanticCategory": "speak"
    },
    "knowledgeDomain": "general"
  }
}

Пример 2: Голосовой ответ

Команда:

"Объясни почему трава зелёная, сделай это голосом"

Вывод:

{
  "input_connector": {
    "dataType": {
      "complexType": "structured",
      "subtype": "text"
    },
    "semanticType": {
      "semanticCategory": "question"
    },
    "knowledgeDomain": "biology"
  },
  "output_connector": {
    "dataType": {
      "complexType": "structured",
      "subtype": "sound"
    },
    "semanticType": {
      "semanticCategory": "answer"
    },
    "knowledgeDomain": "biology"
  }
}

Пример 3: Создание презентации

Команда:

"Сделай презентацию с решением задачи о квантовой запутанности"

Вывод:

{
  "input_connector": {
    "dataType": {
      "complexType": "structured",
      "subtype": "text"
    },
    "semanticType": {
      "semanticCategory": "question"
    },
    "knowledgeDomain": "physics"
  },
  "output_connector": {
    "dataType": {
      "complexType": "file",
      "subtype": "pptx"
    },
    "semanticType": {
      "semanticCategory": "reasoning"
    },
    "knowledgeDomain": "physics"
  }
}

Применение

Модель предназначена для использования в:

  • Мультиагентных системах — построение цепочек инструментов
  • Агентных фреймворках — маршрутизация задач между инструментами
  • Планировщиках задач — преобразование NL-команд в исполняемые спецификации
  • Системах автоматизации — интеллектуальная обработка пользовательских запросов

Ограничения и рекомендации

Ограничения

  • Модель работает только на русском языке
  • Качество может снижаться на узкоспециализированных доменах, не представленных в обучающих данных
  • Модель не выполняет сами задачи, а только создаёт их спецификации

Рекомендации

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

Цитирование

Если вы используете эту модель в своей работе, пожалуйста, укажите:

@misc{qwen25-nli-7b,
  authors = {Потанин М.В., Понимаш З. А.},
  title = {Qwen2.5-NLI-7B: Natural Language Interface for Task Specification},
  year = {2024},
  publisher = {HuggingFace},
  howpublished = {\url{https://huggingface.co/Ponimash/Qwen2.5-nli-7b}}
}

Лицензия

Модель распространяется под лицензией Apache 2.0. Базовая модель Qwen/Qwen2.5-7B-Instruct также использует Apache 2.0.

Downloads last month
28
Safetensors
Model size
8B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for Ponimash/Qwen2.5-nli-7b

Base model

Qwen/Qwen2.5-7B
Finetuned
(2688)
this model