VertexAI 環境から「Gemini 2.0 Pro Experimental」「Gemini 2.0 Flash」「Gemini 2.0 Flash-Lite」を活用して日常業務の質を高める

:::note info
本記事は **Azure OpenAI**、**Anthropic Claude**、**Google Vertex AI Gemini** などの**生成AI**を活用して、日々の業務生産性を向上させたい方向けの内容です。  
特に、業界・業種・学生などを問わず**幅広くおすすめ**です。🎯
:::

## 👤 著者プロフィール

| 項目           | 詳細                                   |
|:--------------|:--------------------------------------|
| **使用デバイス** | 主にMac                                |
| **業務内容**     | IT営業（提案書作成、製品デモ制作）         |

---

## 💡 なぜ Gemini 2.0 ファミリーが注目されているのか？

[Gemini 2 Family公式ブログ](https://developers.googleblog.com/en/gemini-2-family-expands/) より
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214013/0f77627b-ba3b-2096-ebbe-87da1d7a0750.png)

本日、**Gemini 2.0 Pro Experimental / Gemini 2.0 Flash / Gemini 2.0 Flash-Lite** の3モデルが公開・バージョンアップされました。

Geminiといえば [Chatbot Arena](https://lmarena.ai/) でも無双中の「Gemini-2.0」を筆頭に評価が高く、今回の「Gemini-2.0-Pro Experimental」も**ランキング上位**に入っています。  
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214013/4744da8e-6094-d022-052a-733474292e13.png)

利用方法としては **Vertex AI** をはじめ、**AI Studio** や **Gemini App** でも利用できるとのこと。以下に3モデルの概要をまとめました。

## 👤 Gemini 2.0 ファミリーの3モデル

1. **Gemini 2.0 Flash**  
   - **一般提供**が開始  
   - レート制限の向上やパフォーマンス強化  
   - 価格設定の簡素化  
   - 100万トークンのコンテキストウィンドウ、**マルチモーダル入力**対応などを含む  
   - 画像・音声出力やマルチモーダルライブAPIは数か月以内に一般提供予定  

2. **Gemini 2.0 Flash-Lite**  
   - **パブリックプレビュー**で利用可能  
   - **最もコスト効率が高い**モデル  
   - 大規模テキスト出力ユースケース向けにコスト最適化されている  

3. **Gemini 2.0 Pro**  
   - **コーディング**や**複雑なプロンプト**に最適  
   - シリーズ最高性能のモデル  
   - 現在は**実験的アップデート版**として提供中  

---

# 🛠 実装方法

ここでは、**Python コード**で API を呼び出し、クリップボードの内容を入力としてモデ ルに投げて回答を得る流れを紹介します。

## 全体のフロー

1. **Pythonコード**を作成（後述）  
2. **クリップボード**にモデルへ質問したいテーマをコピー  
3. **Pythonコード**を実行  
4. **回答**を確認  

:::note info
今回は試験モデルの呼び出しという形なので**デプロイは不要**です。  
通常の Vertex AI 同様に、**REGION** や **PROJECT_ID**、仮想環境の準備は必要です。
:::


### コード実装
もちろん Vertex AI の GUI ページからサンプルコードは出力できるのですが、それだと絶妙に欲しい形の出力や、入力ができなかったので少し魔改造しました。

