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

# JavaScript SDK 概要

> RAIL Score JavaScript/TypeScript SDKをインストールして使用します。

## インストール

```bash theme={null}
npm install @responsible-ai-labs/rail-score
```

## 基本的な使用法

```typescript theme={null}
import { RailScoreClient } from "@responsible-ai-labs/rail-score";

const client = new RailScoreClient({ apiKey: "YOUR_RAIL_API_KEY" });

// コンテンツを評価
const result = await client.eval({
  content: "ここにあなたのAI生成テキストを入力",
  mode: "basic",
});

console.log(`RAIL Score: ${result.railScore.score}/10`);

for (const [dim, scores] of Object.entries(result.dimensionScores)) {
  console.log(`  ${dim}: ${scores.score}/10`);
}
```

## 安全な再生成

```typescript theme={null}
const result = await client.safeRegenerate({
  content: "トップ大学からの候補者を優先します。",
  prompt: "どの採用基準を使用すべきですか？",
  threshold: 7.0,
  mode: "basic",
  maxIterations: 3,
});

console.log(`最終スコア: ${result.finalScore}/10`);
console.log(`コンテンツ: ${result.content}`);
```

## コンプライアンスチェック

```typescript theme={null}
const result = await client.complianceCheck({
  content: "ユーザーのインタラクションデータを保存および処理します。",
  frameworks: ["gdpr", "eu_ai_act"],
  context: "EU向けSaaS製品",
});

console.log(`コンプライアント: ${result.overallCompliant}`);
```

## LLMプロバイダーラッパー

```typescript theme={null}
import { RAILOpenAI, RAILAnthropic, RAILGemini } from "@responsible-ai-labs/rail-score";

const client = new RAILOpenAI({
  openaiApiKey: "sk-...",
  railApiKey: "YOUR_RAIL_API_KEY",
  railThreshold: 7.0,
  railPolicy: "regenerate",
});

const response = await client.chatCompletion({
  model: "gpt-4o",
  messages: [{ role: "user", content: "量子コンピューティングについて説明してください。" }],
});

console.log(`RAIL Score: ${response.railScore}/10`);
```

## 命名規則

JavaScript SDKはすべてのプロパティに**camelCase**を使用します：

| API (snake\_case)  | SDK (camelCase)   |
| ------------------ | ----------------- |
| `rail_score`       | `railScore`       |
| `dimension_scores` | `dimensionScores` |
| `safe_regenerate`  | `safeRegenerate`  |
| `compliance_check` | `complianceCheck` |
| `credits_consumed` | `creditsConsumed` |
| `threshold_met`    | `thresholdMet`    |
