/ Модель

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

Контекст
1 048 576 токенов
Параметры
11,4 млрд
Размер весов
18,8 ГБ
Архитектура
chatglm · dense
Библиотека
transformers
Опубликована
12 авг 2024

LongWriter-glm4-9b

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

Диалоговая модель на основе GLM-4-9B для генерации длинных текстов объёмом более 10 000 слов.

507скачиваний за 30 дней134лайкавеса обновлены2 окт 2024

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

LongWriter-glm4-9b — языковая модель для диалоговой генерации текста, разработанная на основе GLM-4-9B. Она предназначена для создания очень длинных ответов: модель способна генерировать более 10 000 слов за один запрос. В качестве примера приводится написание подробного путеводителя; также модель можно развернуть с помощью Transformers или vLLM.

Модель имеет плотную архитектуру ChatGLMForConditionalGeneration и 11,4 млрд параметров. В метаданных указан контекст до 1 048 576 токенов; карточка демонстрирует генерацию с лимитом до 32 768 новых токенов. В тегах карточки указаны английский и китайский языки. Модель основана на GLM-4-9B и обучена на наборе LongWriter-6k. Лицензия — glm-4-9b License.

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

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

Ограничения

Карточка не приводит оценок качества или подробных тестов; при развертывании требуются ресурсы, соответствующие крупной модели с длинным контекстом.

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

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

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

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

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

Открыть на Hugging Face

LongWriter-glm4-9b

LongWriter-glm4-9b is trained based on glm-4-9b, and is capable of generating 10,000+ words at once.

Environment: Same environment requirement as glm-4-9b-chat (transformers>=4.43.0).

A simple demo for deployment of the model:

from transformers import AutoTokenizer, AutoModelForCausalLM
import torch
tokenizer = AutoTokenizer.from_pretrained("THUDM/LongWriter-glm4-9b", trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained("THUDM/LongWriter-glm4-9b", torch_dtype=torch.bfloat16, trust_remote_code=True, device_map="auto")
model = model.eval()
query = "Write a 10000-word China travel guide"
response, history = model.chat(tokenizer, query, history=[], max_new_tokens=32768, temperature=0.5)
print(response)

You can also deploy the model with vllm, which allows 10,000+ words generation within a minute. Here is an example code:

from vllm import LLM, SamplingParams
model = LLM(
    model= "THUDM/LongWriter-glm4-9b",
    dtype="auto",
    trust_remote_code=True,
    tensor_parallel_size=1,
    max_model_len=32768,
    gpu_memory_utilization=1,
)
tokenizer = model.get_tokenizer()
stop_token_ids = [tokenizer.eos_token_id, tokenizer.get_command("<|user|>"), tokenizer.get_command("<|observation|>")]
generation_params = SamplingParams(
    temperature=0.5,
    top_p=0.8,
    top_k=50,
    max_tokens=32768,
    repetition_penalty=1,
    stop_token_ids=stop_token_ids
)
query = "Write a 10000-word China travel guide"
input_ids = tokenizer.build_chat_input(query, history=[], role='user').input_ids[0].tolist()
outputs = model.generate(
    sampling_params=generation_params,
    prompt_token_ids=[input_ids],
)
output = outputs[0]
print(output.outputs[0].text)

License: glm-4-9b License

Citation

If you find our work useful, please consider citing LongWriter:

@article{bai2024longwriter,
  title={LongWriter: Unleashing 10,000+ Word Generation from Long Context LLMs}, 
  author={Yushi Bai and Jiajie Zhang and Xin Lv and Linzhi Zheng and Siqi Zhu and Lei Hou and Yuxiao Dong and Jie Tang and Juanzi Li},
  journal={arXiv preprint arXiv:2408.07055},
  year={2024}
}

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

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

GPU в ailist

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

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

Подбираем GPU…

Класс архитектуры
ChatGLMForConditionalGeneration
Ревизия весов
2e7f691

0 моделей