நீங்கள் ஒரு Mac-இல் பெரிய மொழி மாதிரிகளை (large language models) உள்ளூர் ரீதியாக (locally) இயக்கினால், ஒரு பதிவிறக்கப் பக்கத்தைப் பார்த்து, ஒரே மாதிரியான மாதிரிக்கு ஏன் இரண்டு வெவ்வேறு கோப்புறைகள் (folders) உள்ளன என்று யோசித்திருக்கலாம். ஒன்று .gguf என்று முடிந்து, ஒரு பெரிய ஒற்றை கோப்பாக இருக்கும். மற்றொன்று weights கோப்புகள், ஒரு tokenizer மற்றும் சில JSON config ஆகியவற்றைக் கொண்ட ஒரு MLX கோப்புறை (directory) ஆகும். இவை இரண்டும் Apple Silicon-இல் திறமையாக இயங்கும் என்று கூறுகின்றன. ஆனால் அவற்றில் ஒன்று மட்டுமே உண்மையாகவே Apple சூழலுக்குள் (Apple garden) தங்கியிருக்கிறது.

இது வெறும் பேக்கேஜிங் (packaging) வித்தியாசம் மட்டுமல்ல. MLX மற்றும் GGUF இடையிலானத் தேர்வு, உங்கள் மாதிரி எவ்வளவு வேகமாக இயங்கும், அது எவ்வளவு நினைவகத்தை (memory) எடுத்துக்கொள்ளும் மற்றும் உங்கள் திட்டம் உங்கள் மடிக்கணினியை விட்டு வெளியேற முடியுமா என்பதைத் தீர்மானிக்கிறது.

GGUF உண்மையில் என்ன?

GGUF, llama.cpp சூழலிலிருந்து (ecosystem) உருவானது. இது மாதிரி weights, tokenizer vocabulary, metadata மற்றும் hyperparameters ஆகியவற்றை ஒரே சுயாதீனமான கோப்பாக இணைக்கும் ஒரு binary container format ஆகும். நீங்கள் ஒரு ஒற்றை quantized கோப்பைப் பெற்று, அதை ஒரு கோப்புறையில் போட்டு, இணக்கமான loader கொண்ட கிட்டத்தட்ட எந்தவொரு கணினியிலும் இயக்கலாம். அதாவது macOS-இல் Metal, Linux அல்லது Windows-இல் CUDA, மற்றும் GPU இல்லையென்றால் Vulkan அல்லது CPU-only backends ஆகியவற்றையும் இது குறிக்கும்.

இதன் உண்மையான வெற்றி அதன் இடமாற்றத் திறன் (portability) ஆகும். அனைத்தும் ஒரே கோப்பில் இருப்பதால், GGUF எளிதாகப் பயன்படுத்தத்தக்கது. எதையும் மீண்டும் பதிவிறக்காமல் உங்கள் MacBook-லிருந்து ஒரு Linux server-க்கு இதை மாற்றலாம். நீங்கள் அதை ஒரு NAS-இல் சேமித்து வைக்கலாம், மேலும் ஒரு வருடத்திற்குப் பிறகும், ஒரே ஒரு கட்டளை மூலம் அதை இயக்க முடியும் என்பதைத் தெரிந்து கொள்ளலாம். பல்வேறு வகையான வன்பொருள்களைப் (hardware) பயன்படுத்தும் குழுக்களுக்கு அல்லது இறுதியில் ஒரு தரவு மையத்திற்கு (data center) மாற்றப்படக்கூடிய உள்கட்டமைப்பை (infrastructure) உருவாக்கும் எவருக்கும், இந்தத் தன்மை ஈடுஇணையற்றது.

GGUF, llama.cpp சமூகத்திடமிருந்து பல ஆண்டுகால நுணுக்கமான quantization ஆராய்ச்சிகளையும் பெற்றுள்ளது. Q4_K_M மற்றும் Q5_K_M போன்ற mixed-precision முறைகள், மிகக் குறைந்த bit widths-இல் தரத்தைப் பாதுகாக்கும் வகையில் வடிவமைக்கப்பட்டுள்ளன. 70 பில்லியன் அளவுருக்கள் (parameter) கொண்ட ஒரு மாதிரியை 40 gigabytes வட்டு இடத்திற்குள் (disk space) சுருக்கும்போது, அந்தத் தொழில்நுட்பத் திறன் முக்கியத்துவம் பெறுகிறது.