（環境変数は本来ベタ打ちしないですが、サンプル用に記載してます）
```Python:Python
#Must
from google import genai
from google.genai import types
import base64

#pyperclipを利用するなら必要
import os
import pyperclip

system_prompt = """
あなたは有能なAIアシスタントです。以下の手順に従って問題を解決してください：

1. まず、与えられたテーマや意図を注意深く読み、理解してください
2. テーマの主要な要素を分解してください
3. テーマの理解や解決のための各ステップを考えてください
4. 明確な理由付けとともに解決策を提示してください
5. これまでの出力を批判的に評価して最終出力の質を高めてください

以下の点に注意してください：
- すべての過程を示してください
- 各ステップでの理由付けを説明してください
- 具体的かつ正確に記述してください
- エッジケースも考慮してください
"""

def generate():
  client = genai.Client(
      vertexai=True,  
      project="ここにプロジェクト名を入れる",
      location="ここにロケーションを入れる"
  )
  #モデル名の切り替えのみで変更可能
  model = "gemini-2.0-pro-exp-02-05"
  #model = "gemini-2.0-flash-lite-preview-02-05"
  #model = "gemini-2.0-flash-001"

  contents = [
    types.Content(
      role="user",
      parts=[
        types.Part.from_text(pyperclip.paste())
      ]
    ),
  ]
  tools = [
    types.Tool(google_search=types.GoogleSearch())
  ]
  generate_content_config = types.GenerateContentConfig(
    temperature = 0.3,
    top_p = 1,
    max_output_tokens = 8192,
    response_modalities = ["TEXT"],
    safety_settings = [types.SafetySetting(
      category="HARM_CATEGORY_HATE_SPEECH",
      threshold="OFF"
    ),types.SafetySetting(
      category="HARM_CATEGORY_DANGEROUS_CONTENT",
      threshold="OFF"
    ),types.SafetySetting(
      category="HARM_CATEGORY_SEXUALLY_EXPLICIT",
      threshold="OFF"
    ),types.SafetySetting(
      category="HARM_CATEGORY_HARASSMENT",
      threshold="OFF"
    )],
    tools = tools,
    system_instruction=[types.Part.from_text(system_prompt)],
  )

  response = client.models.generate_content(
      model = model,
      contents = contents,
      config=generate_content_config,
  )

  print(response.text)
  pyperclip.copy(response.text) 
  
generate()
```

## 📸 出力イメージ
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214013/02454d1a-85a8-a31d-922a-5ddaa9b957ec.png)



（長いので記事の一番下にテキストをベタ貼りしてます）
うまくできました‼️

## 🔥 活用のコツ

1. **外部アプリ/サービス連携**: Pythonを活用してAPI経由で呼び出せるので、Input/Outputを他の既存アプリやサービスと連携してサービス体験を拡張できる 🔀
2. **エイリアス設定**: `python sample.py`などをショートカット化 ⌨️
3. **プロンプト設計**: 体感ですが、詳細な要件や振り返り事項、期待する出力形式を記載することで、しっかり命令を反映してくれています。他のモデルだと特に重要なものを反映するだけだったり、出力量をサボる傾向がある 📝


## ⚠️ 注意点

:::note warn
- Google VertexAIの環境設定は別途必要です
- 社内のセキュリティポリシーに準拠したAPI利用を心がけましょう
:::

## 🎉 まとめ
Google VertexAIは、高度なAI機能を必要とする様々な分野・業務に最適なソリューションです。
適切な実装と利用戦略により、以下のメリットが得られます：
- 業務プロセスの効率化
- より深い分析と洞察の獲得
- スケーラブルなAIソリューションの構築

#### ぜひ皆様の業務効率化にお役立てください！ 🙌

