cherry-studio/packages/ai-sdk-provider
SuYao 2c3338939e
feat: update Google and OpenAI SDKs with new features and fixes (#11395)
* feat: update Google and OpenAI SDKs with new features and fixes

- Updated Google SDK to ensure model paths are correctly formatted.
- Enhanced OpenAI SDK to include support for image URLs in chat responses.
- Added reasoning content handling in OpenAI chat responses and chunks.
- Introduced Azure Anthropic provider configuration for Claude integration.

* fix: azure error

* fix: lint

* fix: test

* fix: test

* fix type

* fix comment

* fix: redundant

* chore resolution

* fix: test

* fix: comment

* fix: comment

* fix

* feat: 添加 OpenRouter 推理中间件以支持内容过滤
2025-11-23 23:18:57 +08:00
..
src feat: add endpoint type support for cherryin provider (#11367) 2025-11-21 21:42:08 +08:00
package.json feat: update Google and OpenAI SDKs with new features and fixes (#11395) 2025-11-23 23:18:57 +08:00
README.md feat: add @cherrystudio/ai-sdk-provider package and integrate (#10715) 2025-11-12 18:16:27 +08:00
tsconfig.json feat: add @cherrystudio/ai-sdk-provider package and integrate (#10715) 2025-11-12 18:16:27 +08:00
tsdown.config.ts feat: add @cherrystudio/ai-sdk-provider package and integrate (#10715) 2025-11-12 18:16:27 +08:00

@cherrystudio/ai-sdk-provider

CherryIN provider bundle for the Vercel AI SDK.
It exposes the CherryIN OpenAI-compatible entrypoints and dynamically routes Anthropic and Gemini model ids to their CherryIN upstream equivalents.

Installation

npm install ai @cherrystudio/ai-sdk-provider @ai-sdk/anthropic @ai-sdk/google @ai-sdk/openai
# or
yarn add ai @cherrystudio/ai-sdk-provider @ai-sdk/anthropic @ai-sdk/google @ai-sdk/openai

Note

: This package requires peer dependencies ai, @ai-sdk/anthropic, @ai-sdk/google, and @ai-sdk/openai to be installed.

Usage

import { createCherryIn, cherryIn } from '@cherrystudio/ai-sdk-provider'

const cherryInProvider = createCherryIn({
  apiKey: process.env.CHERRYIN_API_KEY,
  // optional overrides:
  // baseURL: 'https://open.cherryin.net/v1',
  // anthropicBaseURL: 'https://open.cherryin.net/anthropic',
  // geminiBaseURL: 'https://open.cherryin.net/gemini/v1beta',
})

// Chat models will auto-route based on the model id prefix:
const openaiModel = cherryInProvider.chat('gpt-4o-mini')
const anthropicModel = cherryInProvider.chat('claude-3-5-sonnet-latest')
const geminiModel = cherryInProvider.chat('gemini-2.0-pro-exp')

const { text } = await openaiModel.invoke('Hello CherryIN!')

The provider also exposes completion, responses, embedding, image, transcription, and speech helpers aligned with the upstream APIs.

See AI SDK docs for configuring custom providers.