Transformers documentation

Candle

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v5.22.1).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Candle

Candle هو إطار عمل لتعلم الآلة يوفر تنفيذات أصلية بلغة Rust لنماذج Transformers. يدعم بشكل أصلي safetensors لتحميل نماذج Transformers مباشرة.

/// load model config
let config: Config = 
    serde_json::from_reader(std::fs::File::open(config_filename)?)?;

/// load safetensors and memory-maps them
let vb = unsafe {
    VarBuilder::from_mmaped_safetensors(&filenames, dtype, &device)?
};

/// materialize tensors from VarBuilder into model class
let model = Model::new(args.use_flash_attn, &config, vb)?;

تكامل Transformers

  1. يتحقق حزمة hf-hub من ذاكرة التخزين المؤقت لحساب Hugging Face المحلية بحثًا عن النموذج. وإذا لم يكن موجودًا، فإنها تُحمّل أوزان النموذج وملفات الإعداد من Hub.
  2. يحمّل VarBuilder ملفات safetensor بشكل كسول. إنه يربط أسماء مفاتيح state-dict بهياكل Rust التي تمثل طبقات النموذج. وهذا يعكس الطريقة التي تنظّم بها Transformers أوزانها.
  3. يقوم Candle بتحليل config.json لاستخراج بيانات وصفية للنموذج، ثم يُنشئ فئة النموذج المطابقة بلغة Rust مع الأوزان من VarBuilder.

الموارد

Update on GitHub