Skip to main content
Sonzai Docs

パーソナリティシステム

独自のパーソナリティを持つエージェントを作成し、インタラクションを通じた 進化を観察します。

ビッグファイブパーソナリティモデル

すべてのエージェントにはビッグファイブ(OCEAN)パーソナリティスコアがあります。 行動特性、ムードベースライン、発話パターン、インタラクション設定は すべてこれらのスコアから導出されます。

Openness0.0 - 1.0好奇心、創造性、経験への開放性。高 = 想像力豊か、冒険的。低 = 実践的、慣習的。
Conscientiousness0.0 - 1.0組織性、規律、目標志向。高 = 体系的、信頼性。低 = 自発的、柔軟。
Extraversion0.0 - 1.0社交エネルギー、熱意、自己主張。高 = 社交的、活動的。低 = 控えめ、内省的。
Agreeableness0.0 - 1.0温かさ、協調性、共感。高 = 思いやり、信頼。低 = 率直、懐疑的。
Neuroticism0.0 - 1.0感情的感受性、不安傾向。高 = 感情的反応性。低 = 感情的安定性。

confidenceフィールド(0.0-1.0)はスコアが行動に どれだけ強く影響するかを制御します。低い信頼度 = より汎用的、 高い信頼度 = より差別化されます。

パーソナリティ付きエージェントの作成

エージェント作成時にビッグファイブスコアを渡します。プラットフォームが パーソナリティプロンプト、発話パターン、行動傾向を自動生成します。

import { Sonzai } from "@sonzai-labs/agents";

const client = new Sonzai({ apiKey: "sk-..." });

const agent = await client.agents.create({
  agentId: "your-stable-uuid",  // optional but recommended
  name: "Luna",
  gender: "female",
  big5: {
    openness:          0.75,
    conscientiousness: 0.60,
    extraversion:      0.80,
    agreeableness:     0.70,
    neuroticism:       0.30,
  },
  language: "en",
});

console.log(agent.agentId);

冪等 — 同じagentIdを渡すと 常にupsertされます。毎回のデプロイで安全に呼び出せます。推奨UUID導出パターンは クイックスタート をご覧ください。

パーソナリティプロファイルの取得

導出された発話パターンやインタラクション設定を含む、エージェントの 現在のパーソナリティプロファイルを取得します。

const profile = await client.agents.personality.get("agent-id");

console.log(profile.big5);
console.log(profile.speechPatterns);
console.log(profile.interactionPreferences);

パーソナリティの更新

パーソナリティ評価の実行後にビッグファイブスコアを更新します。 confidence値は新しいスコアが行動にどれだけ強く 影響するかを制御します。

await client.agents.personality.update("agent-id", {
  big5: {
    openness:    0.82,
    extraversion: 0.75,
  },
  confidence: 0.8,   // 0.0-1.0
});
confidence < 0.3: 暫定的。最小限の調整。
confidence 0.3 - 0.7: 既存スコアとブレンド。
confidence > 0.7: パーソナリティに強く影響。

パーソナリティ進化履歴

エージェントのパーソナリティ変化の履歴を取得します。 成長の瞬間をユーザーに表示するのに便利です。

const history = await client.agents.personality.history("agent-id");

for (const shift of history.shifts) {
  console.log(shift.trait, shift.delta, shift.triggeredBy, shift.createdAt);
}

インタラクション設定

会話スタイルを形成する導出された設定:

ペース

slowmoderatefast

導出元: 外向性レベル

フォーマリティ

casualbalancedformal

導出元: 誠実性レベル

ユーモアスタイル

dryplayfulwarm

導出元: 開放性 + 協調性

感情表現

reservedmoderateexpressive

導出元: 神経症傾向 + 外向性

パーソナリティ進化

パーソナリティはインタラクションを通じて自然に進化します:

1
インタラクション分析

各会話後に感情テーマとパターンが分析されます。

2
マイクロシフト

会話内容に基づいて、関連するビッグファイブ次元に小さな調整が適用されます。

3
ブレイクスルー

累積的な変化が閾値を超えると、「ブレイクスルー」イベントが発火します。エージェントが認識する重要なパーソナリティ変化です。

4
プロファイル再生成

パーソナリティプロンプト、発話パターン、行動指示が進化したパーソナリティを反映して再生成されます。

ユーザー別パーソナリティオーバーレイ

ベースのエージェントプロファイルに影響を与えずに、特定のユーザー向けに パーソナリティの動作を調整します。

// Apply a per-user overlay (e.g. from assessment results)
await client.agents.personality.setUserOverlay("agent-id", "user-123", {
  big5: {
    extraversion: 0.55,  // agent speaks more reservedly with this user
  },
  confidence: 0.6,
});