MLX என்ன வழங்குகிறது?

MLX என்பது வெறும் கோப்பு வடிவம் (file format) மட்டுமல்ல. இது M-series சிப்களில் machine learning செய்வதற்காகவே பிரத்யேகமாக Apple உருவாக்கிய ஒரு array framework ஆகும். ஒரு MLX மாதிரி என்பது பொதுவாக ஒரு ஒற்றை தொகுப்பாக இல்லாமல், கோப்புகளின் தொகுப்பைக் கொண்ட ஒரு கோப்புறை (directory) ஆகும். இந்த framework நேரடியாக Metal backend-உடன் தொடர்பு கொள்கிறது மற்றும் CPU மற்றும் GPU நினைவகத்தை ஒரே ஒருங்கிணைந்த தொகுப்பாக (unified pool) treats செய்கிறது. Apple Silicon-இல், CPU மற்றும் GPU ஒரே இயற்பியல் நினைவக சிப்களைப் பகிர்ந்து கொள்கின்றன, எனவே தரவு செயலிக்கும் (processor) கிராபிக்ஸ் கார்டுக்கும் இடையே பரிமாறப்படும்போது வழக்கமாக நடக்கும் அதிகப்படியான தரவு நகலெடுப்பதைத் (copying) தவிர்க்க MLX உதவுகிறது.

இதில் உள்ள சிக்கல் வெளிப்படையானது: MLX விண்டோஸில் (Windows) இயங்காது. இது லினக்ஸிலும் (Linux) இயங்காது. இது CUDA இயந்திரங்களிலும் இயங்காது. உங்கள் பணிப்பாய்வு (workflow) எப்போதாவது Apple சூழலை விட்டு வெளியேறினால், நீங்கள் மாதிரியை வேறு வடிவத்திற்கு மாற்ற வேண்டியிருக்கும் அல்லது மீண்டும் பதிவிறக்க வேண்டியிருக்கும்.

முழுமையாக Mac Studio அல்லது MacBook Pro-விலேயே இயங்கும் தனிப்பட்ட டெவலப்பர்களுக்கு, அந்தத் தடை பெரிய விஷயமாக இருக்காது. ஆனால் மற்றவர்களுக்கு, அது ஒரு தடையாகும்.

செயல்திறன் எங்கே உள்ளது?

Apple Silicon-இல், MLX பொதுவாகவே வேகமான விருப்பமாகும். ஒரே Mac-இல் Metal-backed engine மூலம் ஏற்றப்படும் GGUF-ஐ விட, MLX 15 முதல் 40 சதவீதம் வரை வேகமாக இயங்குவதைக் குறிப்பீடுகள் (benchmarks) காட்டுகின்றன. நடைமுறையில், அந்த இடைவெளி 20 வினாடிகள் எடுக்கும் மந்தமான பதிலைத் துரிதமான 12 வினாடி பதிலாக மாற்றுகிறது. நீண்ட நேர கோடிங் அல்லது எழுதும் பணிப்பாய்வின் போது, அந்தச் சில வினாடிகள் சேர்ந்து ஒரு குறிப்பிடத்தக்க மென்மையான அனுபவத்தைத் தருகின்றன.

நினைவகப் பயன்பாடும் (Memory usage) இதே போக்கைக் கொண்டுள்ளது. MLX, அதற்கு இணையான GGUF மாதிரியை விட சுமார் 10 சதவீதம் குறைவான RAM-ஐப் பயன்படுத்துகிறது. அந்தச் சேமிப்பு, ஒருங்கிணைந்த நினைவகக் கட்டமைப்பு (unified memory architecture) மற்றும் கூடுதல் buffer நகலெடுப்புகள் இல்லாததிலிருந்து கிடைக்கிறது. 64 GB RAM கொண்ட கணினியில், 10 சதவீதம் என்பது போதுமான இடைவெளியாகும். ஆனால் 32 GB கொண்ட Mac-இல், இது ஒரு 13B மாதிரியைத் தடையின்றி இயக்குவதற்கும் அல்லது swap நிலையை எட்டுவதற்கும் இடையிலான வித்தியாசமாக இருக்கலாம்.

