Mulai menggunakan Phi Silica di SDK Aplikasi Windows
Penting
Fitur ini belum tersedia. Hal ini diharapkan untuk dikirim dalam rilis saluran eksperimental yang akan datang dari SDK Aplikasi Windows.
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.
Phi Silica adalah model bahasa lokal yang dapat Anda integrasikan ke dalam aplikasi Windows menggunakan SDK Aplikasi Windows.
Sebagai model bahasa lokal microsoft yang paling kuat yang disetel NPU, Phi Silica dioptimalkan untuk efisiensi dan performa pada perangkat PC Windows Copilot+ sambil tetap menawarkan banyak kemampuan yang ditemukan dalam Model Bahasa Besar (LLM).
Tingkat pengoptimalan ini eksklusif untuk model dalam SDK Aplikasi Windows dan tidak tersedia di versi Phi lainnya.
Untuk detail API, lihat API ref untuk Phi Silica di SDK Aplikasi Windows.
Tip
Berikan umpan balik tentang API ini dan fungsionalitasnya dengan membuat Masalah baru di repositori GitHub SDK Aplikasi Windows. (Pastikan Anda menyertakan Phi Silica dalam judul!)
- PC CoPilot+ berisi prosesor Qualcomm Snapdragon® X Elite.
Dengan model bahasa Phi Silica lokal dan SDK Aplikasi Windows Anda dapat menghasilkan respons teks terhadap permintaan pengguna.
Contoh ini menunjukkan cara menghasilkan respons ke permintaan Tanya Jawab tempat respons penuh dihasilkan sebelum hasilnya dikembalikan.
- Pertama, kami memastikan model bahasa tersedia dengan memanggil metode IsAvailable dan menunggu metode MakeAvailableAsync berhasil dikembalikan.
- Setelah model bahasa tersedia, kami membuat objek LanguageModel untuk mereferensikannya.
- 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.
Contoh ini menunjukkan cara menghasilkan respons terhadap perintah Tanya Jawab tempat respons dikembalikan sebagai aliran hasil parsial.
- Pertama, kita membuat objek LanguageModel untuk mereferensikan model bahasa lokal (kita sudah memeriksa keberadaan model bahasa di cuplikan sebelumnya).
- 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;
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 (kami juga merekomendasikan untuk meninjau praktik terbaik yang dijelaskan dalam Pengembangan AI Generatif bertanggung jawab di Windows).
- 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.
- Berikan model AI lokal untuk con mode tenda ration yang mengidentifikasi dan memfilter konten berbahaya dalam input dan output Phi Silica yang dihasilkan AI. Model kon mode tenda rasi lokal ini didasarkan pada model Azure AI Content Safety untuk moderasi teks dan memberikan performa yang sama.
Penting
Tidak ada sistem keamanan konten yang sempurna dan kesalahan sesekali dapat terjadi, jadi kami sarankan untuk mengintegrasikan alat dan praktik Responsible AI (RAI) tambahan. Untuk detail selengkapnya, lihat Pengembangan AI Generatif yang Bertanggung Jawab di Windows.
Mengakses file dan folder dengan API SDK Aplikasi Windows dan WinRT