Contoh Penggunaan API Terbaru dan Kode Sampel Microsoft.Windows.AI: Menyelami Kedalaman Windows Copilot Runtime
1. Pendahuluan: Era Baru Windows di Mana AI Terintegrasi Secara Asli
Dalam beberapa tahun terakhir, evolusi teknologi AI sangat luar biasa, dan telah terjadi pergeseran paradigma yang cepat dari pemanfaatan model bahasa besar (LLM) di cloud menuju inferensi AI pada perangkat edge (PC lokal). Inti dari hal ini adalah “Windows Copilot Runtime” yang disediakan oleh Microsoft untuk Windows 11, dan API “Microsoft.Windows.AI” untuk mengoperasikannya.
Pengembangan aplikasi menggunakan API cloud (seperti OpenAI atau Azure OpenAI) memang mudah, namun selalu diiringi dengan tantangan terkait latensi, privasi, dan biaya yang berkelanjutan. Di sisi lain, dengan menjalankan model AI secara lokal, Anda dapat mewujudkan aplikasi dengan latensi yang sangat rendah yang berfungsi bahkan saat offline, tanpa perlu mengirimkan data sensitif keluar dari perangkat.
Artikel ini memberikan panduan yang sangat mendetail mengenai metode implementasi fitur AI lokal, yang akan menjadi keharusan dalam pengembangan aplikasi Windows di masa depan, lengkap dengan contoh kode praktis dalam C# dan C++, mulai dari arsitektur hingga penyesuaian performa. Kami tidak hanya sekadar memanggil API, tetapi juga akan mendalami detail teknis tingkat lanjut seperti pemanfaatan perangkat keras di baliknya (NPU dan GPU), serta integrasinya dengan DirectML.
2. Gambaran Umum Arsitektur dan Windows Copilot Runtime
Windows Copilot Runtime adalah serangkaian tumpukan AI yang dirancang agar pengembang dapat dengan mudah mengintegrasikan model AI pada Windows, sekaligus mendapatkan performa terbaik. Runtime ini mengabstraksi akselerasi perangkat keras pada tingkat OS dan menyediakan antarmuka terpadu bagi para pengembang.
Seperti yang ditunjukkan pada diagram arsitektur di atas, aplikasi dapat mengakses secara langsung model bahasa berskala kecil (SLM: seperti Phi-Silica) yang tertanam dalam OS dengan menggunakan API Microsoft.Windows.AI tingkat tinggi. Selain itu, saat menggunakan model kustom, dimungkinkan juga untuk secara eksplisit memanfaatkan akselerasi perangkat keras melalui ONNX Runtime dan DirectML. Karena lapisan OS mengoptimalkan distribusi beban kerja ke CPU, GPU, dan NPU, pengembang dapat membangun aplikasi AI berkinerja tinggi tanpa perlu terlalu menyadari perbedaan perangkat keras.
3. Evaluasi Matematis Akselerasi Perangkat Keras dan NPU
PC Copilot+ terbaru dilengkapi dengan NPU (Neural Processing Unit), yaitu prosesor yang dikhususkan untuk pemrosesan AI. Performa NPU umumnya dievaluasi dalam TOPS (Tera Operations Per Second).
Dalam inferensi model AI, khususnya kemampuan komputasi Perkalian Matriks Umum (GEMM: General Matrix Multiply) sangat menentukan throughput. Performa puncak teoritis dari perangkat keras $P_{\text{peak}}$ diperkirakan dengan rumus berikut:
$$ P_{\text{peak}} = f \times N_{\text{cores}} \times N_{\text{MACs/core}} \times 2 $$Di mana:
- $f$ adalah frekuensi clock NPU (Hz)
- $N_{\text{cores}}$ adalah jumlah core di dalam NPU
- $N_{\text{MACs/core}}$ adalah jumlah unit MAC (Multiply-Accumulate) per core
- Angka $2$ di bagian akhir dikarenakan satu operasi MAC dihitung sebagai dua operasi (FLOPs/OPs) yaitu perkalian dan penjumlahan.
Sebagai contoh, untuk NPU dengan frekuensi 1.5GHz, 4 core, dan masing-masing core memiliki 4096 MACs,
$$ P_{\text{peak}} = 1.5 \times 10^9 \times 4 \times 4096 \times 2 \approx 49.15 \text{ TOPS} $$Secara matematis telah ditunjukkan bahwa performa ini memenuhi persyaratan PC Copilot+ Windows 11 yaitu 40 TOPS.
Selain itu, inferensi model AI, terutama untuk LLM (fase dekode), cenderung mengalami keterbatasan memori (Memory-Bound). Bandwidth teoritis memori sistem $BW$ dihitung sebagai berikut:
$$ BW = f_{\text{mem}} \times W_{\text{bus}} \times \frac{2}{8} $$Untuk memori LPDDR5x-8533 ($f_{\text{mem}} = 8533 \text{ MT/s}$) dan bus 128-bit ($W_{\text{bus}} = 128$), bandwidth-nya adalah sekitar $136 \text{ GB/s}$. Dalam pengoptimalan aplikasi AI, cara menghemat bandwidth ini sangatlah penting, sehingga Kuantisasi (Quantization) model yang akan dijelaskan nanti menjadi hal yang sangat krusial.
4. Pengaturan Lingkungan Pengembangan
Untuk menggunakan API Windows AI terbaru, Anda perlu menyiapkan lingkungan dan rantai alat (toolchain) berikut.
- OS: Windows 11 versi 24H2 atau yang lebih baru (Sangat disarankan perangkat yang dilengkapi NPU dan memenuhi persyaratan PC Copilot+)
- SDK: Windows App SDK (versi yang mendukung ekstensi AI, v1.5 atau yang lebih baru)
- Lingkungan Pengembangan: Visual Studio 2022 (v17.10 atau yang lebih baru), dengan beban kerja pengembangan asli C++ dan pengembangan desktop .NET
- Paket: Instal
Microsoft.Windows.AIdanMicrosoft.ML.OnnxRuntime.DirectMLmelalui NuGet
| |
5. [Deep Dive 1] Memanfaatkan Model Bahasa Lokal (Phi-Silica) Menggunakan C#
Windows Copilot Runtime mencakup “Phi-Silica”, sebuah model bahasa skala kecil dengan efisiensi tinggi yang dikembangkan oleh Microsoft, sebagai komponen standar OS. Hal ini memungkinkan pemrosesan bahasa alami tingkat lanjut (peringkasan teks, pembuatan kode, chatbot) dalam lingkungan offline tanpa harus mengunduh model berukuran gigabyte dari jaringan.
Berikut ini adalah contoh kode tingkat lanjut untuk membangun AI obrolan menggunakan C# dengan memanfaatkan namespace Microsoft.Windows.AI.Generative. Kode ini mendukung respons streaming dan menghasilkan teks secara real-time tanpa memblokir utas (thread) UI.
| |
5.1 Penjelasan Arsitektur pada Implementasi C#
Inti dari kode ini adalah verifikasi prapelaksanaan oleh LanguageModel.CheckAvailabilityAsync() dan pembuatan streaming asinkron oleh GenerateResponseStreamAsync. Saat Copilot Runtime yang berjalan di latar belakang OS menerima panggilan API ini, ia secara internal meluncurkan ONNX Runtime dan memilih Execution Provider yang optimal (untuk banyak PC terbaru, DirectML + NPU) berdasarkan konfigurasi sistem.
Pengembang tidak perlu memikirkan bentuk tensor model, implementasi tokenizer, atau manajemen memori KV cache sama sekali, dan dapat mengintegrasikan alur inferensi AI mutakhir ke dalam aplikasi hanya dengan beberapa baris kode C#.
6. [Deep Dive 2] Inferensi Berkecepatan Tinggi dari Model Kustom Menggunakan C++ dan DirectML
Saat menangani domain tertentu (seperti segmentasi gambar eksklusif, pengenalan suara, model deteksi objek kustom, dll.) yang tidak dapat dicakup hanya oleh model bahasa standar OS, pengembang perlu berinteraksi langsung dengan ONNX Runtime dan DirectML yang berada di lapisan bawah Microsoft.Windows.AI.
Dengan menggunakan C++, manajemen memori dapat dioptimalkan secara ekstrem untuk mendapatkan performa puncak dari NPU/GPU. Berikut adalah implementasi inti dari inisialisasi tingkat lanjut dan alur inferensi untuk mengeksekusi model kustom format ONNX (misalnya: YOLOv8) dalam C++ menggunakan DirectML.
| |
6.1 Pentingnya Manajemen Memori dan Inferensi Zero-Copy dalam C++
Keuntungan terbesar menggunakan DirectML di C++ adalah kemampuannya untuk berintegrasi secara erat dengan DirectX 12 (DX12). Kode di atas menyertakan penyalinan data dari memori CPU standar untuk tujuan edukasi, tetapi dalam aplikasi mesin game atau pemrosesan video yang sebenarnya, ada banyak kasus di mana gambar (texture) sudah disimpan dalam ruang memori GPU atau NPU menggunakan DX12.
Dalam hal ini, Anda dapat memanfaatkan fungsionalitas binding tingkat lanjut dari OrtDmlApi untuk secara langsung memetakan sumber daya DX12 sebagai tensor ONNX Runtime guna mewujudkan “Inferensi Zero-Copy”. Hal ini sepenuhnya mengeliminasi biaya tambahan transfer data antar bus PCIe (konsumsi bandwidth $BW$ yang telah disebutkan sebelumnya), dan secara dramatis meningkatkan frame rate dalam pemrosesan video real-time.
7. Optimasi Performa dan Praktik Terbaik
Berikut ini adalah ringkasan strategi pengoptimalan yang sangat penting ketika mengembangkan aplikasi AI kelas atas dengan memanfaatkan Windows AI API dan DirectML.
7.1 Kuantisasi Model (Quantization) dan Olive Toolkit
Untuk mengeluarkan kekuatan sejati NPU, sebuah keharusan mutlak untuk mengkuantisasi bobot dan aktivasi model AI dari FP32 (presisi tunggal floating-point) ke INT8 atau INT4. Arsitektur NPU sangat dioptimalkan untuk operasi bilangan bulat, dan bila dibandingkan dengan FP32, INT8 secara teoritis dapat memberikan throughput 4 kali lebih besar dengan efisiensi daya yang jauh lebih tinggi.
Dengan menggunakan toolchain Olive (ONNX Live) yang disediakan oleh Microsoft, Anda dapat mengoptimalkan model seperti PyTorch secara otomatis untuk lingkungan Windows. Olive sangat mendukung pengoptimalan atensi (attention) khusus untuk model Transformer serta kompilasi graf per perangkat keras.
7.2 Trade-off antara Pemrosesan Batch vs Streaming Interaktif
Dalam pemanggilan API, menggabungkan beberapa permintaan inferensi untuk pemrosesan batch dapat meningkatkan efisiensi komputasi NPU. Namun, dalam antarmuka pengguna interaktif seperti chatbot, waktu hingga token pertama ditampilkan (TTFT: Time To First Token) lebih menentukan pengalaman pengguna (UX) dibandingkan dengan throughput. Oleh karena itu, dalam desain UI interaktif, pengaturan ukuran batch ke 1 dan memprioritaskan pembuatan streaming adalah praktik terbaik.
7.3 Sinkronisasi dengan Tugas Latar Belakang dan OS
Inferensi AI menghabiskan banyak daya lokal dan sumber daya sistem. Dengan berintegrasi bersama App Lifecycle API Windows, aplikasi diharuskan untuk menunda (Suspend) tugas inferensi berprioritas rendah atau membatasi konsumsi sumber daya saat berjalan di latar belakang.
Diagram sekuensial ini menunjukkan keindahan pemrosesan asinkron, di mana data mengalir tanpa henti dari perangkat keras NPU paling bawah ke lapisan presentasi aplikasi, tanpa memblokir utas (thread) UI sama sekali.
8. Prospek Masa Depan dan Evolusi AI Windows
API Microsoft.Windows.AI dan Copilot Runtime terus berkembang pesat secara progresif. Pergeseran paradigma berikut ini diharapkan dalam pembaruan masa depan untuk pengembang:
- Integrasi OS asali untuk API multimoda: Memproses secara sinkron dan tanpa hambatan bukan hanya teks, tetapi juga audio, gambar, dan bahkan siaran video langsung, untuk menyediakan inferensi AI lintas moda secara standar di tingkat OS.
- Dukungan tingkat sistem untuk RAG (Retrieval-Augmented Generation): Menghubungkan kumpulan dokumen pribadi dalam PC lokal atau indeks Pencarian Windows (Windows Search) dengan model AI di dalam kotak pasir OS yang aman, untuk membangun asisten AI pribadi yang sangat mutakhir dengan perlindungan privasi yang sempurna.
- Penskalaan sumber daya NPU yang dinamis: Ketika beberapa aplikasi AI berjalan secara bersamaan (misalnya, pembatalan kebisingan di latar belakang dan pembuatan kode di latar depan), penjadwal kernel Windows akan mengganti konteks eksekusi NPU secara dinamis untuk menjamin Quality of Service (QoS).
9. Kesimpulan: Masa Depan Aplikasi yang Diubah oleh AI Lokal
Copilot Runtime Windows 11 dan API Microsoft.Windows.AI telah membawa senjata “AI Lokal” yang sangat tangguh bagi semua pengembang Windows. Anda tidak lagi harus bergantung sepenuhnya pada API cloud. Sangat mungkin untuk menawarkan kepada pengguna sebuah pengalaman AI generasi mendatang yang menghilangkan latensi dan sangat melindungi privasi, sekaligus mampu beroperasi penuh bahkan tanpa koneksi internet (offline).
Dengan menerapkan pengintegrasian model bahasa standar sistem menggunakan C#, evaluasi performa matematis, serta pengetahuan tentang pengoptimalan perangkat keras ekstrem menggunakan C++ dan DirectML yang dijelaskan dalam artikel ini, Anda dapat menciptakan aplikasi Windows “Asli AI” (AI-native) generasi berikutnya dengan tangan Anda sendiri. Potensi tak terbatas yang ditawarkan oleh AI menanti tepat di balik kode yang Anda tulis.
※Catatan: Artikel ini ditulis berdasarkan versi pratinjau API dan spesifikasi terbaru pada bulan September 2026. Karena spesifikasi API dan persyaratan perangkat keras dapat berubah melalui pembaruan Windows, pastikan untuk selalu mengacu pada dokumentasi resmi Microsoft Learn saat melakukan implementasi.