இருப்பினும், தரத்தில் ஒரு சமரசம் (trade-off) உள்ளது. 4-bit quantization-இல், Q4_K_M முறையைப் பயன்படுத்தும் நன்கு சரிசெய்யப்பட்ட GGUF கோப்பு, ஒரு சாதாரண 4-bit MLX மாற்றத்தை விடச் சற்று சிறந்த வெளியீட்டுத் துல்லியத்தை (output fidelity) வழங்குகிறது. GGUF-இல் உள்ள mixed-precision நுணுக்கங்கள் ஆயிரக்கணக்கான பயனர் சோதனைகள் மூலம் மேம்படுத்தப்பட்டுள்ளன. உங்கள் பணி துல்லியமான பகுத்தறிவு (reasoning), கோடிங் தொடரியல் (coding syntax) அல்லது நுணுக்கமான அறிவுறுத்தல்களைப் பின்பற்றுதல் ஆகியவற்றை உள்ளடக்கியது என்றால், அந்தச் சிறிய தர வேறுபாடு, வேகத்தை விட முக்கியத்துவம் வாய்ந்ததாக இருக்கலாம்.

நிஜச் சூழல்கள், நிஜத் தேர்வுகள்

உங்களிடம் M3 Pro MacBook மற்றும் 36 GB ஒருங்கிணைந்த நினைவகம் (unified memory) கொண்ட ஒரு டெவலப்பர் இருப்பதாகக் கற்பனை செய்து கொள்ளுங்கள். நீங்கள் நாள் முழுவதும் VS Code-க்குள் ஒரு உள்ளூர் கோடிங் உதவியாளரை (coding assistant) இயக்குகிறீர்கள். நீங்கள் விண்டோஸ் கணினியைத் தொடவே இல்லை. இத்தகைய சூழலில் MLX பொருத்தமானது. கூடுதல் வேகம் autocomplete-ஐத் தடையின்றிச் செய்ய உதவுகிறது, மேலும் நினைவகச் சேமிப்பு உங்கள் கணினியை முடக்காமல் ஐம்பது டேப்களைத் (tabs) திறந்த நிலையில் வைத்திருக்க அனுமதிக்கிறது.

16 GB RAM கொண்ட ஒரு அடிப்படை M1 MacBook Air வைத்திருக்கும் ஒரு ஆராய்ச்சியாளரை கற்பனை செய்து பாருங்கள். அவர்கள் அவ்வப்போது NVIDIA கார்டுகளைக் கொண்ட ஒரு துறை சார்ந்த Linux சர்வரில் அதே பகுப்பாய்வு நோட்புக்கை (analysis notebook) இயக்க வேண்டியிருக்கும். அத்தகைய சூழலில் GGUF தான் சிறந்த தேர்வாகும். ஒற்றை கோப்பு (single file) பேக்கப்களை எளிதாக்குகிறது, மேலும் mixed-precision quantization குறைந்த நினைவகத்திலிருந்து சிறந்த தரத்தைப் பெற உதவுகிறது. அவர்கள் சர்வரில் SSH செய்யும்போது, எந்த வடிவ மாற்றமும் (format conversion) இன்றி அதே weights-களை இயக்க முடியும்.

அல்லது ஒரு டெஸ்க்டாப் AI கருவியை உருவாக்கும் ஒரு சிறிய ஸ்டார்ட்அப்பை (startup) கருத்தில் கொள்ளுங்கள். அவர்கள் Mac-களில் முன்மாதிரிகளை (prototype) உருவாக்குகிறார்கள், ஆனால் அவர்களின் வாடிக்கையாளர்கள் Windows லேப்டாப்கள் மற்றும் Linux workstations ஆகியவற்றின் கலவையைப் பயன்படுத்துகிறார்கள் என்பதைத் தெரியும். ஆரம்பத்திலேயே MLX-ஐ நம்பியிருப்பது அவர்களை ஒரு சிக்கலான சூழலில் சிக்க வைக்கும். GGUF அவர்களின் deployment விருப்பங்களைத் திறந்து வைக்கிறது. ஒரு கோப்பு. ஒரு pipeline. அனைத்துத் தளங்களும்.

