Genel
Yapay zekayı Windows istemci uygulamamla nasıl tümleştirebilirim?
Yapay zekayı Windows uygulamanıza tümleştirme iki birincil yöntemle elde edilebilir: yerel model veya bulut tabanlı model. Yerel model seçeneği için, TensorFlow veya PyTorch gibi platformları kullanarak önceden var olan bir modeli kullanma veya kendi modelinizi eğitme ve ardından OnnxRuntime aracılığıyla bunu uygulamanıza ekleme olanağına sahip olursunuz. Windows üzerinde
Yapay zeka özelliklerini kullanmak için en son Windows 11 sürümüne ve NPU'ya sahip bir Copilot+ PC ihtiyacım var mı?
Yapay zeka iş yüklerini çalıştırmanın birçok yolu vardır, hem modelleri Windows cihazınıza yerel olarak yükleyip çalıştırarak hem de bulut tabanlı modelleri çalıştırarak (bkz. AI ile Windows'da çalışmaya başlama), ancak Windows AI API'leri tarafından desteklenen yapay zeka özellikleri şu anda bir NPU ile Copilot+ PC gerektirir.
Windows istemci uygulamalarında yapay zeka geliştirmek için en iyi programlama dilleri hangisidir?
Tercih ettiğiniz herhangi bir programlama dilini kullanabilirsiniz. Örneğin, C# Windows istemci uygulamaları oluşturmak için yaygın olarak kullanılır. Düşük düzeyli ayrıntılar üzerinde daha fazla denetime ihtiyacınız varsa, C++ mükemmel bir seçenektir. Alternatif olarak, Python kullanmayı da düşünebilirsiniz. Windows üzerinde Linux tabanlı yapay zeka araçlarını çalıştırmak için Linux için Windows Alt Sistemi (WSL) de kullanabilirsiniz.
Windows istemci uygulamaları için en iyi yapay zeka çerçeveleri nelerdir?
OnnxRuntime kullanmanızı öneririz.
Windows istemci uygulamalarında yapay zeka kullanırken veri gizliliği ve güvenliğini nasıl işlemem gerekir?
Yapay zeka destekli uygulamalar geliştirirken kullanıcı verilerinin gizliliğine ve güvenliğine saygı gösterin. Veri toplamadan önce hassas verileri şifreleme, güvenli bağlantılar kullanma ve kullanıcı onayı alma gibi veri işleme için en iyi yöntemleri izlemeniz gerekir. Ayrıca verileri nasıl kullandığınız konusunda şeffaf olmanız ve kullanıcılara verileri üzerinde denetim sahibi olmanız gerekir. Windows üzerinde Sorumlu Üretken Yapay Zeka Uygulamaları ve Özellikler Geliştirme'yi de okuduğunuzdan emin olun.
Windows istemci uygulamalarında yapay zeka çalıştırmaya yönelik sistem gereksinimleri nelerdir?
Yapay zeka kullanan Windows uygulamaları için sistem gereksinimleri, yapay zeka modelinin karmaşıklığı ve kullanılan donanım hızlandırmaya bağlıdır. Basit modeller için modern bir CPU yeterli olabilir, ancak daha karmaşık modeller için GPU veya NPU gerekebilir. Ayrıca uygulamanızın bellek ve depolama gereksinimlerinin yanı sıra bulut tabanlı yapay zeka hizmetleri için gereken ağ bant genişliğini de göz önünde bulundurmalısınız.
Windows istemci uygulamalarında yapay zeka performansını iyileştirme
Windows uygulamalarında yapay zeka performansını iyileştirmek için model çıkarımlarını hızlandırmak için GPU'lar veya NPU'lar gibi donanım hızlandırmayı kullanmayı düşünmelisiniz. Windows Copilot+ dizüstü bilgisayarlar yapay zeka iş yükleri için iyileştirilmiştir ve yapay zeka görevleri için önemli bir performans artışı sağlayabilir. Ayrıca Visual Studio Code için Foundry Toolkit genel bakışını okuyun.
Windows istemci uygulamamda önceden eğitilmiş yapay zeka modellerini kullanabilir miyim?
Evet, Windows uygulamanızda önceden eğitilmiş yapay zeka modellerini kullanabilirsiniz. Önceden eğitilmiş modelleri İnternet'ten indirebilir veya önceden eğitilmiş modellere erişmek için bulut tabanlı bir yapay zeka hizmeti kullanabilirsiniz. Ardından, OnnxRuntime gibi bir çerçeve kullanarak bu modelleri uygulamanızla tümleştirebilirsiniz.
DirectML nedir?
DirectML, AMD, Intel, NVIDIA ve Qualcomm gibi satıcıların tüm DirectX 12 özellikli GPU'ları da dahil olmak üzere çok çeşitli desteklenen donanım ve sürücüler genelinde yaygın makine öğrenmesi görevleri için GPU hızlandırma sağlayan düşük düzeyli bir makine öğrenmesi API'sidir.
ONNX nedir?
Açık Sinir Ağı Exchange veya ONNX, ML modellerini temsil etmek için açık standart bir biçimdir. PyTorch, TensorFlow, SciKit-Learn, Keras, Chainer, MATLAB gibi popüler ML modeli çerçeveleri dışarı aktarılabilir veya standart ONNX biçimine dönüştürülebilir. ONNX biçimindeki model çeşitli platformlarda ve cihazlarda çalıştırılabilir. ONNX, ml modelini eğitildiğinden farklı bir biçimde kullanmak için iyidir.
ORT nedir?
OnnxRuntime veya ORT, donanım hızlandırıcılarını (cihaz CPU'ları, GPU'lar veya NPU'lar) destekleyen farklı çerçevelerde (PyTorch, TensorFlow vb.) modelleri yürütmeye yönelik birleşik bir çalışma zamanı aracıdır.
ONNX'in PyTorch veya TensorFlow gibi diğer ML çerçevelerinden farkı nedir?
PyTorch ve TensorFlow, yapay zeka uygulamalarında kullanılan derin öğrenme modellerini geliştirmek, eğitme ve çalıştırmak için kullanılır. PyTorch genellikle araştırma için kullanılır, TensorFlow genellikle endüstri dağıtımı için kullanılır ve ONNX, aralıkları kapatan ve gerektiğinde çerçeveler arasında geçiş yapmanıza ve platformlar arasında uyumlu hale getirmenize olanak sağlayan standartlaştırılmış bir model değişim biçimidir .
NPU nedir? CPU veya GPU'dan farkı nedir?
Sinir İşleme Birimi veya NPU, yapay zeka görevlerini gerçekleştirmek için özel olarak tasarlanmış özel bir yapay zeka yongasıdır. NPU'nun odağı CPU veya GPU'dan farklıdır. Merkezi İşlem Birimi veya CPU, bir bilgisayardaki birincil işlemcidir ve yönergelerin ve genel amaçlı hesaplamaların yürütülmesinden sorumludur. Grafik İşleme Birimi veya GPU, grafikleri işlemek için tasarlanmış ve paralel işleme için iyileştirilmiş özel bir işlemcidir. Video düzenleme ve oyun görevleri için karmaşık görüntüleri işleme yeteneğine sahiptir.
NPU'lar derin öğrenme algoritmalarını hızlandırmak için tasarlanmıştır ve cihazın daha verimli çalışabilmesi için bilgisayarın CPU veya GPU'sundan bazı işleri kaldırabilir. NPU'lar sinir ağı görevlerini hızlandırmak için tasarlanmıştır. Büyük miktarda veriyi paralel olarak işleme konusunda üstünlük sağlar ve bu da görüntü tanıma veya doğal dil işleme gibi yaygın yapay zeka görevleri için ideal olmalarını sağlar. Örneğin, bir görüntü tanıma görevi sırasında NPU nesne algılama veya görüntü hızlandırmadan sorumlu olabilirken, GPU görüntü işleme sorumluluğunu üstlenir.
Cihazımda ne tür CPU, GPU veya NPU olduğunu nasıl öğrenebilirim?
Windows cihazınızdaKI CPU, GPU veya NPU'nun türünü ve nasıl performans sergilediğini denetlemek için Görev Yöneticisi'ni (Ctrl + Shift + Esc) açın, ardından Performance sekmesini seçin; makinenizin CPU, Bellek, Wi-Fi, GPU ve/veya NPU'sunun yanı sıra hızıyla ilgili bilgileri de görebilirsiniz. kullanım oranı ve diğer veriler.
Windows ML nedir?
Windows ML (Machine Learning), uygulamanızın ONNX Çalışma Zamanı'nın paylaşılan sistem genelindeki bir kopyasını kullanmasını sağlar (ORT, yukarıya bakın) ve model çıkarımınızın Windows ekosistemindeki çok çeşitli CPU'lar, GPU'lar ve NPU'lar arasında iyileştirilmesini sağlamak için satıcıya özgü yürütme sağlayıcıları (IP'ler) dinamik olarak indirme desteği ekler, uygulamanızın ağır çalışma zamanlarını veya yürütme sağlayıcılarını taşımasını gerektirmeden gerçekleştirilebilir.
Yararlı yapay zeka kavramları
Büyük Dil Modeli (LLM) nedir?
LLM, genel amaçlı dil oluşturma ve anlama becerisiyle bilinen bir Machine Learning (ML) modeli türüdür. LLM'ler, hesaplama açısından yoğun bir kendi kendine denetimli ve yarı denetimli eğitim sürecinde çok miktarda metin belgesinden istatistiksel ilişkiler öğrenerek yetenekler edinen yapay sinir ağlarıdır. LLM'ler genellikle, bazı giriş metinleri verildiğinde, karşılık olarak tutarlı ve bağlamsal olarak ilgili cümleler oluşturma olasılığı en yüksek sözcükleri (veya "belirteçleri") oluşturan, üretken bir yapay zeka biçimi olan Metin Oluşturma için kullanılır. Ayrıca daha az parametreye ve daha sınırlı kapasiteye sahip, ancak daha verimli (daha az hesaplama kaynağı gerektiren), uygun maliyetli ve belirli etki alanları için ideal olabilecek Küçük Dil Modelleri (SLM' ler) vardır.
ML modeli eğitimi nedir?
Machine Learning model eğitimi, bir veri kümesini modele (LLM veya SLM) beslemeyi içerir ve modelin verilerden öğrenmesine olanak tanıyarak modelin bu verilere dayalı tahminler veya kararlar alabilmesini ve desenleri tanımasını sağlar. Ayrıca, performansını iyileştirmek için model parametrelerini yinelemeli olarak ayarlamayı da içerebilir.
Çıkarım Süreci nedir?
Yeni, görünmeyen veriler üzerinde tahminler veya sınıflandırmalar yapmak için eğitilmiş bir makine öğrenmesi modeli kullanma işlemine "Çıkarım" denir. Bir dil modeli bir veri kümesi üzerinde eğitildikten ve temel desenlerini ve ilişkilerini öğrendikte bu bilgiyi gerçek dünya senaryolarına uygulamaya hazır olur. Çıkarım, bir yapay zeka modelinin bir tahminde bulunmak veya bir görevi çözmek için eğitim sırasında öğrenilen bilgileri ne kadar iyi uygulayabileceğini gösteren bir testtir. Çıkarım için mevcut modeli kullanma işlemi, modeli geliştirmek ve parametrelerinde ince ayar yapmak için eğitim ve doğrulama verilerinin kullanılmasını gerektiren eğitim aşamasından farklıdır.
ML modelinin ince ayarlanması nedir?
Makine öğrenmesinde hassas ayarlama, önceden eğitilmiş bir modelin belirli bir görevi gerçekleştirmek için uyarlandığı önemli bir adımdır. Modeli sıfırdan eğitme yerine, ince ayarlama mevcut bir modelle başlar (genellikle büyük bir veri kümesinde eğitilir) ve daha küçük, göreve özgü bir veri kümesi kullanarak parametrelerini ayarlar. Model, hassas ayarlamalar yaparak göreve özgü özellikleri öğrenirken, eğitim öncesi sırasında edinilen genel bilgileri korur ve bu da belirli uygulamalar için iyileştirilmiş performans sağlar.
İstem mühendisliği nedir?
İstem mühendisliği, bir dil modelinin davranışını ve yanıtlarını şekillendirmek için üretken yapay zeka ile birlikte kullanılan stratejik bir yaklaşımdır. Bir dil modelinden (GPT-3 veya GPT-4 gibi) istenen sonucu elde etmek için giriş istemleri veya sorgular oluşturmayı içerir. Etkili bir istem tasarlayarak, ml modeline istediğiniz yanıt türünü üretmesi için yol gösterebilirsiniz. Teknikler arasında ifadeyi ayarlama, bağlam belirtme veya model çıkışını etkilemek için denetim kodları kullanma sayılabilir.
Donanım hızlandırma (ML modeli eğitimiyle ilgili) nedir?
Donanım hızlandırma, yapay zeka uygulamalarını genel amaçlı CPU'larla elde edilebilenden daha hızlı hale getirmek için tasarlanmış özel bilgisayar donanımının kullanımını ifade eder. Donanım hızlandırma, eğitim modelleri, tahminler yapma veya derin öğrenme iş yükleri için paralel işlemede üstün olan ayrılmış donanım bileşenlerine hesaplama boşaltma gibi makine öğrenmesi görevlerinin hızını, enerji verimliliğini ve genel performansını artırır. GPU'lar ve NPU'lar, donanım hızlandırıcılarına örnektir.
Uygulamalarında yapay zeka özelliklerini uygulamak isteyen Veri Bilimci, ML Mühendisi ve Uygulama Geliştirici arasındaki farklar nelerdir?
ML modellerini oluşturma ve kullanma işlemi üç ana rol içerir: Veri Bilimcileri: Sorunu tanımlama, verileri toplama ve analiz etme, ML algoritmasını seçme ve eğitme ve sonuçları değerlendirme ve yorumlamaktan sorumludur. Bu görevleri gerçekleştirmek için Python, R, Jupyter Notebook, TensorFlow, PyTorch ve scikit-learn gibi araçları kullanırlar. ML Mühendisleri: Ml modellerini üretim ortamlarında dağıtma, izleme ve bakımdan sorumludur. Ml modellerinin ölçeklenebilirliğini, güvenilirliğini ve güvenliğini sağlamak için Docker, Kubernetes, Azure ML, AWS SageMaker ve Google Cloud AI Platform gibi araçları kullanır. Uygulama Geliştiricileri: ML modellerini uygulama mantığı, kullanıcı arabirimi ve UX ile tümleştirmeden sorumludur. Windows, OnnxRuntime veya REST API'lerinde Microsoft Foundry gibi araçları kullanır ve kullanıcı giriş ve model çıkışını işler. Her rol farklı sorumluluklar ve beceriler içerir, ancak en iyi sonuçları elde etmek için bu roller arasında işbirliği ve iletişim gereklidir. Projenin boyutuna ve karmaşıklığına bağlı olarak, bu roller aynı kişi veya farklı ekipler tarafından gerçekleştirilebilir.