ホームページ >テクノロジー周辺機器 >AI >Gemini 2.0 Flash:Demo Projectを使用したステップバイステップのチュートリアル

Gemini 2.0 Flash:Demo Projectを使用したステップバイステップのチュートリアル

尊渡假赌尊渡假赌尊渡假赌
尊渡假赌尊渡假赌尊渡假赌オリジナル
2025-03-02 09:33:09431ブラウズ

Gemini 2.0 Flash: Step-by-Step Tutorial With Demo Project

GoogleのGemini 2.0は、強力なGemini 2.0 Flashモデルを備えたもので、画像とオーディオ処理を大幅に強化します。このチュートリアルは、画面上のコンテンツを解釈し、関連する質問に答えることができるビジュアルアシスタントを構築することを導きます。

プロジェクトのデモ:

ステップ2:開発環境のセットアップ このプロジェクトでは、

google-genaipyautogui、およびpython-dotenvのいくつかのPythonパッケージを使用しています。 PIPを使用してそれらをインストールします:sounddevice numpy

または、コンドラ環境を使用してください:
pip install google-genai pyautogui python-dotenv sounddevice numpy

(必要なパッケージをリストすると
conda create --name gemini python=3.11
conda activate gemini
pip install -r requirements.txt
を仮定します)。

requirements.txt

ステップ3:テキストベースのチャットボットの構築

このセクションでは、GoogleのGemini 2 Flashモデルとライブラリを使用してコマンドラインチャットボットの作成を示しています。 トラブルシューティングについては、公式のGemini 2.0ドキュメントを参照してください。完全なコードは

(githubリポジトリ)にあります。

google.genai text.py

クライアントの初期化:
    APIキーを安全にロードし、
  • を使用してGoogle Genaiクライアントを初期化して、ファイルから環境変数を管理します: python-dotenv .env
from google import genai
from dotenv import load_dotenv
import os

load_dotenv()
client = genai.Client(api_key=os.getenv("GOOGLE_API_KEY"), http_options={"api_version": "v1alpha"})
print("Connected to the AI model!")
非同期API呼び出し:
    効率的な非同期リクエストのために
  • を使用します: asyncio
import asyncio

async def main():
    # ... (client initialization as above) ...
    async with client.aio.live.connect(model="gemini-2.0-flash-exp", config={"response_modalities": ["TEXT"]}) as session:
        # ... (send and receive messages) ...

asyncio.run(main())
インタラクティブなチャット:
    ユーザーが「終了」と入力すると終了するためのループでチャットボットを強化します。 この改善されたバージョンにより、マルチターン会話が可能になります
  • ステップ4:オーディオモードの統合
コードを変更して、

オーディオ応答を有効にします:

インポート

および

  1. setsounddevicenumpy
  2. config = {"response_modalities": ["AUDIO"]}を使用してオーディオストリームを管理します
  3. 応答からオーディオデータを処理し、オーディオストリームに書き込みます。 (完全なコードについては、GitHubリポジトリを参照してください)。
  4. sounddevice.OutputStream
  5. ステップ5:ツールを使用して機能を拡張します
  6. audio.py
  7. gemini 2.0では、ツールの統合が可能です。 この例は、ファイル読み取りツールを示しています:

関数定義:

  • スキーマ定義:
名前、説明、パラメーター、出力を含む関数のスキーマを定義します。
  • ツール登録:モデル構成にスキーマを提供:config = {"tools": [{"function_declarations": [load_file_content_schema]}], "response_modalities": ["TEXT"]}

  • 関数呼び出し処理:モデルからのプロセスツール呼び出し、対応する関数を実行し、結果を返送します。 (リポジトリのtool.pyおよびtool_spec.pyを参照)。 この例では、google_searchcode_execution

  • ステップ6:ビジュアルアシスタントの作成 このセクションでは、スクリーンショットを分析するビジュアルアシスタントの構築を詳述しています。 APIの制限により、これは同期リクエスト応答ワークフローを使用します。

    同期画像処理には

      同期リクエスト:
    • を使用します。 client.models.generate_content

    • 画像処理:
    • PILを使用して画像をロードおよびサイズ変更します。

    • スクリーンショットキャプチャ:
    • スクリーンショットをキャプチャするために

      pyautogui

    • ビジュアルアシスタントの実装:

      スクリーンショットキャプチャ、画像処理、およびインタラクティブなビジュアルアシスタントを作成するためのプロンプト処理を組み合わせます。 端子ウィンドウを無視するには、を含めます。 (リポジトリのを参照)。system_instruction vision.py

    結論

    このチュートリアルでは、テキストとオーディオを備えたチャットボットを構築し、拡張機能のためのツールの統合、視覚的なアシスタントの作成におけるGemini 2.0 Flashの機能を示しています。 現在のAPIには制限がありますが、マルチモーダルリアルタイムアプリケーションの可能性はエキサイティングです。 さらなる調査には、Gemini 2.0のオブジェクト検出と3D理解機能の使用が含まれます。

    以上がGemini 2.0 Flash:Demo Projectを使用したステップバイステップのチュートリアルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

    声明:
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。