எப்படி முடிவு செய்வது

பெஞ்ச்மார்க்குகளை விட உங்கள் வன்பொருள் (hardware) மற்றும் எதிர்காலத் திட்டங்களே முக்கியம்.

உங்களிடம் 32 GB அல்லது அதற்கு மேற்பட்ட நினைவகம் கொண்ட நவீன M-series Mac இருந்தால், நீங்கள் உள்ளூர் செயல்திறனை (local performance) மட்டுமே கவனித்தால், மற்றும் உங்கள் திட்டம் ஒருபோதும் Apple அல்லாத இயந்திரத்தில் இயங்க வேண்டிய அவசியம் இல்லை என்றால் MLX-ஐத் தேர்ந்தெடுக்கவும். இதன் வேகம் உண்மையானது, மேலும் அதன் unified memory ஒருங்கிணைப்பு நேர்த்தியானது.

உங்களிடம் 16 GB RAM அல்லது அதற்கும் குறைவாக இருந்தால், நீங்கள் macOS மற்றும் Linux ஆகிய இரண்டிலும் வேலை செய்தால், அல்லது ஒரு நாள் சர்வரில் இயங்கக்கூடிய ஏதேனும் ஒன்றை நீங்கள் உருவாக்கிக் கொண்டிருந்தால் GGUF-ஐத் தேர்ந்தெடுக்கவும். மிக எளிமையான அமைப்பை (setup) நீங்கள் விரும்பினால் இதுவே சிறந்த தேர்வு: ஒரு கோப்பு, ஒரு மாடல், மற்றும் எந்தத் தடங்கல்களும் (dependency headaches) இல்லை.

வேகத்தை ஒரு ஸ்டாப்வாட்ச் மூலம் அளவிடுவது எளிது. ஆனால் இடமாற்றத் திறன் (portability) அது காணாமல் போகும் போதுதான் உணரப்படும். ஒரு வருடத்திற்கு MLX-ஐ மட்டுமே பயன்படுத்தும் pipeline-ஐ உருவாக்கினால், நீங்கள் ஒரு CUDA சர்வருக்கு inference-ஐ மாற்ற வேண்டிய நாள் வரும்போது, அந்த சிரமத்தை உணர்வீர்கள். உங்கள் திட்டத்தை எப்போதும் MacBook-லேயே வைத்திருந்தால், நீங்கள் MLX வேகத்தை எந்தத் தடங்கலும் இன்றி அனுபவிப்பீர்கள்.

சுருக்கமாகச் சொன்னால்

32 GB அல்லது அதற்கு மேற்பட்ட நினைவகம் கொண்ட Mac-ல் தனிப்பட்ட பயன்பாட்டிற்கா? MLX உங்களுக்குச் சிறந்த native அனுபவத்தைத் தரும். 16 GB உடன் வேலை செய்கிறீர்களா, இயங்குதளங்களை மாற்றுகிறீர்களா அல்லது ஒரு சர்வருக்கு அனுப்பப் போகிறீர்களா? GGUF பாதுகாப்பான மற்றும் நெகிழ்வான தேர்வாகும். உங்களால் உண்மையிலேயே முடிவு செய்ய முடியாவிட்டால், GGUF-ஐத் தேர்ந்தெடுங்கள். Apple Silicon-ல் நீங்கள் சிறிது வேகத்தை இழப்பீர்கள், ஆனால் எங்கு வேண்டுமானாலும் செல்லும் சுதந்திரத்தைப் பெறுவீர்கள்.

Source: MLX vs GGUF on Apple Silicon: Which local LLM format should you actually use?

மற்றவர்களுடன் local LLMs பற்றி பேச விரும்புகிறீர்களா