WebPerformerでクラウドの革新的サービスをエンタープライズシステムへ!

こんにちは。エヌデーデーの金子です。

WebPerformerをご利用の皆様、社内業務システムの開発及び、それに伴う業務DXはバッチリ推進されていらっしゃるでしょうか?

近年パブリッククラウドを起点とする先進的なサービスの成長、特にAIの隆盛が凄まじいです。

問い合わせ対応の自動化、在庫予測と最適化、配送ルート管理、人事評価支援、文書作成・要約翻訳…

少し前までにも全文検索やOCRなど、便利な機能をクラウドサービス経由で利用することは可能でしたが、AIエージェントの台頭によりさらに具体的な業務の自動化まで現実的となっています。

もともとパブリッククラウドをシステムに導入することは、インフラ管理からの開放という点において業務システムに大きなメリットを提供します。

それに加えて前述の革新的なサービスを導入することも、業務DXの実現において不可欠な要素となる時代が来ていると思います。

ただ、こういったパブリッククラウドの様々なサービスを、どうやってエンタープライズシステムとして展開すればよいか悩まれてはいませんか?

エンタープライズシステムをローコードで手軽に開発できるのはWebPerformer導入の最大の特徴です。

WebPerformerとクラウドをどのように掛け合わせると、現実的な業務DXを実現できるのか。

一例として、フロントにクラウドの革新的なサービスを導入し、バックエンドをWebPerformerでローコードに構築する、という構成が考えられます。

本記事ではこの構成をとる仮想システムをご紹介し、WebPerformer×クラウドサービスの可能性を皆様と探っていければと思います。

【想定する読者様】

  • WebPerformerを業務システムに使用している/したい方
  • Google Cloud(あるいはパブリッククラウド)を業務システムに活用している/したい方
  • クラウドやAIは便利そうだけど、どのようにエンタープライズシステムに取り入れるか思案中の方

想定業務の流れと部分的な業務自動化

では、例としてこんな業務を想定してみましょう。

パートナーエンジニアを社外から募集し、案件情報と突き合せ、採用承認を行う社内業務です。

  • 応募者は、スキルシートを添付したメールを窓口に送信します。
  • 募集窓口は、毎日応募メールをチェックし、社内システムに入力をしていきます。
  • 採用担当者は、応募メールとスキルシートを確認して、対象プロジェクトに求められる人材であるかを判定します。

 

こういった社内システムであれば、WebPerformerでシンプルに構築ができることが、想像に難くないですね。

応募データと案件データを蓄積するDBを使ってWebアプリを作成し、データ入力と承認フローをアプリ上で進めます。

しかし、募集窓口は毎日多数の応募メールからデータを手入力すると、時間がかかるし入力ミスも発生するでしょう。採用担当者の「応募データと案件データからスキルマッチ度合いを確認する」ことも、AIを使うことで負担軽減ができそうですね。

今回は、これにGoogle Cloudのサービスを導入し、部分的な業務自動化をしてみます。

以下の赤線に示す、「募集窓口のデータ入力」や「一次スキルマッチ確認」が自動化の対象です。

 

手間のかかる処理は自動化し、担当者の行う業務を軽減させていきましょう。

Google クラウドサービスを用いた自動化の手順

自動化の全体イメージ図は以下です。

Google Workspace上で窓口業務を行い、Google Cloud上でデータを保存し、WebPerformerアプリに連携していきます。

Google クラウドサービスにより自動化された結果をWebPerformerアプリに連携することで、その結果をエンタープライズシステムとして管理、活用できるというわけです。

順を追ってその内容を解説していきます。

窓口業務の自動化

まずはメールを確認し、応募情報を揃える窓口業務です。

今年のCloud Next’25で発表されたばかりの、Google Workspace Flowsを使用します。

Google Workspace各種リソースとの連携や、自分用のカスタムGemエージェントを処理に組み込むことができる、日常業務のノーコードAIツールです。

Google Workspace Flows

ここでは、以下のように処理を作っていきます。

  • 応募メールを受信をトリガーとして動く
  • カスタムGemに応募情報を抽出してもらう
  • 添付ファイル(スキルシート)があれば、指定のGoogle Driveフォルダに保存
  • 応募情報をGoogle SpreadSheetに書き込む
  • 採用担当者にGoogle Chatで通知

カスタムGemは、「受信したメールから応募者名とスキル要約を抽出して」といった自然言語の指示で作成できる、自分専用のAIエージェントのことです。

これを以下のように作っておくことで、Workspace Flowsで使えるようになります。

※Google Workspace Flowsの注意点※

Workspace Flowsは以下のようにAIを使用した抽出・条件式を作ることができます。

しかし2025年9月4日現在、これらのステップは英語にしか対応していません。

いずれは多言語対応するかと思います。

この記事で作ったサービスでは、Gemがメールを英訳→判定ステップで和訳、と再翻訳を行うなんともイケてない方法で、無理やり日本語のメールを変数に落としています。

・Extract(抽出)ステップで設定しているプロンプトの一部

The title from the input JSON. English should be translated into Japanese and then stored.

メールから抽出した情報は、Google Workspace Flowsから直接DBに書き込むことは2025年9月4日現在ではできません

(※また2025年9月4日現在、汎用的なHTTPリクエストを送ることもできません。まだアルファプログラムであるので、これから外部サービス連携が充実してくると思います。)

回避策として一度SpreadSheetに書き込み、これをトリガにDB更新リクエストを送信するGoogle Apps Scriptを仕込みます。

Google Apps ScriptはGoogleアカウントがあれば誰でも利用できる、ブラウザ上で開発が完結するJavaScriptベースのアプリケーション開発プラットフォームです。

appscripts.jsonに記述しOAuth同意を行うことで、指定したGoogle Cloud PlatformプロジェクトのリソースやGoogle Workspace上のリソースを操作することができます。

