Cette page explique comment migrer du code conçu pour le SDK OpenAI vers le SDK Google Gen AI afin d'utiliser les modèles Gemini sur la plate-forme d'agent Gemini Enterprise.
Présentation de la migration
Le notebook suivant illustre une migration pratique de la bibliothèque openai vers la bibliothèque google-genai :
Mappage d'API et de syntaxe
Le tableau suivant compare les composants, les méthodes et les paramètres principaux du SDK OpenAI avec ceux du SDK Google Gen AI.
| Fonctionnalité | SDK OpenAI (openai) |
SDK Google Gen AI (google-genai) |
|---|---|---|
| Initialisation du client | client = OpenAI(api_key=...) |
client = genai.Client(vertexai=True, ...) |
| Méthode de génération | client.chat.completions.create |
client.models.generate_content |
| Méthode de streaming | stream=True (paramètre) |
client.models.generate_content_stream (méthode) |
| Entrée utilisateur | messages=[{"role": "user", "content": "..."}] |
contents="..." (str) ou contents=[...] (liste) |
| Instructions système | messages=[{"role": "system", "content": "..."}] |
config=types.GenerateContentConfig(system_instruction=...) |
| Accès à la réponse | response.choices[0].message.content |
response.text |
| Historique des chats | Gestion manuelle des listes (messages.append) |
client.chats.create() (objet avec état) |
| Nombre maximal de jetons | max_tokens |
max_output_tokens (dans config) |
| Température | temperature |
temperature (dans config) |
| Mode JSON | response_format={"type": "json_object"} |
response_mime_type="application/json" (dans config) |
Installation et configuration
Désinstallez la bibliothèque OpenAI et installez le SDK Google Gen AI.
pip install google-genai
2. Authentification et initialisation
Alors qu'OpenAI utilise une clé API, Agent Platform utilise des identifiants Identity and Access Management (IAM) (identifiants par défaut de l'application). Vous devez définir explicitement l'ID de votre projet et votre emplacement.
| SDK OpenAI | SDK Google Gen AI |
|---|---|
|
|
Définissez GOOGLE_GENAI_USE_ENTERPRISE, GOOGLE_CLOUD_PROJECT et GOOGLE_CLOUD_LOCATION, comme indiqué ci-dessous :
export GOOGLE_GENAI_USE_ENTERPRISE=true
export GOOGLE_CLOUD_PROJECT='your-project-id'
export GOOGLE_CLOUD_LOCATION='global'
Une fois configuré, vous pouvez initialiser le client sans transmettre de paramètres :
from google import genai
client = genai.Client()
Exemples de code
Les exemples de code suivants montrent les différences entre le SDK OpenAI et le SDK Google Gen AI pour les tâches courantes.
Génération de texte en un seul tour
Les exemples de code suivants montrent comment générer du texte. Notez que dans le SDK Google Gen AI, les instructions système sont gérées en tant que paramètre de configuration plutôt qu'en tant que rôle de message dans la liste d'entrée.
| SDK OpenAI | SDK Google Gen AI |
|---|---|
|
|
Génération de texte avec des paramètres
Les exemples de code suivants montrent les différences dans la définition des paramètres de configuration. Dans le SDK Google Gen AI, les paramètres tels que temperature, max_output_tokens (auparavant max_tokens) et la mise en forme JSON sont regroupés dans un objet GenerateContentConfig.
| SDK OpenAI | SDK Google Gen AI |
|---|---|
|
|
Chat (multitour)
Les exemples de code suivants montrent les différences dans la gestion de l'historique des chats. Le SDK Google Gen AI simplifie cette opération en fournissant un objet chat avec état, tandis qu'OpenAI nécessite d'ajouter manuellement des messages à une liste.
| SDK OpenAI | SDK Google Gen AI |
|---|---|
|
|
Streaming
Les exemples de code suivants montrent les différences dans les réponses de streaming. Le SDK Google Gen AI utilise une méthode spécifique (generate_content_stream) plutôt qu'un indicateur booléen.
| SDK OpenAI | SDK Google Gen AI |
|---|---|
|
|
Étape suivante
- Découvrez comment utiliser les bibliothèques OpenAI avec la plate-forme d'agent Gemini Enterprise.
- Consultez des exemples de code pour la compatibilité avec OpenAI.
- Commencez avec le guide de démarrage rapide du SDK Google Gen AI.