メインコンテンツまでスキップ

Chat — マップにAIをアタッチ

product="chat" は Kaleidr Control Tower — チャット駆動の ナビゲーション、POI要約、場所ピン — を、あなたがすでに描画しているマップ上にマウントします。 chat bundle はマップベンダー(Mapbox、MapLibre、Google)を自動検出します。

  • 組み込み方式: attach — パネルはページ内にマウントされ、渡された マップオブジェクトを操作します。
  • 必要なスコープ: ai.
  • 最小プラン: Pro — Free のキーでは ai スコープを利用できません。

始める前に

  • ページの origin はキーの origin allowlist に登録されている必要があります。登録されていない場合、セッション交換は 403 session_origin_mismatch で失敗します。file://Origin を送信しないため必ず失敗します — HTTP(S) で配信してください。 APIキーを取得 を参照してください。
  • CSP では SDK loader、MapLibre の 'wasm-unsafe-eval'、および マップベンダーの host を許可する必要があります — Content Security Policy を参照してください。

マウント

const handle = Kaleidr.mount('#chat-panel', {
product: 'chat',
publishableKey: 'kld_pk_live_…', // ai scope, Pro+
map: myMap, // your live map instance
contained: true, // dock inside #chat-panel, not on body
});

contained: true を指定すると、パネルはマウント要素内に固定されます。指定しない場合、 パネルが document.body に移動し、レイアウト上で壊れているように見えます。

chat パネルは myMap に場所をプロットし、会話が 位置を特定するにつれてカメラをフレーミングします。ストリーミングには SSE wire contract を使用し、ai スコープの使用量は 組織の quota に計上されます。

Handle

handle.destroy(); // always available
handle.setTheme({ '--kd-accent': '#2da84a' }); // live theme update
  • chat の handle.setCamera(...)no-op です。Chat は マップカメラを操作しません — マップインスタンス自身のカメラ API を使用してください。
  • handle.setTheme(...) は JSON の CSS-token オブジェクトを受け付けます。名前付きの文字列 theme は警告とともに無視されます。

Headless(マップなし)にも対応しています — chat パネルのみを使用する場合は map を省略します。 ピンやルートオーバーレイは表示されません。

ベンダー別ガイド