ここでは、以下の処理を作っています。

  • 追加された行の情報を取得する
  • 添付ファイル(前段で追加したGoogle Drive内ファイル)が存在すれば、Google Cloud Storageへ移動
  • DB更新を行うためのリクエストを作成し、Google Cloud Run FunctionへPOST

ここまでで、窓口業務の自動化が完成です。

人間が一切介在することなく、応募メールの受信から、内容のAIによる解析、バックエンドで処理するためのデータ準備までが全自動で行われるようになりました!

※注意事項

一次スコアリング業務の自動化

続いてDB保存と、採用担当者をサポートする一次スコアリング業務を作ります。

これをCloud Run Functionsで構築していきます。

Cloud Run Functionsはサーバーを管理することなくコードを実行できる、イベント駆動型のサーバーレスコンピューティングプラットフォームです。

これを使って、以下のAPIを作成してきます。

  • リクエストから応募情報、Cloud Storageから添付ファイルを取得
  • 応募情報から「応募対象案件」をDBから検索
  • 案件情報とスキルシートをGeminiに渡し、スキルマッチ度を10段階でスコアリング依頼
  • 結果をDBに保存

Geminiは以下のように、API呼び出しをすることが可能です。

採用担当者が行うような、スキルマッチ度の確認方法を入力してスコアリングをお願いしています。

これから、Cloud Run Functionsの中でGeminiにスコアリングをお願いするための「指示書(プロンプト)」をPythonコードで見てみましょう。

# Vertex AIを初期化
vertexai.init(project="your-project", location="us-central1")

# 使用するモデルを指定
model = GenerativeModel("gemini-2.5-pro")

# Geminiに渡すPDFファイルデータを作成
skill_sheet_part = Part.from_data(
    mime_type="application/pdf",
    data=skill_sheet_bytes
)

# Geminiへの指示(プロンプト)を作成
prompt = f"""
あなたは経験豊富なIT系人事担当者です。
以下の募集要項と、添付されたPDFのスキルシートを精査し、候補者がどれだけ募集要項にマッチしているかを評価してください。

# 募集要項
- 案件名: {recruitment_data.get('project_name')}
- 募集内容: {recruitment_data.get('project_overview')}
- その他メモ: {recruitment_data.get('memo')}

# 評価と出力形式
- 候補者のスキル、経験が募集要項にどれだけ合致するかを1から10の10段階で評価してください。
- なぜそのスコアになったのか、具体的な理由を200文字以内で記述してください。
- 回答は必ず以下のJSON形式のみで出力してください。他の文字列は含めないでください。
{{
  "score": <1から10の整数>,
  "score_reason": "<評価理由>"
}}
"""

print("--- Gemini APIにスコアリングをリクエストします ---")
# モデルにコンテンツを送信
response = model.generate_content([prompt, skill_sheet_part])

# レスポンスからJSONを抽出
response_text = response.text.strip().replace("```json", "").replace("```", "")
result = json.loads(response_text)

このように、募集要項とスキルシート(PDF)を渡し、「人事担当者として」「10段階評価で」「JSON形式で」回答するよう明確に指示するのが、AIから安定した結果を得るためのポイントです。

※注意事項

  • Gemini APIは無料枠も用意されていますが、有料プランを使用することでレート上限の引き上げのみならず、プロンプトとレスポンスが Google サービスの改善に使用されなくなります。
  • 料金体系はGoogle AIで使用する場合と、Vertex AIで使用する場合とで異なります。

WebPerformerによるエンタープライズシステム化

ここまでで、AIによる情報抽出とスコアリングの自動化が完了です。

しかし、業務はここで終わりではありません。

AIが出した結果を人間が確認し、最終的な判断をくだして社内展開するには業務アプリケーションが必要です。

ここからは、その最後のバックエンド業務をWebPerformerで構築していきます。

内容確認と承認フローを進めるための、応募データの一覧画面と詳細画面を構築していきます。

こういったシンプルな業務画面は、本当に素早く作成できるのはWebPerformerの大きな強みです。

応募メールが来るたびに、データが自動で追加されていきます。

本来なら、応募メールを確認して担当者が行追加をする部分が自動化され、画面を開いて確認するだけになりましたね。

AIが入力した応募データ、スコアリングを詳細画面で確認し、承認/取下げ等社内業務を進めることができます。

例では、「インフラ技術者募集案件に対してPM能力に長けた人物が応募してきた」画面です。

AIがスキルシートと案件情報を確認し、スコアリングと根拠づけを行ってくれていることが分かります。

最終的には採用担当者は自分の目でスキルシートを確認するわけですが、スコアリングを含めた最初のデータ入力が整備されていることでぐっと業務が楽になりますね。

まとめ

いかがでしたでしょうか。

本記事では採用業務を例に、AIが人間の業務をサポートする未来をご紹介しました。

WebPerformerにGoogle Cloudのサービスを導入することで、革新的なサービスが業務アプリケーションに革命をもたらすような感覚が共有できれば何よりです。

この他にも、クラウドサービスを利用することは「インフラ管理からの解放・軽減」「コスト最適」「開発サイクルの高速化」「可用性・信頼性向上」など多くのメリットをもたらします。

AI以外にも、多様なサービスをアプリケーションから利用することも可能となります。

さらにWebPerformerがv2.7からコンテナ対応したことで、サーバレスなクラウド実行環境にデプロイすることも可能となり、よりクラウドとの親和性が上がっています。

今後、WebPerformerをクラウド活用プラットフォームと位置付け、様々なクラウドサービスと連携し、業務DXを実現することも、可能かもしれません。

皆様は、WebPerformer×クラウドの組み合わせで、どんな業務DXを思い描くでしょうか?