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.
Viktigt!
- Foundry Local är tillgängligt i förhandsversionen. Offentliga förhandsversioner ger tidig åtkomst till funktioner som är i aktiv distribution.
- Funktioner, metoder och processer kan ändra eller ha begränsade funktioner, före allmän tillgänglighet (GA).
Med Foundry Local SDK kan du skicka AI-funktioner i dina program som kan utnyttja lokala AI-modeller via ett enkelt och intuitivt API. SDK:n abstraherar bort komplexiteten i att hantera AI-modeller och ger en sömlös upplevelse för att integrera lokala AI-funktioner i dina program. Den här referensen dokumenterar SDK-implementeringar för JavaScript och C#. Fler språk kommer att läggas till i framtiden.
SDK:t kräver inte att Foundry Local CLI installeras på slutanvändarens dator, vilket gör att du kan skicka dina program utan ytterligare installationssteg för dina användare – dina program är fristående. De extra fördelarna med Foundry Local SDK är:
- Identifiering och optimering av maskinvara: Automatisk kapacitetsbedömning för GPU, NPU och CPU.
- Körningsproviderhantering (Windows): Automatisk nedladdning och registrering av lämpliga ONNX Runtime-körningsproviders (CUDA, Vitis, QNN, OpenVINO, TensorRT) baserat på enhetsfunktioner.
- Metallstöd via WebGpu (macOS): Internt stöd för att köra modeller på Apple Silicon med optimerad prestanda.
- Modellförvärv: Sömlös nedladdning från Foundry Model Catalog med versionshantering, uppdateringar och automatiskt maskinvaruoptimerat modellval samt stöd för reservfunktioner.
- Effektiv körning: Lägger till <20 MB i appstorlek, körs på enheter från mobiltelefoner till stationära datorer.
- OpenAI API-kompatibilitet: Enkel integrering med OpenAI-modeller och -verktyg.
- Valfri REST-server: Kör Foundry Local som en lokal tjänst som är tillgänglig för andra program.
JavaScript SDK-referens
Projektinställningar
Arkitekturen på hög nivå för Foundry Local SDK är följande:
SDK är en lätt omslutning runt ett Foundry Local Core C API (.dll/.so/.dylib) som tillhandahåller ett mer användarvänligt gränssnitt för JavaScript-utvecklare. SDK hanterar inläsning av det interna biblioteket, hantering av minne och konvertering av datatyper mellan JavaScript och C. Foundry Local Core C-API:et har två smaker men samma API-yta:
- WindowsML (WinML) – Specifikt för Windows som använder WindowsML för att hämta nödvändiga drivrutiner och körningstjänster för den tillgängliga maskinvaran. Detta är det rekommenderade alternativet för Windows-användare eftersom det ger bättre prestanda och kompatibilitet med ett brett utbud av maskinvara.
- Plattformsoberoende – kan användas i Windows, macOS och Linux. Det bör noteras att på macOS-enheter med Apple Silicon använder det plattformsoberoende SDK:t Apples Metal-ramverket för maskinvaruacceleration via ONNX-körningens WebGPU-exekveringsleverantör.
När du installerar Foundry Local SDK-paketet i projektet kan du välja att installera WinML- eller plattformsoberoende version.
Använd Foundry Local i ditt JavaScript-projekt genom att följa dessa Windows-specifika eller plattformsoberoende instruktioner (macOS/Linux/Windows):
- Skapa ett nytt JavaScript-projekt:
mkdir app-name cd app-name npm init -y npm pkg set type=module - Installera Foundry Local SDK-paketet:
npm install --winml foundry-local-sdk npm install openai
Snabbstart
Använd det här kodfragmentet för att kontrollera att SDK:et kan initiera och komma åt den lokala modellkatalogen.
import { FoundryLocalManager } from 'foundry-local-sdk';
console.log('Initializing Foundry Local SDK...');
const manager = FoundryLocalManager.create({
appName: 'foundry_local_samples',
logLevel: 'info'
});
console.log('✓ SDK initialized successfully');
// Explore available models
console.log('\nFetching available models...');
const catalog = manager.catalog;
const models = await catalog.getModels();
console.log(`Found ${models.length} models:`);
for (const model of models) {
console.log(` - ${model.alias}`);
}
I det här exemplet visas en lista över tillgängliga modeller för maskinvaran.
Exempel
- Exempelprogram som visar hur du använder Foundry Local JavaScript SDK finns i GitHub-lagringsplatsen Foundry Local JavaScript SDK Samples.
API-referens
- Mer information om Foundry Local JavaScript SDK finns i Foundry Local JavaScript SDK API Reference.
Referenser
C# SDK-referens
installationsguide för Project
Det finns två NuGet-paket för Foundry Local SDK – en WinML och ett plattformsoberoende paket – som har samma API-yta men är optimerade för olika plattformar:
-
Windows: Använder paketet
Microsoft.AI.Foundry.Local.WinMLsom är specifikt för Windows-program, som använder WinML-ramverket (Windows Machine Learning). -
Plattformsoberoende: Använder paketet
Microsoft.AI.Foundry.Localsom kan användas för plattformsoberoende program (Windows, Linux, macOS).
Beroende på målplattformen följer du de här anvisningarna för att skapa ett nytt C#-program och lägger till nödvändiga beroenden:
Använd Foundry Local i ditt C#-projekt genom att följa dessa Windows-specifika eller plattformsoberoende instruktioner (macOS/Linux/Windows):
- Skapa ett nytt C#-projekt och navigera in i det.
dotnet new console -n app-name cd app-name - Öppna
app-name.csproj-filen och redigera den för att:<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>Exe</OutputType> <TargetFramework>net9.0-windows10.0.26100</TargetFramework> <RootNamespace>app-name</RootNamespace> <ImplicitUsings>enable</ImplicitUsings> <Nullable>enable</Nullable> <WindowsAppSDKSelfContained>false</WindowsAppSDKSelfContained> <WindowsPackageType>None</WindowsPackageType> <EnableCoreMrtTooling>false</EnableCoreMrtTooling> </PropertyGroup> <PropertyGroup Condition="'$(RuntimeIdentifier)'==''"> <RuntimeIdentifier>$(NETCoreSdkRuntimeIdentifier)</RuntimeIdentifier> </PropertyGroup> <ItemGroup> <PackageReference Include="Microsoft.AI.Foundry.Local.WinML" Version="0.9.0" /> <PackageReference Include="Microsoft.Extensions.Logging" Version="9.0.10" /> <PackageReference Include="OpenAI" Version="2.5.0" /> </ItemGroup> </Project> - Skapa en
nuget.configfil i projektroten med följande innehåll så att paketen återställs korrekt:<?xml version="1.0" encoding="utf-8"?> <configuration> <packageSources> <clear /> <add key="nuget.org" value="https://api.nuget.org/v3/index.json" /> <add key="ORT" value="https://aiinfra.pkgs.visualstudio.com/PublicPackages/_packaging/ORT/nuget/v3/index.json" /> </packageSources> <packageSourceMapping> <packageSource key="nuget.org"> <package pattern="*" /> </packageSource> <packageSource key="ORT"> <package pattern="*Foundry*" /> </packageSource> </packageSourceMapping> </configuration>
Anmärkning
NuGet-paketet Microsoft.AI.Foundry.Local riktar sig till net8.0. Med. NET:s framåtkompatibilitet fungerar sömlöst i projekt som riktar sig till .NET 9, .NET 10 och senare – ingen annan konfiguration behövs. SDK använder endast .NET 8 API:er och innehåller inga ramverksspecifika kodsökvägar, så beteendet är identiskt oavsett vilken körning som appen riktar in sig på. Vi riktar in oss på .NET 8 eftersom det är den aktuella lts-versionen (Long Term Support) med den bredaste installationsbasen.
Snabbstart
Använd det här kodfragmentet för att kontrollera att SDK:et kan initiera och komma åt den lokala modellkatalogen.
using Microsoft.AI.Foundry.Local;
using Microsoft.Extensions.Logging;
using System.Linq;
var config = new Configuration
{
AppName = "app-name",
LogLevel = Microsoft.AI.Foundry.Local.LogLevel.Information,
};
using var loggerFactory = LoggerFactory.Create(builder =>
{
builder.SetMinimumLevel(Microsoft.Extensions.Logging.LogLevel.Information);
});
var logger = loggerFactory.CreateLogger<Program>();
await FoundryLocalManager.CreateAsync(config, logger);
var manager = FoundryLocalManager.Instance;
var catalog = await manager.GetCatalogAsync();
var models = await catalog.ListModelsAsync();
Console.WriteLine($"Models available: {models.Count()}");
I det här exemplet skrivs antalet tillgängliga modeller ut för maskinvaran.
Exempel
- Exempelprogram som visar hur du använder Foundry Local C# SDK finns i GitHub-lagringsplatsen Foundry Local C# SDK Samples.
API-referens
- Mer information om Foundry Local C# SDK finns i Foundry Local C# SDK API-referens.