Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här guiden visar hur du anropar api:et för Windows App SDK Phi Silica-textsammanfattning direkt från Electron JavaScript med hjälp av genererade JS-bindningar.
Förutsättningar
Kontrollera att du har gjort så här innan du startar den här guiden:
- Installationen av utvecklingsmiljön har slutförts.
- Testad på en Copilot+ PC. Phi Silica kräver maskinvara som stöder den lokala språkmodellen.
Steg 1: Lägg till AI-funktionen
Phi Silica kräver begränsad systemAIModels kapacitet. Lägg till den i Package.appxmanifest inuti <Capabilities>:
<Capabilities>
<rescap:Capability Name="runFullTrust" />
<rescap:Capability Name="systemAIModels" />
</Capabilities>
När du har ändrat manifestet uppdaterar du felsökningsidentiteten:
npx winapp node add-electron-debug-identity
Steg 2: Anropa Phi Silica från elektronens huvudprocess
Importera de genererade bindningarna via #winapp/bindings, skapa en TextSummarizeroch anropa den i slutet av createWindow() för att kontrollera att allt fungerar:
Kräver
@microsoft/dynwinrt-codegen≥0.1.0-preview.8— se Kom igång med Electron för reservlösningar för äldre projekt.
// src/index.js (Electron main, CommonJS)
const {
AIFeatureReadyState,
LanguageModel,
TextSummarizer,
} = require('#winapp/bindings');
const callPhiSilica = async () => {
console.log('Summarizing with Phi Silica:');
const readyState = LanguageModel.getReadyState();
if (readyState !== AIFeatureReadyState.Ready && readyState !== AIFeatureReadyState.NotReady) {
console.log('Summary: Model is not available');
return;
}
if (readyState === AIFeatureReadyState.NotReady) {
await LanguageModel.ensureReadyAsync();
}
const languageModel = await LanguageModel.createAsync();
try {
const summarizer = TextSummarizer.createInstance(languageModel);
const result = await summarizer.summarizeParagraphAsync(
"The Windows App Development CLI lets Electron apps call Windows-native APIs from JavaScript. Package identity enables features such as notifications and background tasks."
);
console.log('Summary:', result.text);
} finally {
languageModel.close();
}
};
const createWindow = () => {
// ... existing window creation code ...
// Test the Phi Silica AI API
callPhiSilica();
};
Note
getReadyState() returnerar en av Ready, NotReady, DisabledByUsereller NotSupportedOnCurrentSystem. Anrop ensureReadyAsync() utlöser systemet för att ladda ned/initiera modellen om den inte är klar ännu.
Steg 3: Kör det
npm start
Kontrollera konsolens utdata – du bör se Phi Silica-sammanfattningen utskriven!
Om modellen inte är tillgänglig på enheten loggar funktionen "Summary: Model is not available". Kontrollera att du kör på maskinvara som stöds (Copilot+ PC) och att manifestet innehåller systemAIModels.
Härifrån kan du integrera sammanfattningen i din app, hur du vill – exponera den via ett förinläsningsskript till renderaren, koppla den till IPC-hanterare eller anropa den direkt i huvudprocessen.
Nästa steg
Grattis! Nu anropar du Phi Silica direkt från JavaScript – inget C#-tillägg, inget node-gyp byggsteg. 🎉
Nu är du redo att:
-
Paketera din app för distribution — skapa en MSIX som du kan distribuera (körmiljön
@microsoft/dynwinrtfinns redan i dindependencies).
Eller utforska andra guider:
- Visa ett meddelande från JavaScript – visa ett Windows App SDK meddelande via JS-bindningar.
- Anropa Windows API:er från JavaScript – välj en fil och läs dess bilddimensioner med hjälp av JS-bindningar.
-
Kör WinML från JavaScript – använd Windows App SDK ML-provideridentifiering med
onnxruntime-node. - Skapa en Phi Silica Addon – inbyggd C#-tilläggsmotsvarighet.
- Översikt över komma igång – gå tillbaka till huvudguiden.
Ytterligare resurser
-
winapp CLI-dokumentation – fullständig CLI-referens (
init,restore,node generate-bindings). - Exempel på Electron App – fullständigt fungerande exempel, inklusive JS-bindningar.
- @microsoft/dynwinrt – den körning som driver de genererade bindningarna.
- @microsoft/dynwinrt-codegen – kodgeneratorn.
Windows developer