zhipu-ai-provider has 6,560 recorded weekly downloads on npm, a decrease of 48.6% over the past 30 days, ranking #1074 of 2,391 tracked listings.
About zhipu-ai-provider
Zhipu AI Provider - Vercel AI SDK Community Provider
This is a Zhipu (Z.ai) provider for the Vercel AI SDK. It supports AI SDK 6 and the LanguageModelV3 custom-provider contract for language models, plus embedding and image models provided on bigmodel.cn or z.ai by ZhipuAI.
Setup
# npm
npm i zhipu-ai-provider
# pnpm
pnpm add zhipu-ai-provider
# yarn
yarn add zhipu-ai-provider
# bun
bun add zhipu-ai-provider
Set up your .env file / environment with your API key.
ZHIPU_API_KEY=<your-api-key>
Provider Instance
You can import the default provider instance zhipu from zhipu-ai-provider (This automatically reads the API key from the environment variable ZHIPU_API_KEY):
import { zhipu } from 'zhipu-ai-provider' // for bigmodel.cn
// or
import { zai } from 'zhipu-ai-provider' // for z.ai
Alternatively, you can create a provider instance with custom configuration with createZhipu:
import { createZhipu } from 'zhipu-ai-provider';
const zhipu = createZhipu({
baseURL: "https://open.bigmodel.cn/api/paas/v4",
apiKey: "your-api-key"
});
You can use the following optional settings to customize the Zhipu provider instance:
- baseURL: string
- Use a different URL prefix for API calls, e.g. to use proxy servers. The default prefix is
https://open.bigmodel.cn/api/paas/v4.
- Use a different URL prefix for API calls, e.g. to use proxy servers. The default prefix is
- apiKey: string
- Your API key for Zhipu BigModel Platform. If not provided, the provider will attempt to read the API key from the environment variable
ZHIPU_API_KEY.
- Your API key for Zhipu BigModel Platform. If not provided, the provider will attempt to read the API key from the environment variable
- headers: Record<string,string>
- Custom headers to include in the requests.
Language Model Example
import { generateText } from 'ai';
import { zhipu } from 'zhipu-ai-provider';
const { text } = await generateText({
model: zhipu('glm-5'), // or use 'GLM-4.7-Flash' for free
prompt: 'Why is the sky blue?',
});
console.log(text)
To disable thinking for hybrid models like glm-5, set thinking.type to disabled either in the model options or in providerOptions.zhipu:
const { text } = await generateText({
model: zhipu('glm-5', {
thinking: {
type: 'disabled'
},
}),
prompt: 'Explain quantum computing in simple terms.',
});
or
const { text } = await generateText({
model: zhipu('glm-5'),
prompt: 'Explain quantum computing in simple terms.',
providerOptions: {
zhipu: {
thinking: {
type: 'disabled'
}
}
}
});
For GLM-5.2 and newer models, use reasoningEffort to control how much
reasoning the model applies. It accepts max, xhigh, high, medium,
low, minimal, and none:
const { text } = await generateText({
model: zhipu('glm-5.2'),
prompt: 'Design a resilient recommendation system.',
providerOptions: {
zhipu: {
thinking: { type: 'enabled' },
reasoningEffort: 'high',
},
},
});
The provider forwards reasoningEffort for any model ID, so future Z.ai
models do not require a provider update. It warns, without blocking the
request, when a recognized GLM-5.1-or-earlier model is used because Z.ai will
likely ignore reasoning_effort for those models.
Only function tools are supported. Provider-defined tools are not currently implemented.
Embedding Example
const { embedding } = await embed({
model: zhipu.embeddingModel("embedding-3", {
dimensions: 256, // Optional, defaults to 2048
}),
value: "Hello, world!",
});
console.log(embedding);
textEmbeddingModel(...) is still available as a deprecated compatibility alias.
Image Generation Example
Zhipu supports image generation with glm-image or cogview models, but the api does not return images in base64 or buffer format, so the image urls are returned in the providerMetadata field.
import { experimental_generateImage as generateImage } from 'ai';
import { zhipu } from 'zhipu-ai-provider';
const { image, providerMetadata } = await generateImage({
model: zhipu.imageModel('glm-image'), // or use 'Cogview-3-Flash' for free
prompt: 'A beautiful landscape with mountains and a river',
size: '1024x1024', // optional
providerOptions: { // optional
zhipu: {
quality: 'hd'
}
}
});
console.log(providerMetadata.zhipu.images[0].url)
Features Support…
Description from the npm listing.
- zhipu
- bigmodel
- glm
- ai
- provider
- vercel-ai
- vercel
- ai-sdk
README badge
Show your rank in a README or on your website. The badge updates automatically.
Charts
Images: 30d · 1y · all time · 1600×900 dark
Adoption over time
7/30/90-day growth
Ranking history
Listing placement
Listing placement
Filled points are observed values; hollow points come from Internet Archive snapshots of the listing page. Dashed segments span periods with no observations — values between points are not interpolated.
Each band is one page of 20. Weekly downloads on a linear scale. Placement is projected from weekly downloads, so it can differ from the marketplace's own sort order. Hover a dot to see the listing.
Recent observations
Full history (122)Similar npm AI SDKs plugins
All 20 zhipu-ai-provider alternativesData source
Weekly downloads (trailing 7 complete days) come from the official npm downloads API. Downloads include CI and mirrors and are not equivalent to installs or users. npm publishes no ratings.
Listing: https://www.npmjs.com/package/zhipu-ai-provider. First seen Oct 16, 2026; last successful collection Oct 21, 2026. See the methodology.