{"id":37428,"date":"2026-01-04T12:41:01","date_gmt":"2026-01-04T09:41:01","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=37428"},"modified":"2026-01-04T12:41:01","modified_gmt":"2026-01-04T09:41:01","slug":"digitalocean-gpu-dropletlerinde-qwen-3-dagitimi-kapsamli-bir-rehber","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/digitalocean-gpu-dropletlerinde-qwen-3-dagitimi-kapsamli-bir-rehber\/","title":{"rendered":"DigitalOcean GPU Droplet&#8217;lerinde Qwen-3 Da\u011f\u0131t\u0131m\u0131: Kapsaml\u0131 Bir Rehber"},"content":{"rendered":"<p><body><\/p>\n<h2>DigitalOcean GPU Droplet&#8217;lerinde Qwen-3 Da\u011f\u0131t\u0131m\u0131: Kapsaml\u0131 Bir Rehber<\/h2>\n<p>Bu kapsaml\u0131 teknik makale, DigitalOcean&#8217;\u0131n g\u00fc\u00e7l\u00fc GPU Droplet&#8217;leri \u00fczerinde Aliyun taraf\u0131ndan geli\u015ftirilen a\u00e7\u0131k kaynakl\u0131 b\u00fcy\u00fck dil modeli (LLM) Qwen-3&#8217;\u00fc ba\u015far\u0131yla da\u011f\u0131tmak i\u00e7in ad\u0131m ad\u0131m bir rehber sunmaktad\u0131r. Yapay zeka ve makine \u00f6\u011frenimi projeleri i\u00e7in bulut tabanl\u0131 \u00e7\u00f6z\u00fcmler arayan geli\u015ftiriciler ve ara\u015ft\u0131rmac\u0131lar i\u00e7in tasarlanm\u0131\u015ft\u0131r. Bu rehber, bir GPU Droplet&#8217;in haz\u0131rlanmas\u0131ndan Qwen-3 modelinin y\u00fcklenmesine ve \u00e7al\u0131\u015ft\u0131r\u0131lmas\u0131na kadar t\u00fcm s\u00fcreci detayland\u0131racak, ayr\u0131ca performans optimizasyonlar\u0131 ve s\u0131k kar\u015f\u0131la\u015f\u0131lan sorunlara \u00e7\u00f6z\u00fcmler sunacakt\u0131r.<\/p>\n<h3>Giri\u015f: Qwen-3 ve DigitalOcean GPU Droplet&#8217;leri<\/h3>\n<p>B\u00fcy\u00fck dil modelleri (LLM&#8217;ler), do\u011fal dil i\u015fleme alan\u0131nda devrim yaratmaya devam ederken, bu modelleri da\u011f\u0131tmak ve \u00e7al\u0131\u015ft\u0131rmak i\u00e7in g\u00fc\u00e7l\u00fc donan\u0131m altyap\u0131s\u0131na olan ihtiya\u00e7 da artmaktad\u0131r. Aliyun&#8217;un geli\u015ftirdi\u011fi Qwen-3, hem akademik ara\u015ft\u0131rmac\u0131lar hem de end\u00fcstriyel geli\u015ftiriciler i\u00e7in g\u00fc\u00e7l\u00fc bir ara\u00e7 sunan, geni\u015f \u00f6l\u00e7ekli, \u00e7ok dilli ve \u00e7ok modlu yeteneklere sahip a\u00e7\u0131k kaynakl\u0131 bir LLM ailesidir. Farkl\u0131 boyutlarda (\u00f6rne\u011fin, 2B, 7B, 72B parametreler) sunulan Qwen-3 modelleri, kodlama, metin \u00f6zetleme, \u00e7eviri ve diyalog sistemleri gibi \u00e7e\u015fitli g\u00f6revlerde \u00fcst\u00fcn performans sergilemektedir. Bu modellerin verimli bir \u015fekilde \u00e7al\u0131\u015ft\u0131r\u0131lmas\u0131 genellikle y\u00fcksek performansl\u0131 GPU&#8217;lar gerektirir.<\/p>\n<p>DigitalOcean, geli\u015ftiricilere kolay eri\u015filebilir, uygun maliyetli ve \u00f6l\u00e7eklenebilir bulut altyap\u0131s\u0131 sa\u011flamas\u0131yla bilinir. Son zamanlarda kullan\u0131ma sunulan GPU Droplet&#8217;leri, \u00f6zellikle makine \u00f6\u011frenimi i\u015f y\u00fckleri i\u00e7in tasarlanm\u0131\u015f olup, NVIDIA&#8217;n\u0131n g\u00fc\u00e7l\u00fc GPU&#8217;lar\u0131n\u0131 (genellikle A100 veya H100 gibi) bar\u0131nd\u0131rarak bu t\u00fcr modellerin e\u011fitimi ve \u00e7\u0131kar\u0131m\u0131 i\u00e7in ideal bir platform sunmaktad\u0131r. DigitalOcean&#8217;\u0131n basit kullan\u0131c\u0131 aray\u00fcz\u00fc ve geli\u015ftirici dostu ekosistemi, karma\u015f\u0131k AI modellerinin buluta da\u011f\u0131t\u0131m\u0131n\u0131 daha eri\u015filebilir hale getirmektedir.<\/p>\n<p>Bu rehberin amac\u0131, Qwen-3&#8217;\u00fcn t\u00fcm potansiyelini DigitalOcean GPU Droplet&#8217;lerinde ortaya \u00e7\u0131karmak i\u00e7in gerekli t\u00fcm teknik ad\u0131mlar\u0131 ve en iyi uygulamalar\u0131 sa\u011flamakt\u0131r. Okuyucular, bu rehberin sonunda kendi Qwen-3 da\u011f\u0131t\u0131mlar\u0131n\u0131 ba\u015far\u0131yla ger\u00e7ekle\u015ftirebilecek ve yapay zeka projelerine h\u0131z kazand\u0131rabileceklerdir.<\/p>\n<h3>\u00d6nko\u015fullar<\/h3>\n<p>Bu rehberdeki ad\u0131mlar\u0131 takip etmeden \u00f6nce a\u015fa\u011f\u0131daki \u00f6nko\u015fullara sahip olman\u0131z gerekmektedir:<\/p>\n<p>*   <strong>DigitalOcean Hesab\u0131:<\/strong> Aktif bir DigitalOcean hesab\u0131n\u0131z olmal\u0131 ve kredi kart\u0131 bilgileriniz tan\u0131mlanm\u0131\u015f olmal\u0131d\u0131r. GPU Droplet&#8217;leri, standart Droplet&#8217;lerden daha y\u00fcksek maliyetli oldu\u011fundan, yeterli bakiyeniz veya kredi limitiniz oldu\u011fundan emin olun.<br \/>\n*   <strong>Temel Linux Komut Sat\u0131r\u0131 Bilgisi:<\/strong> SSH arac\u0131l\u0131\u011f\u0131yla sunucuya ba\u011flanma, dosya sistemi navigasyonu, paket y\u00fckleme ve temel sistem komutlar\u0131n\u0131 kullanma konusunda bilgi sahibi olmal\u0131s\u0131n\u0131z.<br \/>\n*   <strong>SSH \u0130stemcisi:<\/strong> Sunucunuza g\u00fcvenli bir \u015fekilde ba\u011flanmak i\u00e7in bir SSH istemcisine ihtiyac\u0131n\u0131z olacak (\u00f6rne\u011fin, Linux\/macOS i\u00e7in <code>ssh<\/code> komutu, Windows i\u00e7in PuTTY veya Windows Terminal&#8217;de OpenSSH).<br \/>\n*   <strong>B\u00fcy\u00fck Dil Modellerine Genel A\u015final\u0131k:<\/strong> <code>transformers<\/code> k\u00fct\u00fcphanesi, model y\u00fckleme ve \u00e7\u0131kar\u0131m kavramlar\u0131na a\u015fina olmak, s\u00fcreci daha iyi anlaman\u0131za yard\u0131mc\u0131 olacakt\u0131r.<\/p>\n<h3>Do\u011fru DigitalOcean GPU Droplet&#8217;ini Se\u00e7mek<\/h3>\n<p>Qwen-3 modelinin performans\u0131 ve maliyeti \u00fczerinde do\u011frudan etkisi olacak en kritik ad\u0131mlardan biri, do\u011fru GPU Droplet&#8217;ini se\u00e7mektir. DigitalOcean, farkl\u0131 GPU se\u00e7enekleri ve yap\u0131land\u0131rmalar\u0131 sunabilir.<\/p>\n<h4>GPU Se\u00e7enekleri<\/h4>\n<p>Qwen-3 gibi b\u00fcy\u00fck dil modelleri, y\u00fcksek paralel i\u015fleme kapasitesine sahip GPU&#8217;lara ihtiya\u00e7 duyar. DigitalOcean&#8217;\u0131n sundu\u011fu GPU se\u00e7enekleri genellikle \u015funlar\u0131 i\u00e7erir:<\/p>\n<p>*   <strong>NVIDIA A100:<\/strong> Genellikle y\u00fcksek performansl\u0131 AI i\u015f y\u00fckleri i\u00e7in end\u00fcstri standard\u0131 kabul edilen g\u00fc\u00e7l\u00fc bir GPU&#8217;dur. Y\u00fcksek GPU belle\u011fi (genellikle 40GB veya 80GB) ve Tensor Core&#8217;lar\u0131 sayesinde Qwen-3&#8217;\u00fcn b\u00fcy\u00fck versiyonlar\u0131n\u0131 bile verimli bir \u015fekilde \u00e7al\u0131\u015ft\u0131rabilir.<br \/>\n*   <strong>NVIDIA H100:<\/strong> A100&#8217;den daha yeni ve daha g\u00fc\u00e7l\u00fc bir GPU&#8217;dur. E\u011fer DigitalOcean bu se\u00e7ene\u011fi sunuyorsa ve b\u00fct\u00e7eniz uygunsa, en y\u00fcksek performans\u0131 H100 ile elde edersiniz.<\/p>\n<p>Qwen-3&#8217;\u00fcn hangi versiyonunu \u00e7al\u0131\u015ft\u0131rmak istedi\u011finize ba\u011fl\u0131 olarak GPU belle\u011fi ihtiyac\u0131n\u0131z de\u011fi\u015fecektir:<\/p>\n<p>*   <strong>Qwen-3-2B-Chat:<\/strong> Genellikle 8GB-16GB GPU belle\u011fi yeterli olabilir.<br \/>\n*   <strong>Qwen-3-7B-Chat:<\/strong> Minimum 16GB, tercihen 24GB+ GPU belle\u011fi \u00f6nerilir.<br \/>\n*   <strong>Qwen-3-72B-Chat:<\/strong> Bu model i\u00e7in en az 40GB GPU belle\u011fi, hatta 80GB belle\u011fe sahip bir A100 veya H100 GPU gereklidir. Quantized (nicelendirilmi\u015f) versiyonlar daha az bellek t\u00fcketir ancak performans d\u00fc\u015f\u00fc\u015fleri ya\u015fanabilir.<\/p>\n<h4>CPU, RAM ve Depolama<\/h4>\n<p>GPU&#8217;nun yan\u0131 s\u0131ra, Droplet&#8217;in CPU, RAM ve depolama kaynaklar\u0131 da \u00f6nemlidir:<\/p>\n<p>*   <strong>CPU:<\/strong> Model y\u00fckleme, \u00f6n i\u015fleme ve baz\u0131 \u00e7\u0131kar\u0131m ad\u0131mlar\u0131 CPU \u00fczerinde ger\u00e7ekle\u015fir. Yeterli say\u0131da vCPU (genellikle 4-8 vCPU) performans\u0131 olumlu etkiler.<br \/>\n*   <strong>RAM:<\/strong> Modelin tamam\u0131 GPU belle\u011fine s\u0131\u011fmasa bile, baz\u0131 k\u0131s\u0131mlar\u0131 veya ara katmanlar\u0131 RAM&#8217;de tutulabilir. Ayr\u0131ca Python \u00e7al\u0131\u015fma zaman\u0131 ve di\u011fer k\u00fct\u00fcphaneler i\u00e7in de RAM gereklidir. GPU belle\u011finiz ne kadar azsa, RAM ihtiyac\u0131n\u0131z o kadar artabilir. Genellikle 32GB veya 64GB RAM, 7B veya 72B modeller i\u00e7in iyi bir ba\u015flang\u0131\u00e7 noktas\u0131d\u0131r.<br \/>\n*   <strong>Depolama (SSD):<\/strong> Model dosyalar\u0131 olduk\u00e7a b\u00fcy\u00fckt\u00fcr (72B model i\u00e7in onlarca GB). Y\u00fcksek h\u0131zl\u0131 SSD depolama, modelin h\u0131zl\u0131 bir \u015fekilde y\u00fcklenmesini sa\u011flar. En az 100GB, hatta 200GB+ depolama alan\u0131 ay\u0131rman\u0131z \u00f6nerilir.<\/p>\n<h4>B\u00f6lge Se\u00e7imi<\/h4>\n<p>DigitalOcean, farkl\u0131 co\u011frafi b\u00f6lgelerde veri merkezleri sunar. Kullan\u0131c\u0131lara olan co\u011frafi yak\u0131nl\u0131k, gecikme s\u00fcresini (latency) azalt\u0131r. Ayr\u0131ca, baz\u0131 b\u00f6lgelerde GPU Droplet&#8217;lerinin mevcudiyeti veya fiyatland\u0131rmas\u0131 farkl\u0131l\u0131k g\u00f6sterebilir. Projenizin hedef kitlesine en yak\u0131n ve GPU Droplet&#8217;lerinin mevcut oldu\u011fu bir b\u00f6lgeyi se\u00e7in.<\/p>\n<h4>\u0130\u015fletim Sistemi<\/h4>\n<p>GPU Droplet&#8217;leri i\u00e7in genellikle Ubuntu LTS (Long Term Support) s\u00fcr\u00fcmleri \u00f6nerilir (\u00f6rne\u011fin, Ubuntu 22.04 LTS). Bu s\u00fcr\u00fcmler, kararl\u0131l\u0131klar\u0131, geni\u015f topluluk deste\u011fi ve g\u00fcncel yaz\u0131l\u0131m paketlerine eri\u015fim kolayl\u0131\u011f\u0131 nedeniyle tercih edilir.<\/p>\n<h3>DigitalOcean GPU Droplet&#8217;inizi Kurmak<\/h3>\n<p>DigitalOcean kontrol paneli \u00fczerinden GPU Droplet&#8217;inizi olu\u015fturmak olduk\u00e7a basittir.<\/p>\n<h4>Droplet Olu\u015fturma Ad\u0131mlar\u0131<\/h4>\n<p>1.  <strong>DigitalOcean Kontrol Paneline Giri\u015f Yap\u0131n:<\/strong> Taray\u0131c\u0131n\u0131zdan DigitalOcean hesab\u0131n\u0131za giri\u015f yap\u0131n.<br \/>\n2.  <strong>&#8220;Create&#8221; (Olu\u015ftur) Butonuna T\u0131klay\u0131n:<\/strong> Sa\u011f \u00fcst k\u00f6\u015fede bulunan &#8220;Create&#8221; butonuna ve ard\u0131ndan &#8220;Droplets&#8221; se\u00e7ene\u011fine t\u0131klay\u0131n.<br \/>\n3.  <strong>B\u00f6lgeyi Se\u00e7in:<\/strong> Projeniz i\u00e7in en uygun co\u011frafi b\u00f6lgeyi se\u00e7in. Unutmay\u0131n, GPU Droplet&#8217;leri her b\u00f6lgede mevcut olmayabilir.<br \/>\n4.  <strong>G\u00f6r\u00fcnt\u00fcy\u00fc (Image) Se\u00e7in:<\/strong> \u0130\u015fletim sistemi olarak &#8220;Ubuntu&#8221; ve en son LTS s\u00fcr\u00fcm\u00fcn\u00fc (\u00f6rne\u011fin, 22.04 LTS) se\u00e7in.<br \/>\n5.  <strong>Droplet Tipini ve Plan\u0131n\u0131 Se\u00e7in:<\/strong> Buras\u0131 en \u00f6nemli ad\u0131md\u0131r.<br \/>\n    *   &#8220;Choose a plan&#8221; (Bir plan se\u00e7in) b\u00f6l\u00fcm\u00fcnde, genellikle &#8220;GPU Optimized&#8221; (GPU Optimize Edilmi\u015f) veya benzeri bir kategori bulacaks\u0131n\u0131z.<br \/>\n    *   Qwen-3 modelinizin boyutuna ve b\u00fct\u00e7enize uygun GPU modelini (\u00f6rne\u011fin, NVIDIA A100) ve onunla birlikte gelen CPU, RAM ve depolama yap\u0131land\u0131rmas\u0131n\u0131 se\u00e7in.<br \/>\n6.  <strong>Kimlik Do\u011frulama (Authentication) Y\u00f6ntemini Se\u00e7in:<\/strong> SSH anahtar\u0131 kullanman\u0131z \u015fiddetle tavsiye edilir. Mevcut bir SSH anahtar\u0131n\u0131z\u0131 ekleyebilir veya yeni bir tane olu\u015fturabilirsiniz. Bu, sunucuya g\u00fcvenli bir \u015fekilde ba\u011flanman\u0131z\u0131 sa\u011flar.<br \/>\n7.  <strong>Ek Se\u00e7enekler (\u0130ste\u011fe Ba\u011fl\u0131):<\/strong><br \/>\n    *   <strong>VPC Network:<\/strong> E\u011fer birden fazla Droplet&#8217;iniz varsa ve \u00f6zel bir a\u011fda ileti\u015fim kurmalar\u0131n\u0131 istiyorsan\u0131z se\u00e7ebilirsiniz.<br \/>\n    *   <strong>Monitoring:<\/strong> DigitalOcean&#8217;\u0131n varsay\u0131lan izleme ara\u00e7lar\u0131 genellikle etkindir.<br \/>\n    *   <strong>Backups:<\/strong> Veri kayb\u0131na kar\u015f\u0131 d\u00fczenli yedeklemeler i\u00e7in etkinle\u015ftirebilirsiniz (ek \u00fccrete tabidir).<br \/>\n8.  <strong>Hostname (Ana Bilgisayar Ad\u0131) ve Etiketler:<\/strong> Droplet&#8217;inize kolayca tan\u0131yabilece\u011finiz bir isim verin (\u00f6rne\u011fin, <code>qwen3-gpu-droplet<\/code>).<br \/>\n9.  <strong>&#8220;Create Droplet&#8221; (Droplet Olu\u015ftur) Butonuna T\u0131klay\u0131n:<\/strong> Droplet&#8217;iniz birka\u00e7 dakika i\u00e7inde olu\u015fturulacak ve size IP adresi verilecektir.<\/p>\n<h4>SSH Eri\u015fimi<\/h4>\n<p>Droplet&#8217;iniz olu\u015ftuktan sonra, SSH anahtar\u0131n\u0131z\u0131 kullanarak ona ba\u011flanabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">ssh root@<Droplet_IP_Adresi><\/code><\/pre>\n<p><code><Droplet_IP_Adresi><\/code> yerine DigitalOcean kontrol panelinde g\u00f6rd\u00fc\u011f\u00fcn\u00fcz IP adresini yaz\u0131n. E\u011fer ilk kez ba\u011flan\u0131yorsan\u0131z, sunucunun parmak izini kabul etmeniz istenebilir.<\/p>\n<h4>\u0130lk Sunucu Kurulumu ve G\u00fcvenlik<\/h4>\n<p>Sunucuya ba\u011fland\u0131ktan sonra, ilk g\u00fcvenlik ve g\u00fcncelleme ad\u0131mlar\u0131n\u0131 uygulaman\u0131z \u00f6nemlidir:<\/p>\n<p>1.  <strong>Sistem G\u00fcncellemeleri:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo apt update\n    sudo apt upgrade -y<\/code><\/pre>\n<p>    Bu komutlar, sistemdeki t\u00fcm paketleri en son s\u00fcr\u00fcmlerine g\u00fcncelleyecektir.<br \/>\n2.  <strong>G\u00fcvenlik Duvar\u0131 (UFW) Yap\u0131land\u0131rmas\u0131:<\/strong> Yaln\u0131zca gerekli portlara eri\u015fime izin vermek i\u00e7in bir g\u00fcvenlik duvar\u0131 kurmak \u00f6nemlidir.<\/p>\n<pre><code class=\"language-bash\">sudo apt install ufw -y\n    sudo ufw allow OpenSSH\n    # E\u011fer bir web API da\u011f\u0131tacaksan\u0131z, HTTP\/HTTPS portlar\u0131n\u0131 da a\u00e7\u0131n\n    # sudo ufw allow http\n    # sudo ufw allow https\n    sudo ufw enable\n    sudo ufw status<\/code><\/pre>\n<p>    <code>ufw status<\/code> komutu, g\u00fcvenlik duvar\u0131n\u0131n durumunu ve izin verilen kurallar\u0131 g\u00f6sterecektir.<\/p>\n<h3>NVIDIA S\u00fcr\u00fcc\u00fclerini ve CUDA Toolkit&#8217;i Kurmak<\/h3>\n<p>Qwen-3 modelinin GPU \u00fczerinde \u00e7al\u0131\u015fabilmesi i\u00e7in NVIDIA s\u00fcr\u00fcc\u00fclerinin ve CUDA Toolkit&#8217;in do\u011fru \u015fekilde kurulmas\u0131 hayati \u00f6nem ta\u015f\u0131r. DigitalOcean GPU Droplet&#8217;lerinde bu s\u00fcr\u00fcc\u00fcler \u00f6nceden y\u00fckl\u00fc gelebilir, ancak en g\u00fcncel ve uyumlu s\u00fcr\u00fcmleri kontrol etmek ve gerekirse kurmak her zaman iyi bir uygulamad\u0131r.<\/p>\n<h4>Mevcut S\u00fcr\u00fcc\u00fcleri Kontrol Etme<\/h4>\n<p>\u0130lk olarak, <code>nvidia-smi<\/code> komutunu \u00e7al\u0131\u015ft\u0131rarak NVIDIA s\u00fcr\u00fcc\u00fclerinin y\u00fckl\u00fc olup olmad\u0131\u011f\u0131n\u0131 ve GPU&#8217;nuzun tan\u0131n\u0131p tan\u0131nmad\u0131\u011f\u0131n\u0131 kontrol edin:<\/p>\n<pre><code class=\"language-bash\">nvidia-smi<\/code><\/pre>\n<p>E\u011fer bu komut GPU bilgilerinizi (s\u00fcr\u00fcc\u00fc versiyonu, CUDA versiyonu, GPU belle\u011fi kullan\u0131m\u0131 vb.) g\u00f6steriyorsa, s\u00fcr\u00fcc\u00fcleriniz muhtemelen zaten y\u00fckl\u00fcd\u00fcr. E\u011fer hata al\u0131yorsan\u0131z veya komut bulunam\u0131yorsa, s\u00fcr\u00fcc\u00fcleri manuel olarak y\u00fcklemeniz gerekecektir.<\/p>\n<h4>NVIDIA S\u00fcr\u00fcc\u00fclerini Y\u00fckleme (Gerekirse)<\/h4>\n<p>DigitalOcean genellikle GPU Droplet&#8217;lerine uygun s\u00fcr\u00fcc\u00fcleri \u00f6nceden y\u00fckler. Ancak, manuel y\u00fckleme gerekirse:<\/p>\n<p>1.  <strong>NVIDIA Depolar\u0131n\u0131 Ekleme:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo apt update\n    sudo apt install software-properties-common -y\n    sudo add-apt-repository ppa:graphics-drivers\/ppa -y\n    sudo apt update<\/code><\/pre>\n<p>2.  <strong>\u00d6nerilen S\u00fcr\u00fcc\u00fcy\u00fc Bulma ve Y\u00fckleme:<\/strong><\/p>\n<pre><code class=\"language-bash\">ubuntu-drivers devices<\/code><\/pre>\n<p>    Bu komut, sisteminiz i\u00e7in \u00f6nerilen NVIDIA s\u00fcr\u00fcc\u00fcs\u00fcn\u00fc listeleyecektir (\u00f6rne\u011fin, <code>nvidia-driver-535<\/code>). \u00d6nerilen s\u00fcr\u00fcc\u00fcy\u00fc y\u00fckleyin:<\/p>\n<pre><code class=\"language-bash\">sudo apt install nvidia-driver-<s\u00fcr\u00fcc\u00fc_versiyonu> -y\n    # \u00d6rne\u011fin: sudo apt install nvidia-driver-535 -y<\/code><\/pre>\n<p>3.  <strong>Sistemi Yeniden Ba\u015flatma:<\/strong> S\u00fcr\u00fcc\u00fclerin d\u00fczg\u00fcn \u00e7al\u0131\u015fmas\u0131 i\u00e7in sistemi yeniden ba\u015flatman\u0131z gerekebilir:<\/p>\n<pre><code class=\"language-bash\">sudo reboot<\/code><\/pre>\n<p>    Yeniden ba\u015flatt\u0131ktan sonra SSH \u00fczerinden tekrar ba\u011flan\u0131n ve <code>nvidia-smi<\/code> komutunu tekrar \u00e7al\u0131\u015ft\u0131rarak s\u00fcr\u00fcc\u00fclerin do\u011fru \u015fekilde y\u00fcklendi\u011fini do\u011frulay\u0131n.<\/p>\n<h4>CUDA Toolkit Kurulumu<\/h4>\n<p>CUDA Toolkit, GPU \u00fczerinde paralel hesaplama yapmak i\u00e7in NVIDIA&#8217;n\u0131n yaz\u0131l\u0131m geli\u015ftirme kitidir. PyTorch ve Transformers gibi k\u00fct\u00fcphaneler, GPU h\u0131zland\u0131rmas\u0131 i\u00e7in CUDA&#8217;ya ba\u011f\u0131ml\u0131d\u0131r.<\/p>\n<p>1.  <strong>CUDA S\u00fcr\u00fcm\u00fc Uyumlulu\u011fu:<\/strong> <code>nvidia-smi<\/code> \u00e7\u0131kt\u0131s\u0131nda g\u00f6rd\u00fc\u011f\u00fcn\u00fcz CUDA s\u00fcr\u00fcm\u00fcn\u00fcn, kullanmay\u0131 planlad\u0131\u011f\u0131n\u0131z PyTorch s\u00fcr\u00fcm\u00fcyle uyumlu oldu\u011fundan emin olun. Genellikle, NVIDIA&#8217;n\u0131n web sitesinden en son CUDA Toolkit&#8217;i indirmek ve kurmak en iyisidir.<br \/>\n2.  <strong>CUDA Toolkit&#8217;i \u0130ndirme:<\/strong> NVIDIA&#8217;n\u0131n resmi sitesinden (developer.nvidia.com\/cuda-downloads) Ubuntu i\u00e7in uygun <code>.deb<\/code> veya <code>runfile<\/code> paketini indirin. SSH \u00fczerinden do\u011frudan sunucuya indirmek i\u00e7in <code>wget<\/code> kullanabilirsiniz.<br \/>\n    \u00d6rnek (Ubuntu 22.04 i\u00e7in CUDA 12.x):<\/p>\n<pre><code class=\"language-bash\">wget https:\/\/developer.download.nvidia.com\/compute\/cuda\/repos\/ubuntu2204\/x86_64\/cuda-ubuntu2204.pin\n    sudo mv cuda-ubuntu2204.pin \/etc\/apt\/preferences.d\/cuda-repository-pin-600\n    wget https:\/\/developer.download.nvidia.com\/compute\/cuda\/12.3.2\/local_installers\/cuda-repo-ubuntu2204-12-3-local_12.3.2-1_amd64.deb\n    sudo dpkg -i cuda-repo-ubuntu2204-12-3-local_12.3.2-1_amd64.deb\n    sudo cp \/var\/cuda-repo-ubuntu2204-12-3-local\/cuda-*-keyring.gpg \/usr\/share\/keyrings\/\n    sudo apt update\n    sudo apt install cuda -y<\/code><\/pre>\n<p>    <em>Not:<\/em> Yukar\u0131daki URL ve s\u00fcr\u00fcm numaralar\u0131 zamanla de\u011fi\u015febilir. Her zaman NVIDIA&#8217;n\u0131n resmi web sitesindeki en g\u00fcncel talimatlar\u0131 kontrol edin.<br \/>\n3.  <strong>Ortam De\u011fi\u015fkenlerini Ayarlama:<\/strong> CUDA&#8217;n\u0131n do\u011fru \u015fekilde \u00e7al\u0131\u015fmas\u0131 i\u00e7in ortam de\u011fi\u015fkenlerini ayarlaman\u0131z gerekir. <code>.bashrc<\/code> dosyan\u0131za a\u015fa\u011f\u0131daki sat\u0131rlar\u0131 ekleyin:<\/p>\n<pre><code class=\"language-bash\">echo 'export PATH=\/usr\/local\/cuda\/bin${PATH:+:${PATH}}' >> ~\/.bashrc\n    echo 'export LD_LIBRARY_PATH=\/usr\/local\/cuda\/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}' >> ~\/.bashrc\n    source ~\/.bashrc<\/code><\/pre>\n<p>4.  <strong>Kurulumu Do\u011frulama:<\/strong><\/p>\n<pre><code class=\"language-bash\">nvcc --version<\/code><\/pre>\n<p>    Bu komut, y\u00fckl\u00fc CUDA derleyicisinin s\u00fcr\u00fcm\u00fcn\u00fc g\u00f6stermelidir.<\/p>\n<h4>cuDNN Kurulumu (\u0130ste\u011fe Ba\u011fl\u0131 ama \u00d6nerilir)<\/h4>\n<p>cuDNN, derin \u00f6\u011frenme i\u00e7in GPU h\u0131zland\u0131rmal\u0131 ilkel fonksiyonlar k\u00fct\u00fcphanesidir. Performans\u0131 \u00f6nemli \u00f6l\u00e7\u00fcde art\u0131rabilir. NVIDIA Geli\u015ftirici program\u0131na kaydolman\u0131z ve cuDNN&#8217;i manuel olarak indirip kurman\u0131z gerekebilir. Genellikle CUDA Toolkit ile birlikte gelen bir versiyonu olsa da, en g\u00fcncel ve optimize edilmi\u015f cuDNN versiyonunu kurmak faydal\u0131d\u0131r.<\/p>\n<h3>Python Ortam\u0131n\u0131 Kurmak<\/h3>\n<p>Qwen-3 modelini \u00e7al\u0131\u015ft\u0131rmak i\u00e7in izole ve iyi yap\u0131land\u0131r\u0131lm\u0131\u015f bir Python ortam\u0131na ihtiyac\u0131m\u0131z var.<\/p>\n<p>1.  <strong>Python 3.9+ Kurulumu:<\/strong> DigitalOcean Ubuntu Droplet&#8217;leri genellikle Python 3&#8217;\u00fcn g\u00fcncel bir s\u00fcr\u00fcm\u00fcyle gelir. Mevcut s\u00fcr\u00fcm\u00fc kontrol edin:<\/p>\n<pre><code class=\"language-bash\">python3 --version<\/code><\/pre>\n<p>    E\u011fer 3.9&#8217;dan d\u00fc\u015f\u00fckse veya farkl\u0131 bir s\u00fcr\u00fcm istiyorsan\u0131z:<\/p>\n<pre><code class=\"language-bash\">sudo apt install python3.9 python3.9-venv -y<\/code><\/pre>\n<p>2.  <strong>Sanal Ortam Olu\u015fturma:<\/strong> Projeleriniz i\u00e7in sanal ortamlar kullanmak en iyi uygulamad\u0131r. Bu, ba\u011f\u0131ml\u0131l\u0131k \u00e7ak\u0131\u015fmalar\u0131n\u0131 \u00f6nler ve ortam\u0131 temiz tutar.<\/p>\n<pre><code class=\"language-bash\">mkdir qwen3_deployment\n    cd qwen3_deployment\n    python3.9 -m venv venv<\/code><\/pre>\n<p>3.  <strong>Sanal Ortam\u0131 Etkinle\u015ftirme:<\/strong><\/p>\n<pre><code class=\"language-bash\">source venv\/bin\/activate<\/code><\/pre>\n<p>    Komut sat\u0131r\u0131n\u0131z\u0131n ba\u015f\u0131nda <code>(venv)<\/code> g\u00f6rd\u00fc\u011f\u00fcn\u00fczde, sanal ortam\u0131n\u0131z\u0131n etkin oldu\u011fu anlam\u0131na gelir.<br \/>\n4.  <strong>Pip&#8217;i G\u00fcncelleme:<\/strong><\/p>\n<pre><code class=\"language-bash\">pip install --upgrade pip<\/code><\/pre>\n<h3>Qwen-3 Da\u011f\u0131t\u0131m\u0131 \u0130\u00e7in Haz\u0131rl\u0131k<\/h3>\n<p>\u015eimdi Qwen-3 modelini y\u00fcklemek ve \u00e7al\u0131\u015ft\u0131rmak i\u00e7in gerekli Python k\u00fct\u00fcphanelerini kural\u0131m.<\/p>\n<p>1.  <strong>Temel K\u00fct\u00fcphaneleri Y\u00fckleme:<\/strong><\/p>\n<pre><code class=\"language-bash\">pip install torch torchvision torchaudio --index-url https:\/\/download.pytorch.org\/whl\/cu121\n    pip install transformers accelerate sentencepiece bitsandbytes<\/code><\/pre>\n<p>    *   <strong><code>torch<\/code>:<\/strong> PyTorch derin \u00f6\u011frenme \u00e7at\u0131s\u0131. <code>cu121<\/code> k\u0131sm\u0131, CUDA 12.1 ile uyumlu PyTorch s\u00fcr\u00fcm\u00fcn\u00fc y\u00fckledi\u011fimizi belirtir. Kendi CUDA s\u00fcr\u00fcm\u00fcn\u00fcze g\u00f6re bu k\u0131sm\u0131 de\u011fi\u015ftirmelisiniz (\u00f6rne\u011fin, <code>cu118<\/code> i\u00e7in CUDA 11.8).<br \/>\n    *   <strong><code>transformers<\/code>:<\/strong> Hugging Face&#8217;in pop\u00fcler k\u00fct\u00fcphanesi, Qwen-3 gibi LLM&#8217;leri kolayca y\u00fcklemenizi ve kullanman\u0131z\u0131 sa\u011flar.<br \/>\n    *   <strong><code>accelerate<\/code>:<\/strong> B\u00fcy\u00fck modelleri birden fazla GPU&#8217;ya veya CPU\/GPU kar\u0131\u015f\u0131m\u0131na y\u00fcklemek i\u00e7in Hugging Face taraf\u0131ndan geli\u015ftirilen bir k\u00fct\u00fcphane.<br \/>\n    *   <strong><code>sentencepiece<\/code>:<\/strong> Qwen-3&#8217;\u00fcn kulland\u0131\u011f\u0131 tokenizasyon k\u00fct\u00fcphanesi.<br \/>\n    *   <strong><code>bitsandbytes<\/code>:<\/strong> Modelleri nicelendirmek (quantization) i\u00e7in kullan\u0131l\u0131r, bu da modelin GPU belle\u011finde daha az yer kaplamas\u0131n\u0131 ve daha h\u0131zl\u0131 \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flar (\u00f6zellikle 4-bit veya 8-bit nicelendirme i\u00e7in).<br \/>\n2.  <strong>Flash Attention (\u0130ste\u011fe Ba\u011fl\u0131, Performans \u0130\u00e7in):<\/strong> E\u011fer GPU&#8217;nuz ve CUDA s\u00fcr\u00fcm\u00fcn\u00fcz Flash Attention&#8217;\u0131 destekliyorsa, bu k\u00fct\u00fcphane dikkat mekanizmalar\u0131n\u0131 \u00f6nemli \u00f6l\u00e7\u00fcde h\u0131zland\u0131rabilir.<\/p>\n<pre><code class=\"language-bash\">pip install flash-attn --no-build-isolation<\/code><\/pre>\n<p>    <em>Not:<\/em> Flash Attention kurulumu karma\u015f\u0131k olabilir ve belirli CUDA\/PyTorch\/GPU kombinasyonlar\u0131na ba\u011fl\u0131d\u0131r. Kurulumda sorun ya\u015farsan\u0131z, bu ad\u0131m\u0131 atlayabilirsiniz.<br \/>\n3.  <strong>Hugging Face Giri\u015fi (\u0130ste\u011fe Ba\u011fl\u0131):<\/strong> E\u011fer Qwen-3&#8217;\u00fcn baz\u0131 \u00f6zel veya gated (eri\u015fimi k\u0131s\u0131tl\u0131) modellerini kullanacaksan\u0131z veya Hugging Face API s\u0131n\u0131rlar\u0131na tak\u0131lmak istemiyorsan\u0131z, giri\u015f yapman\u0131z gerekebilir.<\/p>\n<pre><code class=\"language-bash\">huggingface-cli login<\/code><\/pre>\n<p>    Size bir token girmeniz istenecek. Hugging Face hesab\u0131n\u0131zdan bir eri\u015fim token\u0131 olu\u015fturup buraya yap\u0131\u015ft\u0131r\u0131n.<\/p>\n<h3>Qwen-3 Modelini \u0130ndirme ve Y\u00fckleme<\/h3>\n<p>\u015eimdi Qwen-3 modelini DigitalOcean GPU Droplet&#8217;inize indirece\u011fiz ve PyTorch ile belle\u011fe y\u00fckleyece\u011fiz.<\/p>\n<h4>Model Varyant\u0131 Se\u00e7imi<\/h4>\n<p>Qwen-3&#8217;\u00fcn Hugging Face Hub&#8217;da bir\u00e7ok varyant\u0131 bulunmaktad\u0131r. \u0130htiya\u00e7lar\u0131n\u0131za ve GPU belle\u011finize uygun olan\u0131 se\u00e7melisiniz:<\/p>\n<p>*   <code>Qwen\/Qwen-3-2B-Chat<\/code>: En k\u00fc\u00e7\u00fck ve en h\u0131zl\u0131 model.<br \/>\n*   <code>Qwen\/Qwen-3-7B-Chat<\/code>: Orta b\u00fcy\u00fckl\u00fckte, iyi performans\/bellek dengesi.<br \/>\n*   <code>Qwen\/Qwen-3-72B-Chat<\/code>: En b\u00fcy\u00fck ve en yetenekli model, ancak y\u00fcksek GPU belle\u011fi gerektirir.<\/p>\n<p>Ayr\u0131ca, nicelendirilmi\u015f (quantized) versiyonlar\u0131 da mevcuttur (\u00f6rne\u011fin, <code>Qwen\/Qwen-3-7B-Chat-AWQ<\/code> veya <code>Qwen\/Qwen-3-7B-Chat-Int4<\/code>). Bu versiyonlar daha az GPU belle\u011fi t\u00fcketir ancak hafif bir performans d\u00fc\u015f\u00fc\u015f\u00fc ya\u015fanabilir.<\/p>\n<h4>Python Beti\u011fi ile Modeli Y\u00fckleme<\/h4>\n<p>A\u015fa\u011f\u0131daki Python beti\u011fini <code>qwen3_inference.py<\/code> ad\u0131yla kaydedin:<\/p>\n<pre><code class=\"language-python\">import torch\nfrom transformers import AutoModelForCausalLM, AutoTokenizer, BitsAndBytesConfig\n\n<h2>1. Modeli ve Tokenizer'\u0131 Tan\u0131mla<\/h2>\n<h2>Kullanmak istedi\u011finiz Qwen-3 modelinin Hugging Face ad\u0131n\u0131 buraya girin.<\/h2>\n<h2>\u00d6rnek: \"Qwen\/Qwen-3-7B-Chat\"<\/h2>\n<h2>E\u011fer 4-bit nicelendirilmi\u015f bir model kullanacaksan\u0131z, model ad\u0131n\u0131 ona g\u00f6re g\u00fcncelleyin.<\/h2>\n<h2>\u00d6rne\u011fin: \"Qwen\/Qwen-3-7B-Chat-Int4\" veya \"Qwen\/Qwen-3-7B-Chat-AWQ\"<\/h2>\nmodel_name = \"Qwen\/Qwen-3-7B-Chat\" # L\u00fctfen kendi se\u00e7iminize g\u00f6re g\u00fcncelleyin\n\n<h2>GPU kullan\u0131labilirli\u011fini kontrol et<\/h2>\ndevice = \"cuda\" if torch.cuda.is_available() else \"cpu\"\nprint(f\"Kullan\u0131lan cihaz: {device}\")\n\n<h2>2. Nicelendirme (Quantization) Yap\u0131land\u0131rmas\u0131 (\u0130ste\u011fe Ba\u011fl\u0131, Bellek Optimizasyonu \u0130\u00e7in)<\/h2>\n<h2>E\u011fer GPU belle\u011finiz k\u0131s\u0131tl\u0131ysa 4-bit veya 8-bit nicelendirme kullanabilirsiniz.<\/h2>\n<h2>7B model i\u00e7in 4-bit nicelendirme genellikle 16-24GB civar\u0131nda bellek kullan\u0131r.<\/h2>\n<h2>72B model i\u00e7in 4-bit nicelendirme genellikle 40-50GB civar\u0131nda bellek kullan\u0131r.<\/h2>\nuse_4bit_quantization = True # E\u011fer bellek s\u0131k\u0131nt\u0131n\u0131z varsa True yap\u0131n\nuse_8bit_quantization = False # E\u011fer bellek s\u0131k\u0131nt\u0131n\u0131z varsa True yap\u0131n (4-bit'ten daha az s\u0131k\u0131\u015ft\u0131rma)\n\nbnb_config = None\nif use_4bit_quantization:\n    bnb_config = BitsAndBytesConfig(\n        load_in_4bit=True,\n        bnb_4bit_quant_type=\"nf4\",\n        bnb_4bit_compute_dtype=torch.bfloat16,\n        bnb_4bit_use_double_quant=True,\n    )\nelif use_8bit_quantization:\n    bnb_config = BitsAndBytesConfig(\n        load_in_8bit=True\n    )\n\n<h2>3. Modeli ve Tokenizer'\u0131 Y\u00fckle<\/h2>\nprint(f\"{model_name} modelini ve tokenizer'\u0131 y\u00fckl\u00fcyor...\")\n\n<h2>Modelin daha b\u00fcy\u00fck versiyonlar\u0131 i\u00e7in device_map=\"auto\" kullanmak \u00e7ok \u00f6nemlidir.<\/h2>\n<h2>Bu, modeli mevcut GPU'lara ve\/veya CPU belle\u011fine otomatik olarak da\u011f\u0131t\u0131r.<\/h2>\n<h2>Nicelendirme kullanm\u0131yorsan\u0131z, torch_dtype'\u0131 ayarlamak da \u00f6nemlidir (bfloat16 veya float16).<\/h2>\ntry:\n    if bnb_config:\n        model = AutoModelForCausalLM.from_pretrained(\n            model_name,\n            quantization_config=bnb_config,\n            device_map=\"auto\",\n            trust_remote_code=True\n        )\n    else:\n        model = AutoModelForCausalLM.from_pretrained(\n            model_name,\n            torch_dtype=torch.bfloat16, # Veya torch.float16, GPU'nuzun deste\u011fine ba\u011fl\u0131\n            device_map=\"auto\",\n            trust_remote_code=True\n        )\n    tokenizer = AutoTokenizer.from_pretrained(model_name, trust_remote_code=True)\n    print(\"Model ve tokenizer ba\u015far\u0131yla y\u00fcklendi.\")\n\nexcept Exception as e:\n    print(f\"Model y\u00fcklenirken bir hata olu\u015ftu: {e}\")\n    print(\"L\u00fctfen model ad\u0131n\u0131, GPU belle\u011fini ve nicelendirme ayarlar\u0131n\u0131 kontrol edin.\")\n    exit()\n\n<h2>Modelin GPU'ya y\u00fcklendi\u011fini do\u011frula<\/h2>\nif device == \"cuda\":\n    print(f\"Model GPU belle\u011fi kullan\u0131m\u0131: {torch.cuda.memory_allocated() \/ (1024<em><\/em>3):.2f} GB\")\n\n<h2>4. Basit Bir \u00c7\u0131kar\u0131m (Inference) \u00d6rne\u011fi<\/h2>\ndef generate_response(prompt_text, max_new_tokens=512, temperature=0.7):\n    messages = [\n        {\"role\": \"system\", \"content\": \"You are a helpful assistant.\"},\n        {\"role\": \"user\", \"content\": prompt_text}\n    ]\n    text = tokenizer.apply_chat_template(\n        messages,\n        tokenize=False,\n        add_generation_prompt=True\n    )\n    model_inputs = tokenizer([text], return_tensors=\"pt\").to(device)\n\n    generated_ids = model.generate(\n        model_inputs.input_ids,\n        max_new_tokens=max_new_tokens,\n        temperature=temperature,\n        do_sample=True, # Daha yarat\u0131c\u0131 yan\u0131tlar i\u00e7in\n        pad_token_id=tokenizer.eos_token_id, # Qwen i\u00e7in EOS token ID'yi belirtin\n    )\n    generated_ids = [\n        output_ids[len(model_inputs.input_ids[0]):] for output_ids in generated_ids\n    ]\n\n    response = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0]\n    return response\n\nif __name__ == \"__main__\":\n    print(\"\\nQwen-3 ile sohbet etmeye ba\u015flayabilirsiniz (\u00e7\u0131kmak i\u00e7in 'exit' yaz\u0131n).\")\n    while True:\n        user_input = input(\"Siz: \")\n        if user_input.lower() == 'exit':\n            print(\"\u00c7\u0131k\u0131\u015f yap\u0131l\u0131yor...\")\n            break\n        \n        print(\"Qwen-3 D\u00fc\u015f\u00fcn\u00fcyor...\")\n        response = generate_response(user_input)\n        print(f\"Qwen-3: {response}\")<\/code><\/pre>\n<h4>Kodu \u00c7al\u0131\u015ft\u0131rma<\/h4>\n<p>Sanal ortam\u0131n\u0131z etkin durumdayken, beti\u011fi \u00e7al\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code class=\"language-bash\">python qwen3_inference.py<\/code><\/pre>\n<p>Model ilk kez indirilirken biraz zaman alabilir. \u0130ndirme tamamland\u0131\u011f\u0131nda ve model belle\u011fe y\u00fcklendi\u011finde, <code>Siz:<\/code> istemini g\u00f6receksiniz ve Qwen-3 ile etkile\u015fime ge\u00e7meye ba\u015flayabilirsiniz.<\/p>\n<h3>Qwen-3 ile Etkile\u015fim Kurmak<\/h3>\n<p>Yukar\u0131daki betik, Qwen-3 ile temel bir sohbet aray\u00fcz\u00fc sa\u011flar. Modeli y\u00fckledikten sonra, konsolda metin girdileri sa\u011flayarak yan\u0131tlar alabilirsiniz.<\/p>\n<pre><code class=\"language-\">Siz: T\u00fcrkiye'nin ba\u015fkenti neresidir?\nQwen-3 D\u00fc\u015f\u00fcn\u00fcyor...\nQwen-3: T\u00fcrkiye'nin ba\u015fkenti Ankara'd\u0131r.\n\nSiz: Bana yapay zeka hakk\u0131nda ilgin\u00e7 bir bilgi ver.\nQwen-3 D\u00fc\u015f\u00fcn\u00fcyor...\nQwen-3: Yapay zeka, insan beynindeki n\u00f6ronlar\u0131n \u00e7al\u0131\u015fma prensibinden ilham alarak tasarlanm\u0131\u015f yapay sinir a\u011flar\u0131 sayesinde \u00f6\u011frenme ve karar verme yetene\u011fine sahiptir. Bu a\u011flar, milyarlarca veri noktas\u0131n\u0131 analiz ederek karma\u015f\u0131k desenleri tan\u0131yabilir ve bu sayede \u00f6rne\u011fin dil \u00e7evirisi, g\u00f6r\u00fcnt\u00fc tan\u0131ma veya oyun oynama gibi g\u00f6revleri ger\u00e7ekle\u015ftirebilir.<\/code><\/pre>\n<h4>Prompt M\u00fchendisli\u011fi Temelleri<\/h4>\n<p>B\u00fcy\u00fck dil modellerinden en iyi yan\u0131tlar\u0131 almak i\u00e7in iyi prompt&#8217;lar yazmak \u00f6nemlidir:<\/p>\n<p>*   <strong>A\u00e7\u0131k ve Net Olun:<\/strong> Modelden ne istedi\u011finizi spesifik olarak belirtin.<br \/>\n*   <strong>Rol Atamas\u0131 Yap\u0131n:<\/strong> Modele bir rol atayarak (\u00f6rne\u011fin, &#8220;Sen bir tarih profes\u00f6r\u00fcs\u00fcn&#8230;&#8221;) yan\u0131t stilini y\u00f6nlendirebilirsiniz.<br \/>\n*   <strong>K\u0131s\u0131tlamalar Belirtin:<\/strong> Yan\u0131t\u0131n uzunlu\u011fu, format\u0131 veya i\u00e7eri\u011fi hakk\u0131nda k\u0131s\u0131tlamalar koyun.<br \/>\n*   <strong>\u00d6rnekler Verin (Few-shot prompting):<\/strong> Modelin istenen \u00e7\u0131kt\u0131y\u0131 daha iyi anlamas\u0131 i\u00e7in birka\u00e7 \u00f6rnek sa\u011flay\u0131n.<\/p>\n<h3>Optimizasyon Teknikleri<\/h3>\n<p>Qwen-3 gibi b\u00fcy\u00fck modelleri DigitalOcean GPU Droplet&#8217;lerinde daha verimli \u00e7al\u0131\u015ft\u0131rmak i\u00e7in \u00e7e\u015fitli optimizasyon teknikleri mevcuttur.<\/p>\n<h4>Nicelendirme (Quantization)<\/h4>\n<p>Nicelendirme, model parametrelerinin daha d\u00fc\u015f\u00fck hassasiyetli veri tiplerine (\u00f6rne\u011fin, 32-bit float yerine 8-bit veya 4-bit integer) d\u00f6n\u00fc\u015ft\u00fcr\u00fclmesidir. Bu, modelin diskte ve GPU belle\u011finde daha az yer kaplamas\u0131n\u0131 sa\u011flar ve \u00e7\u0131kar\u0131m h\u0131z\u0131n\u0131 art\u0131rabilir.<\/p>\n<p>*   <strong><code>bitsandbytes<\/code> ile 4-bit\/8-bit Nicelendirme:<\/strong> Yukar\u0131daki Python beti\u011finde <code>BitsAndBytesConfig<\/code> kullanarak bu y\u00f6ntemi zaten g\u00f6sterdik. <code>load_in_4bit=True<\/code> veya <code>load_in_8bit=True<\/code> parametreleri ile modeli otomatik olarak nicelendirilmi\u015f bir \u015fekilde y\u00fckleyebilirsiniz. \u00d6zellikle 72B gibi b\u00fcy\u00fck modeller i\u00e7in bellek tasarrufu a\u00e7\u0131s\u0131ndan kritik \u00f6neme sahiptir.<\/p>\n<h4>Flash Attention<\/h4>\n<p>Flash Attention, Transformer mimarisindeki dikkat (attention) mekanizmas\u0131n\u0131n hesaplama ve bellek verimlili\u011fini art\u0131ran bir algoritmad\u0131r. Desteklenen GPU&#8217;larda (genellikle NVIDIA A100 ve H100) kullan\u0131ld\u0131\u011f\u0131nda, \u00e7\u0131kar\u0131m h\u0131z\u0131n\u0131 \u00f6nemli \u00f6l\u00e7\u00fcde art\u0131rabilir ve bellek t\u00fcketimini azaltabilir. Kurulumu biraz karma\u015f\u0131k olabilir ancak performansa etkisi b\u00fcy\u00fckt\u00fcr.<\/p>\n<h4>Batching (Toplu \u0130\u015fleme)<\/h4>\n<p>Birden fazla iste\u011fi tek bir GPU i\u015flemi olarak birle\u015ftirmek (batching), GPU&#8217;nun paralel i\u015flem g\u00fcc\u00fcn\u00fc daha etkin kullanmas\u0131n\u0131 sa\u011flar. \u00d6zellikle bir API \u00fczerinden birden fazla kullan\u0131c\u0131 iste\u011fi al\u0131yorsan\u0131z, bu teknik gecikmeyi d\u00fc\u015f\u00fcr\u00fcr ve verimi art\u0131r\u0131r.<\/p>\n<h4><code>torch.compile<\/code> (PyTorch 2.0+)<\/h4>\n<p>PyTorch 2.0 ve sonraki s\u00fcr\u00fcmler, <code>torch.compile<\/code> adl\u0131 bir \u00f6zellik sunar. Bu, PyTorch kodunu optimize edilmi\u015f bir \u00e7ekirdek kodu derleyerek performans\u0131 art\u0131rabilir. Modelinizi y\u00fckledikten sonra basit\u00e7e:<\/p>\n<pre><code class=\"language-python\">model = torch.compile(model)<\/code><\/pre>\n<p>Bu sat\u0131r\u0131 ekleyerek performans\u0131 deneyebilirsiniz.<\/p>\n<h3>\u0130ste\u011fe Ba\u011fl\u0131: Qwen-3&#8217;\u00fc Bir API Olarak Da\u011f\u0131tma<\/h3>\n<p>Qwen-3&#8217;\u00fc bir web uygulamas\u0131 veya ba\u015fka servisler taraf\u0131ndan kullan\u0131labilir hale getirmek i\u00e7in bir REST API olarak da\u011f\u0131tmak yayg\u0131n bir senaryodur. <code>FastAPI<\/code> bu ama\u00e7 i\u00e7in m\u00fckemmel bir se\u00e7imdir.<\/p>\n<p>1.  <strong>Gerekli K\u00fct\u00fcphaneleri Y\u00fckleme:<\/strong><\/p>\n<pre><code class=\"language-bash\">pip install fastapi uvicorn<\/code><\/pre>\n<p>2.  <strong><code>app.py<\/code> Olu\u015fturma:<\/strong> A\u015fa\u011f\u0131daki kodu <code>app.py<\/code> ad\u0131yla kaydedin. Bu, Qwen-3 modelini y\u00fckleyen ve bir \u00e7\u0131kar\u0131m (inference) endpoint&#8217;i sa\u011flayan basit bir FastAPI uygulamas\u0131d\u0131r.<\/p>\n<pre><code class=\"language-python\">from fastapi import FastAPI, HTTPException\n    from pydantic import BaseModel\n    import torch\n    from transformers import AutoModelForCausalLM, AutoTokenizer, BitsAndBytesConfig\n    import os\n\n    app = FastAPI()\n\n    # Model y\u00fckleme i\u00e7in global de\u011fi\u015fkenler\n    model = None\n    tokenizer = None\n    device = \"cuda\" if torch.cuda.is_available() else \"cpu\"\n\n    class PromptRequest(BaseModel):\n        prompt: str\n        max_new_tokens: int = 512\n        temperature: float = 0.7\n\n    @app.on_event(\"startup\")\n    async def load_model():\n        global model, tokenizer\n        print(\"Model ve tokenizer y\u00fckleniyor...\")\n        model_name = os.getenv(\"QWEN_MODEL_NAME\", \"Qwen\/Qwen-3-7B-Chat\")\n        use_4bit_quantization = os.getenv(\"USE_4BIT_QUANT\", \"False\").lower() == \"true\"\n\n        bnb_config = None\n        if use_4bit_quantization:\n            bnb_config = BitsAndBytesConfig(\n                load_in_4bit=True,\n                bnb_4bit_quant_type=\"nf4\",\n                bnb_4bit_compute_dtype=torch.bfloat16,\n                bnb_4bit_use_double_quant=True,\n            )\n\n        try:\n            if bnb_config:\n                model = AutoModelForCausalLM.from_pretrained(\n                    model_name,\n                    quantization_config=bnb_config,\n                    device_map=\"auto\",\n                    trust_remote_code=True\n                )\n            else:\n                model = AutoModelForCausalLM.from_pretrained(\n                    model_name,\n                    torch_dtype=torch.bfloat16,\n                    device_map=\"auto\",\n                    trust_remote_code=True\n                )\n            tokenizer = AutoTokenizer.from_pretrained(model_name, trust_remote_code=True)\n            print(\"Model ve tokenizer ba\u015far\u0131yla y\u00fcklendi.\")\n        except Exception as e:\n            print(f\"Model y\u00fcklenirken bir hata olu\u015ftu: {e}\")\n            raise HTTPException(status_code=500, detail=\"Model y\u00fcklenemedi.\")\n\n    @app.post(\"\/generate\")\n    async def generate_text(request: PromptRequest):\n        if model is None or tokenizer is None:\n            raise HTTPException(status_code=503, detail=\"Model hen\u00fcz y\u00fcklenmedi.\")\n        \n        messages = [\n            {\"role\": \"system\", \"content\": \"You are a helpful assistant.\"},\n            {\"role\": \"user\", \"content\": request.prompt}\n        ]\n        text = tokenizer.apply_chat_template(\n            messages,\n            tokenize=False,\n            add_generation_prompt=True\n        )\n        model_inputs = tokenizer([text], return_tensors=\"pt\").to(device)\n\n        try:\n            generated_ids = model.generate(\n                model_inputs.input_ids,\n                max_new_tokens=request.max_new_tokens,\n                temperature=request.temperature,\n                do_sample=True,\n                pad_token_id=tokenizer.eos_token_id,\n            )\n            generated_ids = [\n                output_ids[len(model_inputs.input_ids[0]):] for output_ids in generated_ids\n            ]\n            response = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0]\n            return {\"response\": response}\n        except Exception as e:\n            raise HTTPException(status_code=500, detail=f\"Metin \u00fcretilirken hata olu\u015ftu: {e}\")\n\n    # Uygulamay\u0131 ba\u015flatmak i\u00e7in: uvicorn app:app --host 0.0.0.0 --port 8000<\/code><\/pre>\n<p>3.  <strong>Uygulamay\u0131 \u00c7al\u0131\u015ft\u0131rma:<\/strong><\/p>\n<pre><code class=\"language-bash\"># Ortam de\u011fi\u015fkenlerini ayarlay\u0131n (iste\u011fe ba\u011fl\u0131)\n    export QWEN_MODEL_NAME=\"Qwen\/Qwen-3-7B-Chat\"\n    export USE_4BIT_QUANT=\"True\" # Bellek k\u0131s\u0131tl\u0131ysa True yap\u0131n\n\n    uvicorn app:app --host 0.0.0.0 --port 8000<\/code><\/pre>\n<p>    Bu komut, uygulaman\u0131z\u0131 8000 portunda ba\u015flatacakt\u0131r. Droplet&#8217;inizin IP adresi \u00fczerinden (<code>http:\/\/<Droplet_IP_Adresi>:8000\/docs<\/code>) FastAPI&#8217;nin Swagger UI&#8217;\u0131na eri\u015ferek API&#8217;yi test edebilirsiniz.<\/p>\n<p>4.  <strong>\u00dcretim Ortam\u0131 i\u00e7in Gunicorn\/Nginx (\u0130ste\u011fe Ba\u011fl\u0131):<\/strong><br \/>\n    \u00dcretim ortam\u0131nda <code>uvicorn<\/code>&#8216;u do\u011frudan \u00e7al\u0131\u015ft\u0131rmak yerine, <code>gunicorn<\/code> gibi bir WSGI sunucusu ve <code>nginx<\/code> gibi bir ters proxy kullanmak daha sa\u011flam bir \u00e7\u00f6z\u00fcmd\u00fcr.<br \/>\n    *   <strong>Gunicorn Kurulumu:<\/strong> <code>pip install gunicorn<\/code><br \/>\n    *   <strong>Nginx Kurulumu:<\/strong> <code>sudo apt install nginx -y<\/code><br \/>\n    *   <strong>Gunicorn ile \u00c7al\u0131\u015ft\u0131rma:<\/strong> <code>gunicorn -w 4 -k uvicorn.workers.UvicornWorker app:app -b 0.0.0.0:8000<\/code> (4 worker ile)<br \/>\n    *   <strong>Nginx Yap\u0131land\u0131rmas\u0131:<\/strong> <code>\/etc\/nginx\/sites-available\/default<\/code> dosyas\u0131n\u0131 d\u00fczenleyerek gelen 80\/443 portu isteklerini 8000 portundaki Gunicorn&#8217;a y\u00f6nlendirebilirsiniz.<\/p>\n<h3>\u0130zleme ve Bak\u0131m<\/h3>\n<p>Da\u011f\u0131tt\u0131\u011f\u0131n\u0131z Qwen-3 modelinin performans\u0131n\u0131 ve Droplet&#8217;inizin kaynak kullan\u0131m\u0131n\u0131 izlemek \u00f6nemlidir.<\/p>\n<p>*   <strong>GPU Kullan\u0131m\u0131:<\/strong><\/p>\n<pre><code class=\"language-bash\">watch -n 1 nvidia-smi<\/code><\/pre>\n<p>    Bu komut, GPU kullan\u0131m\u0131n\u0131, bellek t\u00fcketimini ve s\u0131cakl\u0131\u011f\u0131n\u0131 her saniye g\u00fcncellenen bir \u015fekilde g\u00f6sterecektir.<br \/>\n*   <strong>CPU ve RAM Kullan\u0131m\u0131:<\/strong><\/p>\n<pre><code class=\"language-bash\">htop<\/code><\/pre>\n<p>    <code>htop<\/code> arac\u0131, CPU \u00e7ekirdeklerinin kullan\u0131m\u0131n\u0131, RAM t\u00fcketimini ve \u00e7al\u0131\u015fan s\u00fcre\u00e7leri detayl\u0131 bir \u015fekilde g\u00f6sterir.<br \/>\n*   <strong>DigitalOcean \u0130zleme:<\/strong> DigitalOcean kontrol panelindeki Droplet&#8217;inizin &#8220;Graphs&#8221; (Grafikler) sekmesi, CPU kullan\u0131m\u0131, a\u011f trafi\u011fi ve disk G\/\u00c7 gibi temel metrikleri izlemenizi sa\u011flar.<br \/>\n*   <strong>G\u00fcncellemeler:<\/strong> \u0130\u015fletim sisteminizi ve Python k\u00fct\u00fcphanelerinizi d\u00fczenli olarak g\u00fcncel tutmak, g\u00fcvenlik a\u00e7\u0131klar\u0131n\u0131 kapat\u0131r ve yeni \u00f6zelliklerden faydalanman\u0131z\u0131 sa\u011flar.<\/p>\n<pre><code class=\"language-bash\">sudo apt update && sudo apt upgrade -y\n    pip install --upgrade transformers torch accelerate bitsandbytes<\/code><\/pre>\n<h3>S\u0131k Kar\u015f\u0131la\u015f\u0131lan Sorunlar\u0131 Giderme<\/h3>\n<p>*   <strong>CUDA Out of Memory (CUDA Bellek Hatas\u0131):<\/strong> Bu, GPU belle\u011finizin yetersiz oldu\u011fu anlam\u0131na gelir.<br \/>\n    *   Daha k\u00fc\u00e7\u00fck bir Qwen-3 modeli kullan\u0131n (\u00f6rne\u011fin, 72B yerine 7B).<br \/>\n    *   4-bit veya 8-bit nicelendirme kullan\u0131n (<code>BitsAndBytesConfig<\/code>).<br \/>\n    *   <code>device_map=\"auto\"<\/code> kulland\u0131\u011f\u0131n\u0131zdan emin olun.<br \/>\n    *   Gereksiz Python de\u011fi\u015fkenlerini veya modellerini bellekten temizleyin (<code>del model; torch.cuda.empty_cache()<\/code>).<br \/>\n    *   Daha fazla GPU belle\u011fine sahip bir Droplet&#8217;e y\u00fckseltin.<br \/>\n*   <strong>NVIDIA S\u00fcr\u00fcc\u00fc Uyu\u015fmazl\u0131klar\u0131:<\/strong> <code>nvidia-smi<\/code> komutu hata veriyorsa veya PyTorch GPU&#8217;yu tan\u0131m\u0131yorsa, s\u00fcr\u00fcc\u00fclerin ve CUDA Toolkit&#8217;in do\u011fru \u015fekilde y\u00fcklendi\u011finden ve ortam de\u011fi\u015fkenlerinin ayarland\u0131\u011f\u0131ndan emin olun. Gerekirse s\u00fcr\u00fcc\u00fcleri yeniden y\u00fckleyin.<br \/>\n*   <strong>Ba\u011f\u0131ml\u0131l\u0131k \u00c7ak\u0131\u015fmalar\u0131:<\/strong> Sanal ortam kullanmak bu sorunu b\u00fcy\u00fck \u00f6l\u00e7\u00fcde \u00f6nler. E\u011fer hala \u00e7ak\u0131\u015fmalar ya\u015f\u0131yorsan\u0131z, <code>pip freeze > requirements.txt<\/code> ile ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131z\u0131 listeleyin ve gereksiz paketleri kald\u0131r\u0131n.<br \/>\n*   <strong>A\u011f Sorunlar\u0131:<\/strong> API olarak da\u011f\u0131t\u0131rken d\u0131\u015far\u0131dan eri\u015filemiyorsa, g\u00fcvenlik duvar\u0131 (UFW) ayarlar\u0131n\u0131z\u0131 ve Nginx yap\u0131land\u0131rman\u0131z\u0131 kontrol edin.<\/p>\n<h3>Maliyet Y\u00f6netimi<\/h3>\n<p>GPU Droplet&#8217;leri, standart Droplet&#8217;lere g\u00f6re \u00f6nemli \u00f6l\u00e7\u00fcde daha pahal\u0131d\u0131r. Maliyetleri y\u00f6netmek i\u00e7in:<\/p>\n<p>*   <strong>Kullan\u0131m D\u0131\u015f\u0131 Oldu\u011funda Kapat\u0131n:<\/strong> E\u011fer Droplet&#8217;i s\u00fcrekli kullanm\u0131yorsan\u0131z, DigitalOcean kontrol panelinden kapatarak (power off) yaln\u0131zca depolama i\u00e7in \u00fccret \u00f6dersiniz. A\u00e7\u0131k kald\u0131\u011f\u0131 s\u00fcrece GPU ve CPU i\u00e7in saatlik \u00fccretlendirme devam eder.<br \/>\n*   <strong>Do\u011fru Boyutu Se\u00e7in:<\/strong> \u0130htiya\u00e7lar\u0131n\u0131zdan daha b\u00fcy\u00fck bir Droplet se\u00e7meyin. Qwen-3&#8217;\u00fcn en k\u00fc\u00e7\u00fck modelini \u00e7al\u0131\u015ft\u0131rabiliyorsan\u0131z, daha b\u00fcy\u00fck bir GPU&#8217;ya yat\u0131r\u0131m yapman\u0131za gerek yoktur.<br \/>\n*   <strong>\u0130zleme:<\/strong> Kullan\u0131m al\u0131\u015fkanl\u0131klar\u0131n\u0131z\u0131 izleyerek gereksiz harcamalar\u0131 tespit edin.<\/p>\n<h3>Sonu\u00e7<\/h3>\n<p>Bu rehberde, DigitalOcean GPU Droplet&#8217;lerinde Qwen-3 b\u00fcy\u00fck dil modelini da\u011f\u0131tmak i\u00e7in gereken t\u00fcm temel ad\u0131mlar\u0131 ve en iyi uygulamalar\u0131 ele ald\u0131k. Bir Droplet&#8217;in olu\u015fturulmas\u0131ndan, NVIDIA s\u00fcr\u00fcc\u00fclerinin ve CUDA Toolkit&#8217;in kurulumuna, Python ortam\u0131n\u0131n haz\u0131rlanmas\u0131na ve Qwen-3 modelinin y\u00fcklenmesine kadar her a\u015famay\u0131 detayland\u0131rd\u0131k. Ayr\u0131ca, performans\u0131 art\u0131rmak i\u00e7in nicelendirme ve Flash Attention gibi optimizasyon tekniklerini ve Qwen-3&#8217;\u00fc bir web API olarak da\u011f\u0131tma se\u00e7ene\u011fini de inceledik.<\/p>\n<p>DigitalOcean&#8217;\u0131n eri\u015filebilir altyap\u0131s\u0131 ve Qwen-3&#8217;\u00fcn a\u00e7\u0131k kaynak do\u011fas\u0131, geli\u015ftiricilere ve ara\u015ft\u0131rmac\u0131lara g\u00fc\u00e7l\u00fc yapay zeka uygulamalar\u0131 olu\u015fturma konusunda b\u00fcy\u00fck bir esneklik sunmaktad\u0131r. Bu rehber, kendi Qwen-3 da\u011f\u0131t\u0131m\u0131n\u0131z\u0131 ba\u015far\u0131yla ger\u00e7ekle\u015ftirmeniz ve yapay zeka projelerinize h\u0131z kazand\u0131rman\u0131z i\u00e7in sa\u011flam bir temel sa\u011flam\u0131\u015ft\u0131r. Art\u0131k kendi deneylerinizi yapmaya, modeli farkl\u0131 g\u00f6revler i\u00e7in kullanmaya ve belki de model \u00fczerinde ince ayar (fine-tuning) yapmaya haz\u0131rs\u0131n\u0131z. Yapay zekan\u0131n sundu\u011fu s\u0131n\u0131rs\u0131z olas\u0131l\u0131klar\u0131 ke\u015ffetmeye devam edin!<\/body><\/p>\n","protected":false},"excerpt":{"rendered":"DigitalOcean GPU Droplet&#8217;lerinde Qwen-3 Da\u011f\u0131t\u0131m\u0131: Kapsaml\u0131 Bir Rehber\nBu kapsaml\u0131 teknik makale, DigitalOcean&#8217;\u0131n g\u00fc\u00e7l\u00fc GPU Droplet&#8217;leri \u00fcz","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1401],"tags":[],"class_list":{"0":"post-37428","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-git","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>DigitalOcean GPU Droplet&#039;lerinde Qwen-3 Da\u011f\u0131t\u0131m\u0131: Kapsaml\u0131 Bir Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/digitalocean-gpu-dropletlerinde-qwen-3-dagitimi-kapsamli-bir-rehber\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"DigitalOcean GPU Droplet&#039;lerinde Qwen-3 Da\u011f\u0131t\u0131m\u0131: Kapsaml\u0131 Bir Rehber\" \/>\n<meta property=\"og:description\" content=\"DigitalOcean GPU Droplet&#039;lerinde Qwen-3 Da\u011f\u0131t\u0131m\u0131: Kapsaml\u0131 Bir Rehber Bu kapsaml\u0131 teknik makale, DigitalOcean&#039;\u0131n g\u00fc\u00e7l\u00fc GPU Droplet&#039;leri \u00fcz\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/digitalocean-gpu-dropletlerinde-qwen-3-dagitimi-kapsamli-bir-rehber\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2026-01-04T09:41:01+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"26 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/digitalocean-gpu-dropletlerinde-qwen-3-dagitimi-kapsamli-bir-rehber\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/digitalocean-gpu-dropletlerinde-qwen-3-dagitimi-kapsamli-bir-rehber\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"DigitalOcean GPU Droplet&#8217;lerinde Qwen-3 Da\u011f\u0131t\u0131m\u0131: Kapsaml\u0131 Bir Rehber\",\"datePublished\":\"2026-01-04T09:41:01+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/digitalocean-gpu-dropletlerinde-qwen-3-dagitimi-kapsamli-bir-rehber\/\"},\"wordCount\":3775,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"Git\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/digitalocean-gpu-dropletlerinde-qwen-3-dagitimi-kapsamli-bir-rehber\/#respond\"]}],\"copyrightYear\":\"2026\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/digitalocean-gpu-dropletlerinde-qwen-3-dagitimi-kapsamli-bir-rehber\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/digitalocean-gpu-dropletlerinde-qwen-3-dagitimi-kapsamli-bir-rehber\/\",\"name\":\"DigitalOcean GPU Droplet'lerinde Qwen-3 Da\u011f\u0131t\u0131m\u0131: Kapsaml\u0131 Bir Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2026-01-04T09:41:01+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/digitalocean-gpu-dropletlerinde-qwen-3-dagitimi-kapsamli-bir-rehber\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/digitalocean-gpu-dropletlerinde-qwen-3-dagitimi-kapsamli-bir-rehber\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/digitalocean-gpu-dropletlerinde-qwen-3-dagitimi-kapsamli-bir-rehber\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"DigitalOcean GPU Droplet&#8217;lerinde Qwen-3 Da\u011f\u0131t\u0131m\u0131: Kapsaml\u0131 Bir Rehber\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"DigitalOcean GPU Droplet'lerinde Qwen-3 Da\u011f\u0131t\u0131m\u0131: Kapsaml\u0131 Bir Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/digitalocean-gpu-dropletlerinde-qwen-3-dagitimi-kapsamli-bir-rehber\/","og_locale":"tr_TR","og_type":"article","og_title":"DigitalOcean GPU Droplet'lerinde Qwen-3 Da\u011f\u0131t\u0131m\u0131: Kapsaml\u0131 Bir Rehber","og_description":"DigitalOcean GPU Droplet'lerinde Qwen-3 Da\u011f\u0131t\u0131m\u0131: Kapsaml\u0131 Bir Rehber Bu kapsaml\u0131 teknik makale, DigitalOcean'\u0131n g\u00fc\u00e7l\u00fc GPU Droplet'leri \u00fcz","og_url":"https:\/\/fatihsoysal.com\/blog\/digitalocean-gpu-dropletlerinde-qwen-3-dagitimi-kapsamli-bir-rehber\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2026-01-04T09:41:01+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"26 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/digitalocean-gpu-dropletlerinde-qwen-3-dagitimi-kapsamli-bir-rehber\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/digitalocean-gpu-dropletlerinde-qwen-3-dagitimi-kapsamli-bir-rehber\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"DigitalOcean GPU Droplet&#8217;lerinde Qwen-3 Da\u011f\u0131t\u0131m\u0131: Kapsaml\u0131 Bir Rehber","datePublished":"2026-01-04T09:41:01+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/digitalocean-gpu-dropletlerinde-qwen-3-dagitimi-kapsamli-bir-rehber\/"},"wordCount":3775,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["Git"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/digitalocean-gpu-dropletlerinde-qwen-3-dagitimi-kapsamli-bir-rehber\/#respond"]}],"copyrightYear":"2026","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/digitalocean-gpu-dropletlerinde-qwen-3-dagitimi-kapsamli-bir-rehber\/","url":"https:\/\/fatihsoysal.com\/blog\/digitalocean-gpu-dropletlerinde-qwen-3-dagitimi-kapsamli-bir-rehber\/","name":"DigitalOcean GPU Droplet'lerinde Qwen-3 Da\u011f\u0131t\u0131m\u0131: Kapsaml\u0131 Bir Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2026-01-04T09:41:01+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/digitalocean-gpu-dropletlerinde-qwen-3-dagitimi-kapsamli-bir-rehber\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/digitalocean-gpu-dropletlerinde-qwen-3-dagitimi-kapsamli-bir-rehber\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/digitalocean-gpu-dropletlerinde-qwen-3-dagitimi-kapsamli-bir-rehber\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"DigitalOcean GPU Droplet&#8217;lerinde Qwen-3 Da\u011f\u0131t\u0131m\u0131: Kapsaml\u0131 Bir Rehber"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/37428","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=37428"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/37428\/revisions"}],"predecessor-version":[{"id":37429,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/37428\/revisions\/37429"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=37428"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=37428"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=37428"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}