Maison > Périphériques technologiques > IA > Gemini 2.0 Flash: Tutoriel étape par étape avec projet de démonstration

Gemini 2.0 Flash: Tutoriel étape par étape avec projet de démonstration

尊渡假赌尊渡假赌尊渡假赌
Libérer: 2025-03-02 09:33:09
original
422 Les gens l'ont consulté

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

GEMINI 2.0 de Google, avec le puissant modèle Flash Gemini 2.0, améliore considérablement le traitement d'image et audio. Ce tutoriel vous guide à travers la construction d'un assistant visuel capable d'interpréter le contenu à l'écran et de répondre aux questions connexes.

Voici une démo du projet:

Étape 2: Configuration de l'environnement de développement

Ce projet utilise plusieurs packages Python: google-genai, pyautogui, python-dotenv, sounddevice et numpy. Installez-les à l'aide de pip:

pip install google-genai pyautogui python-dotenv sounddevice numpy
Copier après la connexion

Alternativement, utilisez un environnement conda:

conda create --name gemini python=3.11
conda activate gemini
pip install -r requirements.txt
Copier après la connexion

(en supposant requirements.txt répertorie les packages nécessaires).

Étape 3: Construire un chatbot basé sur le texte

Cette section montre la création d'un chatbot de ligne de commande à l'aide du modèle Flash Gemini 2 de Google et de la bibliothèque google.genai. Reportez-vous à la documentation officielle de Gemini 2.0 pour le dépannage. Le code complet est dans text.py (référentiel github).

  • Initialisation du client: Chargez en toute sécurité votre clé API et initialisez le client Google Genai à l'aide de python-dotenv pour gérer les variables d'environnement à partir d'un fichier .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!")
Copier après la connexion
  • appels API asynchrones: Utiliser asyncio pour des demandes asynchrones efficaces:
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())
Copier après la connexion
  • CHAT interactif: Améliorez le chatbot avec une boucle pour l'interaction utilisateur continu, sortant lorsque l'utilisateur type "quitte". Cette version améliorée permet des conversations multi-tournées.

Étape 4: Intégration du mode audio

Activer les réponses audio en modifiant le code:

  1. import sounddevice et numpy.
  2. set config = {"response_modalities": ["AUDIO"]}.
  3. Gérer les flux audio en utilisant sounddevice.OutputStream.
  4. traitez les données audio à partir des réponses et écrivez-les au flux audio. (Voir audio.py dans le référentiel GitHub pour le code complet).

Étape 5: Extension des fonctionnalités avec des outils

Gemini 2.0 permet l'intégration des outils. Cet exemple démontre un outil de lecture de fichiers:

  • Définition de la fonction:
def load_file_content(filename):
    try:
        with open(filename, "rt") as f:
            return {"result": f.read()}
    except Exception as e:
        return {"error": "Could not load file content"}
Copier après la connexion
  • Définition du schéma: Définissez un schéma pour la fonction, y compris le nom, la description, les paramètres et la sortie.

  • Enregistrement des outils: Fournir le schéma à la configuration du modèle: config = {"tools": [{"function_declarations": [load_file_content_schema]}], "response_modalities": ["TEXT"]}.

  • Gestion des appels de fonction: Profiter des appels d'outils à partir du modèle, exécutez la fonction correspondante et renvoyez le résultat. (Voir tool.py et tool_spec.py dans le référentiel). L'exemple montre également comment utiliser des outils intégrés comme google_search et code_execution.

Étape 6: Création d'un assistant visuel

Cette section détaille la construction d'un assistant visuel qui analyse les captures d'écran. En raison des limitations de l'API, cela utilise un flux de travail de demande de demande synchrone.

  • Demande synchrone: Utiliser client.models.generate_content pour le traitement d'image synchrone.

  • Gestion d'images: Utilisez PIL pour charger et redimensionner les images.

  • Capture de capture d'écran: Utiliser pyautogui pour capturer des captures d'écran.

  • Implémentation de l'assistant visuel: Combinez la capture de capture d'écran, le traitement d'image et la manipulation rapide pour créer un assistant visuel interactif. Incluez un system_instruction pour ignorer la fenêtre du terminal. (Voir vision.py dans le référentiel).

Conclusion

Ce tutoriel montre les capacités de Gemini 2.0 Flash dans la création de chatbots avec du texte et de l'audio, intégrant des outils pour des fonctionnalités étendues et créant un assistant visuel. Bien que l'API actuelle ait des limites, le potentiel d'applications multimodales en temps réel est passionnante. Une exploration plus approfondie peut impliquer l'utilisation de la détection d'objets de Gemini 2.0 et des capacités de compréhension 3D.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal