Fioneのアシスタントから結合した学習データを作る

Fione v2の開発版では、同じプロジェクトにある表をアシスタントに調べてもらい、提案カードから結合ジョブを開始できます。たとえば解約の有無を記録した顧客表に、予測時点までの購入履歴を顧客単位でまとめて追加できます。

予測したい列を指定する

学習に使う表を同じプロジェクトに置き、設定済みのアシスタントに「churned を予測するために、このプロジェクトの表をどう結合すればよいですか」と聞きます。接続先の初期値は Ollama です。Claude やリモートの Ollama を使う場合は、管理者による初回の同意も必要です。アシスタントの接続設定

Fioneは予測したい列を持つ表を土台にし、片側がキーごとに1行になる候補から最初の結合を提案します。customers.id と orders.customer_id のように名前が異なる列も、名前の関係と値の重なりを手掛かりにできます。名前が無関係な列は、片側に100種類以上の一意なキーがある場合など、より厳しい条件で比較します。連番を値だけで照合するときは、相手の列がその連番の少なくとも30%を含む必要があります。

カードを確認して結合する

「データの結合の提案」カードで、土台と追加する表、キー、集約の有無、追加する列を確認します。プロジェクトを編集できる人が「結合したデータセットを作る」を押すとジョブが始まります。結果は新しいデータセットとして保存され、元の表はそのまま使えます。結合は1回に1表ずつです。

Joinは左結合なので、相手の表に一致するキーがない行も土台に残ります。手動のJoinでは summarize の初期値は false で、追加側のキーが重複する場合は true にしてキー単位にまとめます。最初の結合を自動提案するときは、追加する表がキーごとに複数行ならFioneが集約を選びます。集約では件数に加え、数値列の平均・最小・最大・合計を追加します。 columns を省略すると対象は追加側の全列です。購入金額など使う列に絞れば、識別子の平均や合計を結果に含めずに済みます。

学習に回す前に確認する

キーの候補を調べる対象は最大8データセットで、探索は30秒で打ち切ります。500万行を超えるデータセットはサンプルで調べるため、実際に結合できる組み合わせを見落とすことがあります。結果は行数×列数で1億5,000万セルまでです。カードに一致率の低さや容量超過が表示されたら、キーの意味を確認し、追加列を絞ります。購入履歴には予測時点より後の取引を含めないようにします。

関連PR

  • 結合方法の説明と列指定 #60、#61
  • 結合の提案カードと最初の結合の選定 #62、#64、#68
  • キー候補の検出と絞り込み #65、#66、#69、#70

Fioneでデータと予測結果にアシスタントの自動コメントを表示する

Fione v2の開発版では、学習用データをアップロードした後の分析画面を開くと、アシスタントが欠損や少数クラス、正解を先取りするおそれのある列などを短いコメントで説明します。質問を入力せずに確認でき、予測対象の列が明確なら学習条件の提案も表示します。

どの画面で読めるか

  • 学習用データセットは、かんたんモードの分析画面とProモードのデータセット画面でコメントを読めます。テスト用や予測用のデータセットには、そのデータセット専用のコメントは付きません。
  • モデルの概要と詳細では、基準との比較や次に試すことを確認できます。学習に失敗したジョブでは、原因と見直し箇所が表示されます。
  • 完了した一括予測の結果画面では、分類の内訳や数値の範囲、予測を使う前に確認すべき点を読み取れます。

Proモードの学習フォームでは、目的変数の偏りなどを指摘し、初回表示の実行時間をデータ量から決めます。フォームの助言と初期値はFione側で計算し、送信済みの実行時間は上書きしません。

生成の条件と上限

プロジェクトのメンバーが対象画面を初めて開いたとき、その画面の言語でコメントを生成します。生成済みのコメントは同じ言語の画面でメンバーに共有され、誰も開いていない画面では生成が始まりません。生成は画面表示と並行して進み、失敗した場合は画面から再試行できます。利用者ごとに生成中または待機中の自動コメントは1件までで、通常の回答と同じ制限が適用されます。初期値では1回答あたり最大180秒、ツール呼び出しの往復は最大6回、サーバー全体で同時実行できる回答は2件です。

利用にはアシスタントが応答できる状態が必要です。接続先の初期値はOllamaで、Claudeまたは別マシンのOllamaでは管理者の同意が必要です。生成時にはチャットと同様に、列名や統計、例示値、失敗したジョブのメッセージなどが接続先のモデルへ渡る場合があります。チャットに質問を送らなくても、対象画面を開くと送信が始まる点を確認してください。

学習の提案が表示されたら、目的変数や除外列を確認します。プロジェクトを編集できる人は、最初にページを開いた人に限らず提案を確定または却下できます。閲覧権限のみのメンバーには操作ボタンが表示されず、学習は編集権限のある人が確定した時点で始まります。

Fione #54 / Fione #55 / Fione #56

FioneでClaudeを使うための接続設定と管理者同意

Fione v2の開発版では、アシスタントの接続先としてOllamaとClaudeを選べます。アシスタントを無効にする設定と、例示値の送信だけを切り替える設定は廃止されました。接続先に問題がある間はアシスタントの回答を利用できず、Fioneの他の機能は引き続き使えます。

Claudeに接続する

Composeで起動する場合は docker/.env に設定します。Fioneを直接起動する場合はプロセスの環境変数に同じ項目を設定します。

FIONE_LLM_PROVIDER=claude
FIONE_LLM_API_KEY=<AnthropicのAPIキー>

プロバイダーの初期値は ollama です。Ollamaの初期接続先は http://host.docker.internal:11434/v1、モデルは gemma4:12b-mlx です。Claudeを選ぶと、接続先は https://api.anthropic.com、モデルは claude-opus-5-5、文脈上限は200,000トークン、応答上限は16,000トークンになります。APIキーが空のままでは起動できません。以前の FIONE_LLM_PROVIDER=openai は設定エラーになります。切り替えるときは既存の接続先やモデルの上書き値を見直し、Ollama用の FIONE_LLM_EXTRA_BODY を外します。文脈上限と応答上限を変更する場合、両者の差は少なくとも4,306トークン必要です。

送信内容を確認して許可する

管理者が「ユーザー」「システム」またはプロジェクトのアシスタント画面を開くと、同意が必要な場合はセットアップ画面に移ります。画面に表示されたプロバイダー、ホスト、モデル、送信内容を確認し、許可します。Claudeはローカルのゲートウェイ経由でも同意が必要です。別のマシンのOllamaにも同意が必要で、ホストまたはプロバイダーが変わると再確認が求められます。

質問や会話に加えて、プロジェクト名、列名、統計、頻出値やクラス名などの例示値、評価結果、ジョブのメッセージが接続先に渡る場合があります。対象画面の初回表示で作られる自動コメントにも同じ条件が適用されます。データファイルそのものは送信対象外で、MCPクライアントには例示値を返しません。接続確認は同意前に行われる場合があり、そのときはプロジェクトデータを含めずに接続先へAPIキーを送ります。

接続できない場合に確認すること

Claudeの接続確認には GET /v1/models/{model} を使います。このAPIやプロンプトキャッシュ用のフィールドに対応していない互換ゲートウェイでは、接続確認や応答が失敗する場合があります。回答中の429はリクエスト制限、529はサービスの過負荷として表示されます。429が続く場合は、利用枠も確認します。ClaudeのキャッシュヒットはPRの試験項目では実APIで確認されていません。

Fione #51 / Fione #57 / Fione #58