/ Модель

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

Контекст
4 096 токенов
Параметры
6,6 млрд
Размер весов
13,6 ГБ
Лицензия
Apache 2.0
Архитектура
llama · dense
Базовая модель
ChatTime-1-7B-Base
Опубликована
8 июл 2024

ChatTime-1-7B-Chat

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

Дообученная мультимодальная модель ChatTime для прогнозирования временных рядов и ответов на вопросы о них с использованием текстового контекста.

916скачиваний за 30 дней5лайковвеса обновлены17 дек 2024

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ChatTime-1-7B-Chat — мультимодальная модель для работы с временными рядами и текстом, разработанная авторами ChatTime. Она построена на архитектуре LlamaForCausalLM и получена дообучением ChatTime-1-7B-Base на наборе ChengsenWang/ChatTime-1-Finetune-100K. Модель содержит 6,6 млрд параметров, принимает контекст длиной до 4096 токенов и распространяется в формате safetensors.

Модель предназначена для прогнозирования временных рядов, в том числе без примеров для конкретного ряда, прогнозирования с текстовым контекстом и ответов на вопросы о временных рядах. README указывает на двунаправленную работу с текстом и временными рядами, но не приводит подробностей кодирования временных рядов. Метаданные указывают Apache-2.0; заявлены возможности модели для исследований и практического применения, однако README отсылает за деталями обучения и оценок к статье.

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

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

Ограничения

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

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

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

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

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

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

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

Открыть на Hugging Face

ChatTime: A Multimodal Time Series Foundation Model

✨ Introduction

In this paper, we innovatively model time series as a foreign language and construct ChatTime, a unified framework for time series and text processing. As an out-of-the-box multimodal time series foundation model, ChatTime provides zero-shot forecasting capability and supports bimodal input/output for both time series and text. We design a series of experiments to verify the superior performance of ChatTime across multiple tasks and scenarios, and create four multimodal datasets to address data gaps. The experimental results demonstrate the potential and utility of ChatTime.

As depicted in Figure 1(c), during the instruction fine-tuning stage, we fine-tune ChengsenWang/ChatTime-1-7B-Base on ChengsenWang/ChatTime-1-Finetune-100K, yielding ChengsenWang/ChatTime-1-7B-Chat.

For details on ChatTime models, training data and procedures, and experimental results, please refer to the arXiv.

📈 Usage

We present three minimal examples showing how to perform the multimodal time series analysis using the ChatTime model. The detailed code is available in the Github.

Zero-Shot Time Series Forecasting


import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from model.model import ChatTime

dataset = "Traffic"
hist_len = 120
pred_len = 24
model_path = "ChengsenWang/ChatTime-1-7B-Chat"

df = pd.read_csv(f"./dataset/{dataset}.csv")
hist_data = np.array(df["Hist"].apply(eval).values.tolist())[:, -hist_len:][0]
pred_data = np.array(df["Pred"].apply(eval).values.tolist())[:, :pred_len][0]

model = ChatTime(hist_len=hist_len, pred_len=pred_len, model_path=model_path)

out = model.predict(hist_data)

hist_x = np.linspace(0, hist_len-1, hist_len)
pred_x = np.linspace(hist_len, hist_len+pred_len-1, pred_len)

plt.figure(figsize=(8, 2), dpi=500)
plt.plot(hist_x, hist_data, color='#000000')
plt.plot(pred_x, pred_data, color='#000000', label='true')
plt.plot(pred_x, out, color='#FF7F0E', label='pred')
plt.axvline(hist_len, color='red')
plt.legend(loc="upper left")
plt.show()

Context-Guided Time Series Forecasting


import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from model.model import ChatTime

dataset = "PTF"
hist_len = 120
pred_len = 24
model_path = "ChengsenWang/ChatTime-1-7B-Chat"

df = pd.read_csv(f"./dataset/{dataset}.csv")
hist_data = np.array(df["Hist"].apply(eval).values.tolist())[:, -hist_len:][0]
pred_data = np.array(df["Pred"].apply(eval).values.tolist())[:, :pred_len][0]
context = df["Text"].values[0]

model = ChatTime(hist_len=hist_len, pred_len=pred_len, model_path=model_path)

out_text = model.predict(hist_data, context)
out = model.predict(hist_data)

hist_x = np.linspace(0, hist_len-1, hist_len)
pred_x = np.linspace(hist_len, hist_len+pred_len-1, pred_len)

plt.figure(figsize=(8, 2), dpi=500)
plt.plot(hist_x, hist_data, color='#000000')
plt.plot(pred_x, pred_data, color='#000000', label='true')
plt.plot(pred_x, out_text, color='#FF7F0E', label='pred_text')
plt.plot(pred_x, out, color='#1F77B4', label='pred')
plt.axvline(hist_len, color='red')
plt.legend(loc="upper left")
plt.show()

Time Series Question Answering


import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from model.model import ChatTime

dataset = "TSQA"
model_path = "ChengsenWang/ChatTime-1-7B-Chat"

df = pd.read_csv(f"./dataset/{dataset}.csv")
series = np.array(df["Series"].apply(eval).values.tolist())[0]
question = df["Question"].values[0]
answer = df["Answer"].values[0]

model = ChatTime(model_path=model_path)

out = model.analyze(question, series)

plt.figure(figsize=(8, 2), dpi=500)
plt.plot(series, color='#000000')
plt.show()

print(question)
print(f"\n{out} / {answer}\n")

📝 Citation

If you find this repo or our work useful for your research, please consider citing the paper:

@inproceedings{
  author    = {Chengsen Wang and Qi Qi and Jingyu Wang and Haifeng Sun and Zirui Zhuang and Jinming Wu and Lei Zhang and Jianxin Liao},
  title     = {ChatTime: A Unified Multimodal Time Series Foundation Model Bridging Numerical and Textual Data},
  booktitle = {AAAI Conference on Artificial Intelligence},
  year      = {2025},
}

📪 Contact

If you have any question, please contact cswang@bupt.edu.cn.

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

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

GPU в ailist

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

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

Подбираем GPU…

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

0 моделей