Trackio documentation

تكامل RapidFire AI

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

تكامل 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"

أو من بايثون:

import trackio
trackio.show(project="my-sft-experiment")

يعرض لوحة التحكم منحنيات التدريب في الوقت الفعلي لجميع عمليات التشغيل الخاصة بك، مما يسهل مقارنة الإعدادات جنبًا إلى جنب:

Trackio dashboard showing RapidFire AI fine-tuning metrics

لوحة تحكم Trackio لمقارنة أربع عمليات ضبط دقيق باستخدام معاملات فائقة مختلفة. تُظهر الرسوم البيانية خسارة التدريب، وخسارة التحقق، وجداول معدل التعلم، ودرجات ROUGE-L، مما يسهّل تحديد الإعداد (العملية 4، باللون البرتقالي) الذي يحقق أدنى خسارة وأفضل جودة توليد.

التوثيق:

Update on GitHub