Trackio documentation
Интеграция RapidFire AI
Интеграция RapidFire AI
RapidFire AI позволяет быстро проводить эксперименты для более простой, быстрой и эффективной настройки ИИ. Платформа создана для агентного RAG, контекстной инженерии, дообучения и пост-обучения LLM и других моделей DL, обеспечивая повышение пропускной способности в 16–24 раза без дополнительных ресурсов. Поддерживаются два ключевых сценария использования:
- Довыучивание и пост-обучение: сравнение скоростей обучения, конфигураций LoRA, размеров батчей и других гиперпараметров обучения
- Оптимизация RAG: оцените стратегии разбиения на фрагменты, модели эмбеддингов, подходы к извлечению и настройки повторного ранжирования
При проведении экспериментов вы часто одновременно запускаете множество конфигураций. RapidFire AI обеспечивает нативную интеграцию с Trackio для отслеживания и визуализации всех этих запусков с минимальной настройкой.
Установка
Trackio входит в состав зависимостей RapidFire AI:
pip install rapidfireai
Конфигурация
Включите Trackio в качестве бэкенда отслеживания, задав переменные окружения перед импортом компонентов RapidFire:
import os
# Enable Trackio as the tracking backend
os.environ["RF_TRACKIO_ENABLED"] = "true"
# Optionally disable other tracking backends for standalone Trackio usage
os.environ["RF_MLFLOW_ENABLED"] = "false"
os.environ["RF_TENSORBOARD_ENABLED"] = "false"Вы также можете задать имя проекта Trackio:
export TRACKIO_PROJECT_NAME="my-experiment"Пример дообучения
Для полных рабочих примеров см. учебные ноутбуки:
Вот минимальный пример запуска эксперимента по дообучению с отслеживанием через Trackio:
import os
os.environ["RF_TRACKIO_ENABLED"] = "true"
from rapidfireai import Experiment
from rapidfireai.automl import RFGridSearch, RFModelConfig, RFLoraConfig, RFSFTConfig
experiment = Experiment(experiment_name="my-sft-experiment", mode="fit")
config = RFModelConfig(
model_name="TinyLlama/TinyLlama-1.1B-Chat-v1.0",
peft_config=RFLoraConfig(r=8, lora_alpha=16, target_modules=["q_proj", "v_proj"]),
training_args=RFSFTConfig(
learning_rate=1e-4,
max_steps=128,
logging_steps=2,
eval_strategy="steps",
eval_steps=4,
),
model_type="causal_lm",
)
experiment.run_fit(
RFGridSearch(configs=[config], trainer_type="SFT"),
create_model_fn,
train_dataset,
eval_dataset,
num_chunks=4
)Пример оптимизации RAG
Для полных рабочих примеров см. учебные ноутбуки:
RapidFire AI также поддерживает оптимизацию RAG-конвейеров. Включите отслеживание Trackio тем же способом:
import os
os.environ["RF_TRACKIO_ENABLED"] = "true"
from rapidfireai import Experiment
from rapidfireai.evals.automl import List, RFGridSearch, RFLangChainRagSpec, RFvLLMModelConfig
experiment = Experiment(experiment_name="my-rag-experiment", mode="evals")
rag_spec = RFLangChainRagSpec(
document_loader=your_document_loader,
text_splitter=your_text_splitter,
embedding_cls=your_embedding_class,
search_kwargs={"k": List([5, 10])}, # 2 retrieval configs to compare
)
config_group = RFGridSearch({
"vllm_config": RFvLLMModelConfig(rag=rag_spec, ...),
"batch_size": 32,
...
})
experiment.run_evals(
config_group=config_group,
dataset=eval_dataset,
num_actors=1,
num_shards=4,
)Что отслеживается
RapidFire AI автоматически записывает в Trackio следующие данные:
Метрики дообучения:
loss,learning_rate,epoch,step— прогресс обученияeval_loss- Потери на валидации- Пользовательские метрики из вашей функции
compute_metrics(например,rougeL,bleu)
Метрики оценки RAG:
- Метрики поиска:
Precision,Recall,F1 Score,NDCG@K,MRR - Метрики генерации: пользовательские метрики, которые вы определяете (например,
Accuracy)
Конфигурация запуска:
- Все гиперпараметры для каждого запуска
- Настройки модели, конфигурации LoRA, стратегии разбиения на блоки и т. д.
Просмотр панели управления
Запустите панель Trackio для визуализации экспериментов:
trackio show --project "my-sft-experiment"Или из Python:
import trackio
trackio.show(project="my-sft-experiment")Панель управления отображает кривые обучения в реальном времени для всех ваших запусков, что позволяет легко сравнивать конфигурации бок о бок:
Панель Trackio с сравнением четырёх прогонов дообучения с различными гиперпараметрами. Графики отображают потерю обучения, потерю валидации, расписания скорости обучения и метрики ROUGE-L, что позволяет легко определить, какая конфигурация (Run 4, оранжевым цветом) обеспечивает минимальную потерю и наилучшее качество генерации.
Документация:
- Документация RapidFire AI — Руководство по началу работы
- RapidFire AI GitHub — исходный код и учебные материалы