メインコンテンツまでスキップ
注意
このページで説明している機能は準備中です。内容・仕様は予告なく変わることがあります。

AICU TypeScript SDK

@aicu/api-client - 公式 TypeScript/JavaScript SDK (Coming Soon)

インストール​

npm install @aicu/api-client
# or
pnpm add @aicu/api-client
# or
bun add @aicu/api-client

クイックスタート​

import { AicuClient } from '@aicu/api-client';

const aicu = new AicuClient('aicu_live_xxx');

// テキストから音声生成
const audio = await aicu.tts.generate({
text: 'こんにちは、世界!',
voice: 'ono_anna',
});

// ファイルに保存
await Bun.write('output.mp3', audio);

// または Web Audio API で再生
const audioUrl = URL.createObjectURL(new Blob([audio], { type: 'audio/mpeg' }));
const audioElement = new Audio(audioUrl);
await audioElement.play();

API リファレンス​

AicuClient​

const client = new AicuClient(apiKey: string, options?: {
baseUrl?: string; // default: 'https://api.aicu.ai/v1'
timeout?: number; // default: 30000 (ms)
});

tts.generate()​

const audio = await client.tts.generate({
text: string; // Required: 読み上げテキスト
voice: string; // Required: 話者ID
language?: string; // Optional: 'Japanese' | 'English' | 'Chinese'
format?: 'mp3' | 'wav'; // Optional: 出力形式
seed?: number; // Optional: 再現性シード
instruct?: string; // Optional: スタイル指示
});

// Returns: ArrayBuffer (audio data)

tts.voices()​

const voices = await client.tts.voices();
// Returns: Voice[]

interface Voice {
id: string;
name: string;
description: string;
languages: string[];
}

credits.balance()​

const balance = await client.credits.balance();
// Returns: { tap: number; ap: number; total: number }

使用例​

Next.js Server Action​

// app/actions/tts.ts
'use server';

import { AicuClient } from '@aicu/api-client';

const aicu = new AicuClient(process.env.AICU_API_KEY!);

export async function generateTTS(text: string) {
const audio = await aicu.tts.generate({
text,
voice: 'ono_anna',
});

return Buffer.from(audio).toString('base64');
}

Streaming (Coming Soon)​

// 長文の場合、チャンクでストリーミング
const stream = await aicu.tts.stream({
text: longText,
voice: 'ono_anna',
});

for await (const chunk of stream) {
// Process audio chunks
}

エラーハンドリング​

import { AicuClient, AicuError } from '@aicu/api-client';

try {
const audio = await aicu.tts.generate({ text, voice: 'ono_anna' });
} catch (error) {
if (error instanceof AicuError) {
switch (error.code) {
case 'UNAUTHORIZED':
console.error('Invalid API key');
break;
case 'INSUFFICIENT_CREDITS':
console.error('Not enough credits');
break;
case 'RATE_LIMITED':
console.error('Rate limit exceeded');
break;
default:
console.error('API error:', error.message);
}
}
}

現在のステータス​

SDK は現在開発中です。リリースは News とメールマガジン週刊AICUでお知らせします。

暫定的に REST API を直接使用してください。


Support​

© 2026 AICU Inc.