Freigeben über


Phi Silica im Windows App SDK

Verwenden Sie das Windows App SDK, um Ihre Windows-App mit Gerätesprachmodellen zu verbinden, einschließlich Phi Silica, unser bisher leistungsstärkstes lokales Sprachmodell, das für NPU optimiert ist.

Zum Lieferumfang des Windows App SDK gehören mehrere KI-APIs (Künstliche Intelligenz), die den Zugriff auf diese Modelle für die lokale Verarbeitung und Generierung von Chats, mathematische Lösungen, die Generierung von Code, Schlussfolgerungen aus Texten und vieles mehr ermöglichen.

Wichtig

Der experimentelle Kanal des Windows App SDK enthält APIs und Features in frühen Entwicklungsphasen. Alle APIs im experimentellen Kanal unterliegen umfangreichen Überarbeitungen und Breaking Changes und können jederzeit aus nachfolgenden Versionen entfernt werden. Sie werden nicht für die Verwendung in Produktionsumgebungen unterstützt, und Apps, die experimentelle Features verwenden, können nicht im Microsoft Store veröffentlicht werden.

Voraussetzungen

Verantwortungsvolle KI

Phi Silica bietet Entwicklern ein leistungsstarkes, vertrauenswürdiges Modell zum Erstellen von Apps mit sicheren und geschützten KI-Erfahrungen. Die folgenden Schritte wurden unternommen, um sicherzustellen, dass Phi Silica vertrauenswürdig, sicher und verantwortungsvoll entwickelt wurde.

  • Umfassende Tests und Bewertungen der Modellqualität, um potenzielle Risiken zu identifizieren und zu mindern.
  • Erstellung einer Phi Silica-Modellkarte, die die Stärken und Einschränkungen des Modells beschreibt und Klarheit über die vorgesehenen Anwendungen bietet.
  • Inkrementelles Rollout von experimentellen Phi Silica-Versionen. Nach der finalen experimentellen Version von Phi Silica wird die Einführung auf signierte Apps ausgeweitet, um sicherzustellen, dass Malware-Scans auf Anwendungen mit lokalen Modellfähigkeiten angewendet wurden.
  • Stellen Sie benutzerdefinierte Steuerelemente über den Capability Access Manager in den Einstellungen bereit, damit Benutzer das Modell auf dem Gerät für das System, den Benutzer oder die App deaktivieren können.

Hinweis

Die Inhaltsmoderation befindet sich derzeit in der Entwicklung.

Zusätzlich zu den oben genannten Punkten empfehlen wir, die bewährten Methoden zu überprüfen, die unter Verantwortungsvolle generative KI-Entwicklung unter Windows beschrieben werden.

Was kann ich mit Phi Silica und dem Windows App SDK tun?

Mit einem lokalen Phi Silica-Sprachmodell und dem Windows App SDK können Sie Textantworten für Benutzeraufforderungen generieren.

Abrufen einer einzelnen, vollständigen Antwort basierend auf einer Zeichenfolgenaufforderung

In diesem Beispiel wird gezeigt, wie Sie eine Antwort auf eine F&A-Eingabeaufforderung generieren, bei der die vollständige Antwort generiert wird, bevor das Ergebnis zurückgegeben wird.

  1. Zunächst stellen wir sicher, dass das Sprachmodell verfügbar ist, indem wir die IsAvailable-Methode aufrufen und darauf warten, dass die MakeAvailableAsync-Methode erfolgreich zurückgegeben wird.
  2. Sobald das Sprachmodell verfügbar ist, erstellen wir ein LanguageModel-Objekt, um darauf zu verweisen.
  3. Schließlich senden wir eine Zeichenfolgenaufforderung an das Modell mithilfe der GenerateResponseAsync-Methode, die das vollständige Ergebnis zurückgibt.
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); 

Die von diesem Beispiel generierte Antwort lautet:

The molecular formula for glucose is C6H12O6.

Abrufen eines Datenstroms partieller Ergebnisse basierend auf einer Zeichenfolgenaufforderung

In diesem Beispiel wird gezeigt, wie eine Antwort auf eine F&A-Eingabeaufforderung generiert wird, in der die Antwort als Datenstrom von Teilergebnissen zurückgegeben wird.

  1. Zunächst erstellen wir ein LanguageModel-Objekt, um auf das lokale Sprachmodell zu verweisen (wir haben im vorherigen Codeausschnitt bereits überprüft, ob das Sprachmodell vorhanden ist).
  2. Anschließend rufen wir LanguageModelResponse asynchron in einem Aufruf von GenerateResponseWithProgressAsync ab und schreiben sie in die Konsole, während die Antwort generiert wird.
using Microsoft.Windows.AI.Generative.LanguageModel languageModel = 
     await Microsoft.Windows.AI.Generative.LanguageModel.CreateAsync(); 
 
 string prompt = "Provide the molecular formula for glucose."; 
 
  AsyncOperationProgressHandler<Microsoft.Windows.AI.Generative.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);

Zusätzliche Ressourcen

Zugreifen auf Dateien und Ordner mit Windows App SDK und WinRT-APIs