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

# AI trong ứng dụng

> Kết nối Kazzle AI API vào thành phần ứng dụng.

# AI trong ứng dụng

Ứng dụng có quyền truy cập AI (chat, hình ảnh, giọng nói, chuyển đổi giọng nói thành văn bản, video) thông qua **Kazzle AI API** — một endpoint duy nhất, được tính phí theo credits trong không gian. Không yêu cầu người dùng cung cấp khóa OpenAI/Anthropic/nhà cung cấp khác trừ khi họ muốn tính phí trực tiếp cho các nhà cung cấp đó.

Các endpoint, cách tính phí và ví dụ được ghi chép một lần trong [tài liệu tham khảo AI API](/platform/ai-api). Trang này chỉ bao gồm cách kết nối nó vào ứng dụng.

## Kết nối khóa API

1. Tạo khóa Kazzle API có phạm vi cho ứng dụng bằng công cụ `api_key`.
2. Lưu trữ nó trong bộ sưu tập bí mật + môi trường với tên `KAZZLE_API_KEY` (tên bí mật trở thành biến môi trường).
3. Trỏ thành phần process tới bộ sưu tập + môi trường đó.
4. Gọi `https://api.kazzle.app/ai/*` chỉ từ mã phía máy chủ.

```ts theme={"theme":"material-theme-darker"}
export default defineConfig({
  components: [
    {
      name: 'server',
      type: 'process',
      path: './server',
      env: { collection: 'my-app', environment: 'default' },
    },
  ],
});
```

Tại thời điểm chạy, process sẽ thấy `process.env.KAZZLE_API_KEY`, được phân giải từ vault. Không có trường `env.vars` — bí mật chỉ tiếp cận các thành phần thông qua bộ sưu tập + môi trường mà chúng trỏ tới.

```ts theme={"theme":"material-theme-darker"}
const apiKey = process.env.KAZZLE_API_KEY;
if (!apiKey) throw new Error('KAZZLE_API_KEY is required');

const res = await fetch('https://api.kazzle.app/ai/audio/transcriptions', {
  method: 'POST',
  headers: { Authorization: `Bearer ${apiKey}` },
  body: formData,
});
```

Không bao giờ đặt khóa trong mã frontend hoặc biến `VITE_*`. Xem [Bí mật](/apps/secrets) để kết nối vault và [tài liệu tham khảo AI API](/platform/ai-api) để xem mọi endpoint.
