> ## Documentation Index
> Fetch the complete documentation index at: https://docs.aihubmix.com/llms.txt
> Use this file to discover all available pages before exploring further.

# AI SDK

> 用 AI SDK 接入 AIHubMix：通过 OpenAI 兼容接口，在 TypeScript / JavaScript 代码中统一调度多家厂商模型。

[官方网址](https://ai-sdk.dev/providers/community-providers/aihubmix)

## 支持的功能

AIHubMix provider 支持以下 AI 功能，让你的产品不再局限于 LLM 驱动：

* **文本生成**：使用各种模型生成文本内容
* **流式文本**：实时文本流式传输
* **图像生成**：从文本提示创建图像
* **向量嵌入**：单个和批量文本嵌入
* **对象生成**：结构化数据生成
* **流式对象**：实时结构化数据流式传输
* **语音合成**：文本转语音
* **转录**：语音转文本
* **工具**：联网搜索和其他工具

## 安装

AIHubMix 在 `@aihubmix/ai-sdk-provider` 模块中可用。通过 [@aihubmix/ai-sdk-provider](https://www.npmjs.com/package/@aihubmix/ai-sdk-provider) 安装：

<CodeGroup>
  ```shell ai 4.3 theme={null}
  npm i @aihubmix/ai-sdk-provider@0.0.1
  ```

  ```shell ai 5 beta theme={null}
  npm i @aihubmix/ai-sdk-provider
  ```
</CodeGroup>

## Provider 实例

您可以从 `@aihubmix/ai-sdk-provider` 导入默认的 provider 实例 `aihubmix`：

```ts theme={null}
import { aihubmix } from '@aihubmix/ai-sdk-provider';
```

## 配置

将您的 AIHubMix API 密钥设置为环境变量，确保安全读取：

```bash theme={null}
export AIHUBMIX_API_KEY="your-api-key-here"
```

或直接传递给 provider：

```ts theme={null}
import { createAihubmix } from '@aihubmix/ai-sdk-provider';

const aihubmix = createAihubmix({
  apiKey: 'your-api-key-here',
});
```

## 使用

导入必要的函数：

```ts theme={null}
import { createAihubmix } from '@aihubmix/ai-sdk-provider';
import { 
  generateText, 
  streamText, 
  generateImage, 
  embed, 
  embedMany, 
  generateObject, 
  streamObject, 
  generateSpeech, 
  transcribe 
} from 'ai';
import { z } from 'zod';
```

各种类型的 AI 生成调用示例：

<CodeGroup>
  ```ts 生成文本 theme={null}
  import { aihubmix } from '@aihubmix/ai-sdk-provider';
  import { generateText } from 'ai';

  const { text } = await generateText({
    model: aihubmix('o4-mini'),
    prompt: '为4个人写一个素食千层面食谱。',
  });
  ```

  ```ts Claude 模型 theme={null}
  import { aihubmix } from '@aihubmix/ai-sdk-provider';
  import { generateText } from 'ai';

  const { text } = await generateText({
    model: aihubmix('claude-3-7-sonnet-20250219'),
    prompt: '用简单的术语解释量子计算。',
  });
  ```

  ```ts Gemini 模型 theme={null}
  import { aihubmix } from '@aihubmix/ai-sdk-provider';
  import { generateText } from 'ai';

  const { text } = await generateText({
    model: aihubmix('gemini-2.5-flash'),
    prompt: '创建一个Python脚本来对数字列表进行排序。',
  });
  ```

  ```ts 流式文本 theme={null}
  import { aihubmix } from '@aihubmix/ai-sdk-provider';
  import { streamText } from 'ai';

  const result = streamText({
    model: aihubmix('gpt-3.5-turbo'),
    prompt: '写一个关于机器人学习绘画的短故事。',
    maxOutputTokens: 256,
    temperature: 0.3,
    maxRetries: 3,
  });

  let fullText = '';
  for await (const textPart of result.textStream) {
    fullText += textPart;
    process.stdout.write(textPart);
  }

  console.log('\n使用情况:', await result.usage);
  console.log('完成原因:', await result.finishReason);
  ```

  ```ts 生成对象 theme={null}
  import { aihubmix } from '@aihubmix/ai-sdk-provider';
  import { generateObject } from 'ai';
  import { z } from 'zod';

  const result = await generateObject({
    model: aihubmix('gpt-4o-mini'),
    schema: z.object({
      recipe: z.object({
        name: z.string(),
        ingredients: z.array(
          z.object({
            name: z.string(),
            amount: z.string(),
          }),
        ),
        steps: z.array(z.string()),
      }),
    }),
    prompt: '生成一个千层面食谱。',
  });

  console.log(JSON.stringify(result.object.recipe, null, 2));
  console.log('Token使用情况:', result.usage);
  console.log('完成原因:', result.finishReason);
  ```

  ```ts 流式对象 theme={null}
  import { aihubmix } from '@aihubmix/ai-sdk-provider';
  import { streamObject } from 'ai';
  import { z } from 'zod';

  const result = await streamObject({
    model: aihubmix('gpt-4o-mini'),
    schema: z.object({
      recipe: z.object({
        name: z.string(),
        ingredients: z.array(
          z.object({
            name: z.string(),
            amount: z.string(),
          }),
        ),
        steps: z.array(z.string()),
      }),
    }),
    prompt: '生成一个千层面食谱。',
  });

  for await (const objectPart of result.partialObjectStream) {
    console.log(objectPart);
  }

  console.log('Token使用情况:', result.usage);
  console.log('最终对象:', result.object);
  ```

  ```ts 工具调用 theme={null}
  // Aihubmix provider 支持各种工具，包括网络搜索：
  import { aihubmix } from '@aihubmix/ai-sdk-provider';
  import { generateText } from 'ai';

  const { text } = await generateText({
    model: aihubmix('gpt-4'),
    prompt: 'AI的最新发展是什么？',
    tools: {
      webSearchPreview: aihubmix.tools.webSearchPreview({
        searchContextSize: 'high',
      }),
    },
  });
  ```

  ```ts 图像生成 theme={null}
  import { aihubmix } from '@aihubmix/ai-sdk-provider';
  import { generateImage } from 'ai';

  const { image } = await generateImage({
    model: aihubmix.image('gpt-image-1'),
    prompt: '山间美丽的日落',
  });
  ```

  ```ts 语音合成 theme={null}
  import { aihubmix } from '@aihubmix/ai-sdk-provider';
  import { generateSpeech } from 'ai';

  const { audio } = await generateSpeech({
    model: aihubmix.speech('tts-1'),
    text: '你好，这是语音合成的测试。',
  });

  // 保存音频文件
  await saveAudioFile(audio);
  console.log('音频生成成功:', audio);
  ```

  ```ts 转录 theme={null}
  import { aihubmix } from '@aihubmix/ai-sdk-provider';
  import { transcribe } from 'ai';

  const { text } = await transcribe({
    model: aihubmix.transcription('whisper-1'),
    audio: audioFile,
  });
  ```

  ```ts 向量嵌入 theme={null}
  import { aihubmix } from '@aihubmix/ai-sdk-provider';
  import { embed } from 'ai';

  const { embedding } = await embed({
    model: aihubmix.embedding('text-embedding-ada-002'),
    value: '你好，世界！',
  });
  ```

  ```ts 批量嵌入 theme={null}
  import { aihubmix } from '@aihubmix/ai-sdk-provider';
  import { embedMany } from 'ai';

  const { embeddings, usage } = await embedMany({
    model: aihubmix.embedding('text-embedding-3-small'),
    values: [
      '海滩上的晴天',
      '城市里的雨天下午',
      '山间的雪夜',
    ],
  });

  console.log('嵌入向量:', embeddings);
  console.log('使用情况:', usage);
  ```
</CodeGroup>

## 相关资源：

* [AIHubMix provider](https://v5.ai-sdk.dev/providers/community-providers/aihubmix)
* [AI SDK](https://ai-sdk.dev/docs)

***

更新时间：2026-06-01
