/ Модель

Характеристики

Контекст
2 048 токенов
Параметры
1 млрд
Лицензия
Apache 2.0
Архитектура
llama · dense
Опубликована
19 янв 2024

slim-ner

Генерация текстаТекст → текст9 профессий

SLIM-NER — компактная модель LLMWare для извлечения именованных сущностей из текста и выдачи их в виде структурированного словаря.

166скачиваний за 30 дней17лайковвеса обновлены16 фев 2024

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Тесты пользователейпока нет

Никто ещё не опубликовал тест этой модели. Соберите бенчмарк из своих задач — результат появится здесь.

  1. Добавьте модель в бенчмарк

    Вместе с другими моделями категории «Текст» — сравнение идёт внутри одной категории.

  2. Опишите свои задачи

    Напишите запросы, при необходимости приложите файлы и эталонные ответы.

  3. Запустите и опубликуйте

    Модели ответят на каждую задачу, судья оценит ответы. Опубликованный результат появится на этой странице.

Публичные оценки

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

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

SLIM-NER — специализированная языковая модель из серии SLIM компании LLMWare. Это плотная авторегрессионная модель семейства Llama с 1 млрд параметров, дообученная для извлечения именованных сущностей через вызовы функций. На вход подаются текст и список требуемых категорий, а на выходе модель формирует структурированный словарь, например со списками людей, организаций и мест.

Сценарии применения

  • извлечение имён людей из текста
  • поиск организаций в документах
  • извлечение географических названий
  • подготовка структурированных данных для автоматизированных конвейеров обработки текста

Ограничения

Контекст модели ограничен 2048 токенами. Точность извлечения и возможность автоматически преобразовать ответ в словарь зависят от текста, заданных категорий и корректности сгенерированного формата.

Для каких профессий подходит9

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Также подходит для

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

SLIM-NER

slim-ner is part of the SLIM ("Structured Language Instruction Model") model series, consisting of 1b parameter small, specialized decoder-based models, fine-tuned for function-calling.

slim-ner has been fine-tuned for named entity extraction function calls, generating output consisting of a python dictionary corresponding to specified keys, e.g.:

    {"people": ["..."], "organization":["..."], "location": ["..."]}

SLIM models are designed to generate structured outputs that can be used programmatically as part of a multi-step, multi-model LLM-based automation workflow.

SLIM models can be used 'out of the box' for rapid prototyping in most general purpose use cases, and are designed to serve as a solid base that can be easily fine-tuned and adapted for specialized production use cases.

Each slim model has a 'quantized tool' version, e.g., 'slim-ner-tool'.

Prompt format:

function = "classify"
params = "people, organization, location"
prompt = "<human> " + {text} + "\n" +
                      "<{function}> " + {params} + "</{function}>" + "\n<bot>:"

model = AutoModelForCausalLM.from_pretrained("llmware/slim-ner")
tokenizer = AutoTokenizer.from_pretrained("llmware/slim-ner")

function = "classify"
params = "people, organization, location"

text = "Yesterday, in Redmond, Satya Nadella announced that Microsoft would be launching a new AI strategy."  

prompt = "<human>: " + text + "\n" + f"<{function}> {params} </{function}>\n<bot>:"

inputs = tokenizer(prompt, return_tensors="pt")
start_of_input = len(inputs.input_ids[0])

outputs = model.generate(
    inputs.input_ids.to('cpu'),
    eos_token_id=tokenizer.eos_token_id,
    pad_token_id=tokenizer.eos_token_id,
    do_sample=True,
    temperature=0.3,
    max_new_tokens=100
)

output_only = tokenizer.decode(outputs[0][start_of_input:], skip_special_tokens=True)

print("output only: ", output_only)  

# here's the fun part
try:
    output_only = ast.literal_eval(llm_string_output)
    print("success - converted to python dictionary automatically")
except:
    print("fail - could not convert to python dictionary automatically - ", llm_string_output)
from llmware.models import ModelCatalog
slim_model = ModelCatalog().load_model("llmware/slim-ner")
response = slim_model.function_call(text,params=["people","organization","location"], function="classify")

print("llmware - llm_response: ", response)

Model Card Contact

Darren Oberst & llmware team

Join us on Discord

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм

Можно запустить

Подбираем GPU…

Класс архитектуры
LlamaForCausalLM
Ревизия весов
47fd96f

0 моделей