#### 上記Python出力テキストのベタ貼り 🖼️
```出力内容:出力内容
Input = "VertexAI を日本の大手製造業（ディスクリート：多品種少量生産）で採用するべきか？"
Output =

はい、日本の大手製造業（ディスクリート：多品種少量生産）において、Vertex AI の採用は非常に有効な選択肢となり得ます。ただし、導入にあたっては、企業の具体的な状況やニーズを十分に考慮し、慎重に検討を進める必要があります。

以下に、検討のステップと、Vertex AI が日本の大手製造業（ディスクリート：多品種少量生産）にもたらす可能性のあるメリット、考慮すべき点、そして最終的な提案をまとめます。

**ステップ 1：現状の課題と目標の明確化**

まず、企業が抱える現状の課題と、Vertex AI 導入によって達成したい目標を明確にします。多品種少量生産の製造業では、以下のような課題が考えられます。

*   **需要予測の精度向上:** 多品種少量生産では、製品ごとの需要変動が大きく、予測が困難です。
*   **生産計画の最適化:** 多様な製品を効率的に生産するための、柔軟かつ迅速な計画立案が求められます。
*   **品質管理の高度化:** 製品の品質を維持・向上させながら、コストを削減する必要があります。
*   **サプライチェーンの最適化:** 部品や材料の調達から製品の出荷まで、サプライチェーン全体を効率化する必要があります。
*   **熟練工の技術継承:** 経験豊富な技術者のノウハウを、若手やAIに継承する必要があります。

**ステップ 2：Vertex AI の機能と適用可能性の評価**

Vertex AI は、Google Cloud が提供する機械学習プラットフォームであり、以下の機能を提供します。

*   **AutoML:** コーディング不要で、カスタム機械学習モデルを構築できます。
*   **トレーニング済み API:** 画像認識、自然言語処理、翻訳などの、すぐに利用可能な API を提供します。
*   **カスタムモデルのトレーニングとデプロイ:** TensorFlow、PyTorch、scikit-learn などのフレームワークを使用して、独自のモデルを開発・運用できます。
*   **MLOps:** 機械学習モデルのライフサイクル全体（開発、トレーニング、デプロイ、モニタリング）を管理できます。

これらの機能を、ステップ 1 で明確化した課題にどのように適用できるかを検討します。例えば、以下のような活用が考えられます。

*   **需要予測:** 過去の販売データ、市場トレンド、季節性などのデータを基に、AutoML を使用して高精度な需要予測モデルを構築します。
*   **生産計画:** 需要予測モデルと連携し、生産リソース（人員、設備、材料）を最適化する計画を自動生成します。
*   **品質管理:** 製品の画像やセンサーデータを分析し、異常検知や不良品予測を行うモデルを構築します。
*   **サプライチェーン:** 各工程のリードタイムや在庫状況を予測し、サプライチェーン全体を最適化します。
*   **技術継承:** 熟練工の作業データを分析し、AI モデルに学習させることで、技術の可視化や自動化を支援します。

**ステップ 3：PoC（概念実証）の実施**

Vertex AI の導入効果を具体的に検証するために、小規模な PoC を実施します。

1.  **対象業務の選定:** 最も効果が見込める業務（例えば、需要予測や品質管理）を選びます。
2.  **データの準備:** 必要なデータを収集・整理し、Vertex AI で利用できる形式に変換します。
3.  **モデルの構築と評価:** AutoML やトレーニング済み API を活用し、モデルを構築・評価します。
4.  **結果の分析:** PoC の結果を分析し、導入効果や課題を洗い出します。

**ステップ 4：導入計画の策定と実行**

PoC の結果を踏まえ、本格的な導入計画を策定します。

1.  **対象業務の拡大:** PoC で効果が確認された業務から、段階的に対象を広げていきます。
2.  **システム連携:** 既存のシステム（ERP、MES、SCM など）との連携を検討します。
3.  **人材育成:** Vertex AI を活用できる人材を育成します。
4.  **運用体制の構築:** モデルのモニタリングや再学習など、継続的な運用体制を構築します。

**Vertex AI 導入のメリット（多品種少量生産の製造業）**

*   **生産効率の向上:** 需要予測の精度向上、生産計画の最適化により、無駄な生産や在庫を削減できます。
*   **品質向上:** 異常検知や不良品予測により、品質問題の早期発見と対策が可能になります。
*   **コスト削減:** 生産効率の向上、品質向上、サプライチェーンの最適化により、全体的なコストを削減できます。
*   **競争力強化:** 新製品の開発期間短縮、顧客ニーズへの迅速な対応により、競争優位性を確立できます。
*   **技術継承の促進:** 熟練工のノウハウを AI に学習させることで、技術の継承と属人化の解消を支援します。

**考慮すべき点**

*   **データ品質:** 機械学習モデルの精度は、データの質に大きく依存します。データの収集・整理・クレンジングを丁寧に行う必要があります。
*   **初期投資:** Vertex AI の利用料、システム連携費用、人材育成費用など、初期投資が必要です。
*   **運用負荷:** モデルのモニタリングや再学習など、継続的な運用が必要です。
*   **セキュリティ:** 機密情報や個人情報を取り扱う場合は、適切なセキュリティ対策が必要です。

**最終的な提案**

日本の大手製造業（ディスクリート：多品種少量生産）において、Vertex AI は、生産効率の向上、品質向上、コスト削減、競争力強化、技術継承の促進など、多くのメリットをもたらす可能性があります。

ただし、導入にあたっては、企業の具体的な状況やニーズを十分に考慮し、慎重に検討を進める必要があります。まずは、PoC を実施し、導入効果や課題を具体的に検証することをお勧めします。

PoC の結果を踏まえ、段階的に導入範囲を拡大し、既存システムとの連携や人材育成、運用体制の構築を進めることで、Vertex AI の導入効果を最大化できるでしょう。


```

> 本記事へのご質問やご意見がありましたら、コメントにてお気軽にお寄せください。