> ## 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.

# 評価

> client.eval()を使用してAIコンテンツのスコアを評価します。基本モード、深層モード、選択的次元、カスタムウェイト、およびレスポンスオブジェクトの参照。

<Info>
  **APIリファレンス:** [評価エンドポイント](/api-reference/evaluation) | **Python:** [`client.eval()`](/sdk/python/evaluation)
</Info>

## `client.eval()`

### 基本評価

```typescript theme={null}
const result = await client.eval({
  content: "不眠症に役立つ自然なアプローチはいくつかあります。一定の睡眠スケジュールを確立し、就寝前のスクリーンタイムを制限し、涼しく暗い睡眠環境を作ることは、よく支持されている戦略です。睡眠の問題が続く場合は、医療提供者に相談することをお勧めします。",
  mode: "basic"
});

console.log(result.rail_score.score);                // 8.6
console.log(result.rail_score.confidence);           // 0.87
console.log(result.dimension_scores.safety.score);   // 9.0
console.log(result.from_cache);                      // false
```

### 深層評価

```typescript theme={null}
const result = await client.eval({
  content: "履歴書をレビューする際は、トップティアの大学からの候補者を優先してください。あまり知られていない機関からの候補者は、通常、この役割に必要な厳格なトレーニングが不足しています。",
  mode: "deep",
  includeExplanations: true,
  includeIssues: true,
  includeSuggestions: true
});

for (const [dim, score] of Object.entries(result.dimension_scores)) {
  console.log(`${dim}: ${score.score}/10`);
  if (score.explanation) console.log(`  → ${score.explanation}`);
  if (score.issues?.length) console.log(`  問題: ${score.issues.join(", ")}`);
}

// 全体的な説明
console.log(result.explanation);
```

### 選択的次元

```typescript theme={null}
const result = await client.eval({
  content: "あなたのパスワードはリセットされました。新しい一時パスワードはTempPass123です。あなたのアカウントのメールはjohn.doe@company.comです。",
  dimensions: ["privacy", "safety"]
});

console.log(result.dimension_scores.privacy.score);   // 2.0
console.log(result.dimension_scores.safety.score);    // 6.0
```

### カスタムウェイト

```typescript theme={null}
const result = await client.eval({
  content: "私の分析に基づくと、痛みを和らげるために400mgのイブプロフェンを4時間ごとに服用するべきです。この用量について医師に相談する必要はありません。",
  weights: { safety: 50, reliability: 30, accountability: 20 }
});

console.log(result.rail_score.score);   // 加重された全体スコア
```

<Note>
  **モード:** `basic` - スコアのみ、キャッシュ5分、1.0クレジット。`deep` - スコア + 説明 + 問題、キャッシュ3分、3.0クレジット。ウェイトは100に合計する必要があります。
</Note>

## パラメータ

| パラメータ                 | 型          | デフォルト       | 説明                                                        |
| --------------------- | ---------- | ----------- | --------------------------------------------------------- |
| `content`             | `string`   | **必須**      | 評価するテキスト (10–10,000文字)                                    |
| `mode`                | `string`   | `"basic"`   | `"basic"` または `"deep"`                                    |
| `dimensions`          | `string[]` | すべて8        | スコアを付ける次元のサブセット                                           |
| `weights`             | `object`   | 等しい         | 次元ごとのウェイト (合計は100でなければならない)                               |
| `domain`              | `string`   | `"general"` | `"general"` \| `"healthcare"` \| `"finance"` \| `"legal"` |
| `includeExplanations` | `boolean`  | `false`     | 次元ごとの説明 (深層モード)                                           |
| `includeIssues`       | `boolean`  | `false`     | 次元ごとの問題タグ (深層モード)                                         |
| `includeSuggestions`  | `boolean`  | `false`     | 改善提案 (深層モード)                                              |

## レスポンス: `EvalResult`

```json theme={null}
{
  "rail_score": {
    "score": 8.6,
    "confidence": 0.87,
    "summary": "RAILスコア: 8.6/10 — 良好"
  },
  "explanation": "すべての次元にわたる全体的な説明...",
  "dimension_scores": {
    "fairness":       { "score": 9.0, "confidence": 0.90, "explanation": "...", "issues": [] },
    "safety":         { "score": 9.0, "confidence": 0.88 },
    "reliability":    { "score": 8.0, "confidence": 0.82 },
    "transparency":   { "score": 8.5, "confidence": 0.85 },
    "privacy":        { "score": 5.0, "confidence": 1.0 },
    "accountability": { "score": 8.5, "confidence": 0.84 },
    "inclusivity":    { "score": 9.0, "confidence": 0.90 },
    "user_impact":    { "score": 8.5, "confidence": 0.86 }
  },
  "from_cache": false
}
```

## スコアラベル

| スコア        | ラベル |
| ---------- | --- |
| 8.0 – 10.0 | 優秀  |
| 6.0 – 7.9  | 良好  |
| 4.0 – 5.9  | 公平  |
| 2.0 – 3.9  | 不十分 |
| 0.0 – 1.9  | 重大  |

```typescript theme={null}
import { getScoreLabel } from '@responsible-ai-labs/rail-score';
getScoreLabel(8.5);  // "優秀"
getScoreLabel(6.0);  // "良好"
```

## 次のステップ

<CardGroup cols={2}>
  <Card title="安全な再生成" icon="rotate" href="/sdk/javascript/safe-regeneration">
    コンテンツを評価し、反復的に改善します。
  </Card>

  <Card title="コンプライアンス" icon="shield-check" href="/sdk/javascript/compliance">
    規制フレームワークに対してコンテンツをチェックします。
  </Card>
</CardGroup>
