Skip to main content

Installation

Overview

The @ai-billing/deepinfra package provides middleware for tracking token usage and calculating costs when using DeepInfra models with the Vercel AI SDK. It captures DeepInfra-specific metrics, such as inputCacheReadTokens, ensuring that Prompt Caching costs are accurately reflected. Billed cost is always computed from your own pricing table — DeepInfra’s own estimated_cost field is never used as the billed amount, but when present it is additionally surfaced as informational rawProviderCost metadata.

Usage

To use the middleware, wrap your DeepInfra model using wrapLanguageModel from the ai package and pass the createDeepinfraMiddleware.
1

Initialize the DeepInfra provider

First, set up the DeepInfra provider using your API key.
2

Define model pricing

Set up a price resolver to define the costs for the models you’ll be using. For DeepInfra, you can specify costs for both standard prompt/completion tokens and cached tokens (inputCacheReadTokens).
3

Create the billing middleware

Initialize the DeepInfra billing middleware. You need to provide a destination (such as consoleDestination) where billing events will be sent, along with your priceResolver.
4

Wrap the model

Use wrapLanguageModel from the ai package to apply the billing middleware to your DeepInfra model.
5

Use the wrapped model

Finally, use the wrapped model with AI SDK functions like generateText or streamText. The billing middleware will automatically track tokens, handle caching metrics, and calculate costs.