Bagikan melalui


Phi Silica di SDK Aplikasi Windows

Gunakan SDK Aplikasi Windows untuk menyambungkan aplikasi Windows Anda ke model bahasa di perangkat, termasuk Phi Silica, model bahasa lokal kami yang paling kuat yang disetel NPU.

SDK Aplikasi Windows akan dikirim dengan beberapa API Kecerdasan Buatan (AI) untuk mengakses model ini dan menyediakan pemrosesan dan pembuatan obrolan lokal, pemecahan matematika, pembuatan kode, penalaran teks, dan banyak lagi.

Penting

Saluran eksperimental SDK Aplikasi Windows mencakup API dan fitur pada tahap awal pengembangan. Semua API di saluran eksperimental tunduk pada revisi yang luas dan melanggar perubahan dan dapat dihapus dari rilis berikutnya kapan saja. Mereka tidak didukung untuk digunakan di lingkungan produksi, dan aplikasi yang menggunakan fitur eksperimental tidak dapat diterbitkan ke Microsoft Store.

Prasyarat

AI yang Bertanggung Jawab

Phi Silica memberi pengembang model yang kuat dan dapat dipercaya untuk membangun aplikasi dengan pengalaman AI yang aman dan aman. Langkah-langkah berikut telah diambil untuk memastikan Phi Silica dapat dipercaya, aman, dan dibangun secara bertanggung jawab.

  • Pengujian dan evaluasi menyeluruh dari kualitas model untuk mengidentifikasi dan mengurangi potensi risiko.
  • Pembuatan kartu model Phi Silica yang menjelaskan kekuatan dan batasan model dan memberikan kejelasan tentang penggunaan yang dimaksudkan.
  • Peluncuran inkremental dari rilis eksperimental Phi Silica. Setelah rilis eksperimental Phi Silica akhir, peluncuran akan diperluas ke aplikasi yang ditandatangani untuk memastikan bahwa pemindaian malware telah diterapkan ke aplikasi dengan kemampuan model lokal.
  • Berikan kontrol pelanggan melalui Pengelola Akses Kemampuan di Pengaturan sehingga pengguna dapat menonaktifkan model pada perangkat untuk sistem, pengguna, atau aplikasi.

Catatan

Con mode tenda ration saat ini sedang dalam pengembangan.

Sebagai tambahan di atas, sebaiknya tinjau praktik terbaik yang dijelaskan dalam Pengembangan AI Generatif yang Bertanggung Jawab di Windows.

Apa yang bisa saya lakukan dengan Phi Silica dan SDK Aplikasi Windows?

Dengan model bahasa Phi Silica lokal dan SDK Aplikasi Windows Anda dapat menghasilkan respons teks terhadap permintaan pengguna.

Mendapatkan respons lengkap tunggal berdasarkan perintah string

Contoh ini menunjukkan cara menghasilkan respons ke permintaan Tanya Jawab tempat respons penuh dihasilkan sebelum hasilnya dikembalikan.

  1. Pertama, kami memastikan model bahasa tersedia dengan memanggil metode IsAvailable dan menunggu metode MakeAvailableAsync berhasil dikembalikan.
  2. Setelah model bahasa tersedia, kami membuat objek LanguageModel untuk mereferensikannya.
  3. Terakhir, kami mengirimkan permintaan string ke model menggunakan metode GenerateResponseAsync , yang mengembalikan hasil lengkap.
using Microsoft.Windows.AI.Generative; 
 
 
if (!LanguageModel.IsAvailable()) 
{ 
   var op = await LanguageModel.MakeAvailableAsync(); 
} 
 
using LanguageModel languageModel = await LanguageModel.CreateAsync(); 
 
string prompt = "Provide the molecular formula for glucose."; 
 
var result = await languageModel.GenerateResponseAsync(prompt); 
 
Console.WriteLine(result.Response); 
using namespace winrt::Microsoft::Windows::AI::Generative;

if (!LanguageModel::IsAvailable()) 
{
    auto op = LanguageModel::MakeAvailableAsync().get();
}

auto languageModel = LanguageModel::CreateAsync().get();

std::string prompt = "Provide the molecular formula for glucose.";

auto result = languageModel.GenerateResponseAsync(prompt).get();

std::cout << result.Response << std::endl;

Respons yang dihasilkan oleh contoh ini adalah:

The molecular formula for glucose is C6H12O6.

Mendapatkan aliran hasil parsial berdasarkan perintah string

Contoh ini menunjukkan cara menghasilkan respons terhadap perintah Tanya Jawab tempat respons dikembalikan sebagai aliran hasil parsial.

  1. Pertama, kita membuat objek LanguageModel untuk mereferensikan model bahasa lokal (kita sudah memeriksa keberadaan model bahasa di cuplikan sebelumnya).
  2. Kemudian kami secara asinkron mengambil LanguageModelResponse dalam panggilan ke GenerateResponseWithProgressAsync dan menulisnya ke konsol saat respons dihasilkan.
using Microsoft.Windows.AI.Generative; 

using LanguageModel languageModel = await LanguageModel.CreateAsync(); 
 
 string prompt = "Provide the molecular formula for glucose."; 
 
  AsyncOperationProgressHandler<LanguageModelResponse, string> 
 progressHandler = (asyncInfo, delta) => 
 { 
     Console.WriteLine($"Progress: {delta}"); 
     Console.WriteLine($"Response so far: {asyncInfo.GetResults().Response()}"); 
 }; 
 
var asyncOp = languageModel.GenerateResponseWithProgressAsync(prompt); 
 
 asyncOp.Progress = progressHandler; 
 
 var result = await asyncOp;  
 
 Console.WriteLine(result.Response);
using namespace winrt::Microsoft::Windows::AI::Generative;

auto languageModel = LanguageModel::CreateAsync().get();

std::string prompt = "Provide the molecular formula for glucose.";

AsyncOperationProgressHandler<LanguageModelResponse, std::string> progressHandler = 
    [](const IAsyncOperationWithProgress<LanguageModelResponse, std::string>& asyncInfo, const std::string& delta) 
    { 
        std::cout << "Progress: " << delta << std::endl; 
        std::cout << "Response so far: " << asyncInfo.GetResults().Response() << std::endl; 
    };

auto asyncOp = languageModel.GenerateResponseWithProgressAsync(prompt);

asyncOp.Progress(progressHandler); 

auto result = asyncOp.get();

std::cout << result.Response() << std::endl;

Sumber Daya Tambahan:

Mengakses file dan folder dengan API SDK Aplikasi Windows dan WinRT