目次
- はじめに
- [自然言語で検索実行] スクリプトステップとは
- 想定される利用例
- 主な設定項目
- 検索精度を向上させるポイント
- 活用シナリオ
- まとめ
1. はじめに
このブログでは、「Claris FileMaker 2025 - AI を活用するための新機能」でご紹介したトピックの中から、 [自然言語で検索実行] スクリプトステップを掘り下げて解説します。
従来の FileMaker での検索は、いわゆる「キーワード検索」でした。目的のデータを見つけるには、適切なキーワードを考え、検索対象のフィールドを選び、必要に応じて演算子(「...」や「*」など)を使い分ける必要がありました。つまり、何を探したいかだけでなく、どう探すかもユーザ自身が考えなければならなかったのです。しかし、FileMaker 2025 で追加されたこの機能を使えば、まるで人に頼むように自然な言葉でデータを検索できるようになります。
2. [自然言語で検索実行] スクリプトステップとは
このスクリプトステップは、ユーザが入力した自然言語の検索条件と、現在表示されているレイアウト上のフィールド情報を AI モデルに送信します。AI モデルはその内容を分析して適切な検索条件(およびソート順)を生成し、それが FileMaker 側で実行されます。
大きな特徴は、開発者が複雑な検索画面やロジックを作り込む必要も、ユーザが演算子を用いて検索ロジックを考える必要もなく、AI モデルがレイアウト上のフィールドを「理解」して、どの項目をどう検索すべきか判断してくれる点にあります。
また、安全性についても特筆すべき点があります。AI をビジネスで活用する際の最大の懸念は「機密データの漏洩」ですが、[自然言語で検索実行] スクリプトステップでは、クラウドサービスの AI モデルを使用している場合も外部に送信されるのはレイアウト上のフィールド情報のみであり、実際のレコードデータが送信されることはありません。
■ 動作の 4 ステップ(内部メカニズム)
このスクリプトステップが実行されるとき、裏側では以下の手順が瞬時に行われています。
1. フィールド情報の収集: 現在表示されているレイアウト上のすべての検索可能なフィールドを特定し、フィールド名、タイプ、およびフィールド定義時に設定したコメント(5章の「検索精度を向上させるポイント」を参照)を情報として収集します。
2. AI モデルへの送信: 1. の手順で収集したフィールド情報と、ユーザが入力した検索内容を AI モデルに送信します。
3. 検索クエリーの生成: AI モデルはフィールド情報を「仕様書」として読み解き、ユーザの入力した検索内容に応じた検索条件とソート順を生成して FileMaker に返します。
(ここがこのスクリプトステップの特徴なのですが、AI モデルが、スクリプトステップから送信された情報に基づき、そのレイアウトで実行可能な検索条件を判断して返してくれる、というわけです。)
4. 実行: FileMaker は受け取った条件をもとに、検索を実行し、対象レコードを更新します。
このように、[自然言語で検索実行] スクリプトステップは単なる便利機能ではありません。このスクリプトステップを活用できれば、開発者がいくつものレイアウトで検索ロジックを作り込んだり、ユーザが細かに検索条件を設定したりする必要がなくなり、生産性が格段に向上するでしょう。
3. 想定される利用例
「探したい情報」を言葉にするだけで良いため、活用の幅は非常に広いです。
- 曖昧な表現での検索
- 「福岡県在住の 20代、男性を探して」:AI モデルが「住所」「年齢」「性別」フィールドなどを判断し、適切な数値範囲で検索します。
- 「関東地方の、仕入先業者を探して」:曖昧な所在情報を用いて複数のフィールドにまたがる検索も一発で実行可能です。
- 期間や日付の指定
- 「2025年1月の議事録を見たい」:演算子が指定されていなくても日付範囲を特定します。
- ソート(並べ替え)を含めた指示
- 「千葉県の人を探して年齢順に表示して」:検索と同時に並べ替えも行えます。
なお、探したい情報を得るために集計や統計が必要な場合(「今月一番売れた商品は?」など)は、[自然言語で SQL クエリーを実行] スクリプトステップが適しています。このスクリプトステップについては、こちらで解説していますので参考にしてみてください。
4. 主な設定項目
[自然言語で検索実行] スクリプトステップを構成する主な設定項目は以下の通りです。
非常にシンプルなオプションで、簡単に実装することが可能です。
※ 設定項目の詳細については Claris FileMaker Pro ヘルプをご参考ください。
5. 検索精度を向上させるポイント
AI モデルが常に完璧な検索条件を作れるとは限りません。精度を高めるためのコツがいくつかあります。
- フィールドのコメントの活用:データベース管理のフィールド定義で、コメント欄に「[LLM]」と記載し、そのフィールドの役割(例:[LLM] 議事録の内容)を書いておくと、AI モデルがフィールドの用途を正しく理解しやすくなります。
- プロンプトでのフィールド名指定:「東京の人」よりも「住所が東京の人」のように、カスタム App 内の実際のフィールド名(この場合は「住所」)をプロンプトに含めると、AI モデルでの誤解を防げます。
- プロンプトテンプレートによるチューニング:「50代」といった表現がうまく解釈されない場合、[プロンプトテンプレートを構成] スクリプトステップで「X0代と言われたら、X0 から X9 までの範囲で検索すること」といった追加ルールを定義できます。
また、もし意図しない検索結果になった場合は、AI モデルが生成した検索条件を確認し、チューニングすることで改善できます。検索条件の確認方法は以下の 2つです。
- 検索結果の画面でショートカットキーを使用する(Windows: Ctrl + R / macOS: command + R)
- [自然言語で検索実行] スクリプトステップの [取得] オプションを [検索条件(JSON 形式)] に指定し、実行する
確認した検索条件をもとに、プロンプトやフィールドコメントを調整することで、最適な結果が得られるようになります。
6. 活用シナリオ
以下、サンプルファイルを使ったシンプルな実装例を紹介します。ファイルはこちらからダウンロードできますので、ぜひ試してみてください。
※ この後の手順を実行するには、OpenAI API キー(有料)を取得してスクリプトに登録する必要があります。登録方法については「AI に関連するスクリプトステップをサクッと体験」ガイドブックシリーズをご参考ください。
シナリオ:グローバルフィールドに入力した言葉で検索を実行する
1. ユーザが質問を入力するためのグローバルフィールド(GLOBAL::自然言語で検索_g)を定義し、以下のスクリプトを作成します。
たったこれだけのスクリプトで、 AI を活用した自然言語による検索が実装できます。
2. ブラウズモードで、グローバルフィールドに「四国地方の20代男性を探して」と入力し、結果を確認します。
3. ショートカットキー(Windows: Ctrl + R / Mac: command + R)を使用して、検索条件を確認します。図のように、AI モデルが考えて実行した検索条件を確認することができます。
なお、サンプルファイルには「顧客マスタ」、「商品マスタ」、「商品在庫」、「注文」の 4つのレイアウトが用意されていますが、すべてのレイアウトで同じスクリプトとグローバルフィールドを使い回しています。
前のセクションで述べたとおり、[自然言語で検索実行] スクリプトステップが、実行されたレイアウトに配置されているフィールド情報を自動的に収集して AI モデルに渡してくれるため、レイアウトごとに検索ロジックを作り分ける必要がないのです。こうした仕組みにより、開発工数を大きく削減できます。
7. まとめ
[自然言語で検索実行] スクリプトステップは、FileMaker における「検索」そのものの利便性を飛躍的に向上させる画期的な機能です。以下のように、ユーザにとっても開発者にとっても大きなメリットがあります。
- ユーザ体験の向上: 検索条件の設定に悩む必要がなくなり、複雑な演算子やフィールド配置を覚えなくても、誰でも直感的にデータを活用できるようになります。入力手段が限られる iPhone や iPad(Claris FileMaker Go)でも、音声入力などと組み合わせて手軽に検索が可能です。
- 開発工数の大幅削減: あらゆる検索パターンを想定して複雑な検索画面やスクリプトを作り込む必要がなくなり、このスクリプト 1つで多様な要求に応えられます。
また、クラウドサービスの AI モデルを利用している場合も外部に送信されるのはフィールド情報のみで、実際のレコードデータが送信されることはない、という安全面での特長も大きいでしょう。
[自然言語で検索実行] スクリプトステップは、日々の業務で幾度となく行われる「検索」の強力な武器になります。「人に話しかけるようにデータを扱える」という新しいスタンダードを、ぜひ皆さんのカスタム App でも体験してみてください!