本ページの調整値は .env ではなく、アプリ内の App Settings 画面(サイドバー下部の
スライダーアイコン)で設定し、app_settings.jsonc に保存されます。.env に残った値は
無視され、起動ログにキー名が 1 度だけ列挙されます。既存の設定を引き継ぐには
chatwalaau settings migrate --write を実行してください。機能の有効化ゲートと
シークレットは .env のままです。
詳細は 設定 -> アプリケーション設定。
オントロジー概念モデリング
オントロジーワークスペースでは、ドメインの本質的な Entity・Relationship・プロパティ からなる概念モデルを、Subject-Predicate-Object トリプルによる RDF ナレッジ グラフとして設計できます。各オントロジーは標準的で自己完結した Turtle ファイル であり、バージョン管理・共有・他の RDF ツールでの利用が可能です。
この機能は v0.130.2 からデフォルトで有効です。使わない限りコストはかかりません ——
シークレットを持たず、シェルも起動せず、外部通信もせず、.ontologies/ は最初の書き込み時に
のみ作成されます。
無効化する
ONTOLOGY_ENABLED=false
# 任意: オントロジーファイルの保存先 (必要時に自動作成)
ONTOLOGY_DIR=.ontologies
false にすると、サイドバーのアイコンが消え、API は 404 を返し、エージェントから
読み取り専用の query_ontology ツールが外れます。
有効な場合、サイドバーフッター (Declarative Agents アイコンの隣) にネットワーク アイコンが表示されます。クリックすると、自由にリサイズできる 3 ペインのフルスクリーン ワークスペースが開きます。
ワークスペース
- 左 -- カタログ。 オントロジーの一覧 (名前と説明)。説明はアシスタントが対象
オントロジーを選ぶ手掛かりになるため、丁寧に書くのがおすすめです。新規作成、
名称変更 (名前と説明をその場で変更 -- オントロジー本体とグラフは保持)、
RDF ファイルのインポート (Turtle
.ttl/ RDF/XML.rdf・.owl)、Turtle での エクスポート、削除 (確認ダイアログ + 進行インジケーター付き、バックアップは ディスクに保持) ができます。 - 中央 -- 設計キャンバス。 Entity は二重の円です。内側の円をドラッグ
するとノードを移動でき、外側のリング上のどこからでも Relationship を開始 /
終了できます (全 360°、どの方向からでも接続でき、ノードの移動に追従)。エッジは
方向性とカーディナリティ (
1:1、1:N、N:1、N:M) を持ちます。同じ 2 つの Entity を 2 本以上の Relationship がつなぐ場合は扇状に広がり (それぞれ個別に 選択でき、ラベルも別々)、自己参照の Relationship はループとして描画されます。 Entity をクリックすると、その In/Out の Relationship と接続先の Entity まで一緒に ハイライトされます (Relationship をクリックすると両端の Entity とその In/Out エッジがハイライト)。解除は空き領域のクリックです。ノード間のドラッグで Relationship を作成。パン・ズーム・全体表示・ワンクリックの自動レイアウト・ グラフの PNG ダウンロードに対応します。 - 右 -- 詳細 / 検索。 詳細タブでは選択中の Entity / Relationship を編集します。 Entity の各プロパティはキー属性としてマークでき、ノードにキーバッジが 表示されます。検索タブでは SPARQL (シンタックスハイライト付きエディタ。 Reset ボタンでデフォルトクエリに戻せます) または自然言語の 質問で検索できます。送信ボタンを押すとモデルが SPARQL に変換し、生成された クエリはエディタに挿入されるため手直しして再 実行できます。テーブル結果は キャンバス上のマッチした Entity を強い色でハイライトし、それ以外は薄く表示、 接続された Relationship も色が変わります。
保存時はタイムスタンプ付きバックアップを作成してからアトミックに置き換えます。 未保存の変更があるまま閉じようとすると確認ダイアログが表示されます。
アシスタントに質問する
どのチャットでも、アシスタントは query_ontology ツールを使えます: カタログを
一覧し、説明文から対象オントロジーを特定し、質問を読み取り専用の SPARQL に変換して、
マッチした RDF を Turtle のコードブロックで回答します。サイズはキャップされるため、
大きなオントロジーでも会話があふれることはありません。
クエリ側はすべて構造的に読み取り専用です: 検索やアシスタントのクエリが オントロジーを変更することはできません。
設定
| 設定 | デフォルト | 意味 |
|---|---|---|
ONTOLOGY_ENABLED | true | 機能全体のマスターゲート(v0.130.2 より前は false) |
ONTOLOGY_DIR | .ontologies | カタログ + Turtle ファイルの 保存フォルダ |
ONTOLOGY_MAX_FILE_BYTES | 10485760 | インポート/保存のサイズ上限 (10 MiB) |
ONTOLOGY_TOOL_MAX_TRIPLES | 200 | アシスタント回答のトリプル数上限 |
DEMO_MODE での動作
デモホストではオントロジーのワークスペースは読み取り専用になります。作成・
インポート・改名・保存・削除は 409 で拒否されます。閲覧・グラフキャンバス・
エクスポート・SPARQL の 2 経路はそのまま利用できます —— SPARQL クエリはストアを
変更できないため、読み取りだからです。
ストアはデモ利用者全員で共有されます。カタログは全オントロジーを名前付きで一覧し、 エクスポートは Turtle 全体を返すため、書き込み可能なままだと、ある来訪者のモデルが 次の来訪者から閲覧・編集・削除できてしまいます。
デモホストでは制限が 2 つあります。カタログは空の状態から始まります(デモ用 オントロジーは同梱していません)。また自然言語の質問ボックスはエラーを返します —— デモではスタブモデルが動作しており、その出力は SPARQL にならないためです。
自然言語→SPARQL 変換のモデルは Model Offering Catalog の App Settings -> Model Offering Catalog -> Task model
assignments(roles.ontology_nl、または chatwalaau models role set ontology_nl <offering-id>)で指定します。未設定なら既定モデルを使います。専用の ONTOLOGY_NL_MODEL
変数は v0.109.0 で削除されました。