LM-Kit.NET · Coming from Azure OpenAI

From Azure OpenAI, into your process.

If your .NET code talks to Azure OpenAI through Microsoft.Extensions.AI or Semantic Kernel, the abstractions you chose for portability can now pay out: swap the client, and inference runs inside your application.

IChatClient stays IChatClient Prompts and data stay in process Free to build and evaluate

The migration is one client.

Both Microsoft bridges are official LM-Kit integrations. Everything written against the abstraction keeps working.

The IChatClient your services consume gets a local implementation.

What survives the move unchanged.

The abstractions did their job: everything written against them keeps compiling and keeps running.

Contracts

The interfaces hold

IChatClient, IEmbeddingGenerator, and Semantic Kernel's connector contracts are served by official LM-Kit implementations.

Behavior

Streaming and tools

Streaming responses, function calling, and structured output ride the same abstractions your code already exercises.

Plugins

Kernel assets carry over

Semantic Kernel plugins, prompt templates, and planner logic run against the local connector without edits.

Then the runtime starts giving back.

Leaving the metered endpoint is the start. The point is what the embedded runtime adds around the model.

Private

Nothing leaves the process

Prompts, documents, and outputs stay in your application's memory space. Air-gapped deployments work once models are present.

Cost

No meter on iteration

Batch document runs, agent loops, and regression suites stop accruing per-token charges; capacity is your hardware.

Beyond chat

The rest of the runtime

Document intelligence, extraction with confidence, RAG with citations, governed agents, and speech ship in the same package as the client you just swapped in.

What actually changes.

Two differences worth planning for, before anyone discovers them in production.

Models

Open weights, your hardware

GPT-class hosted models stay in Azure. Locally you choose from a curated open-weight catalog sized to your machines; evaluate quality per task on your real workload.

Capacity

Sizing replaces quotas

Throughput comes from CPU, GPU, and model choice rather than provisioned throughput units. Test with production-shaped load before the cutover.

LM-Kit.NET

Swap the client this afternoon.