Maison > Article > développement back-end > Utiliser Gemini avec la bibliothèque OpenAI
Sur la base de cet article, nous pouvons désormais utiliser Gemini avec la bibliothèque OpenAI. J'ai donc décidé de l'essayer dans cet article
Actuellement, seules l'API de complétion de chat et l'API d'intégration sont disponibles.
Dans cet article, j'ai essayé d'utiliser à la fois Python et JavaScript.
Tout d’abord, configurons l’environnement.
pip install openai python-dotenv
Ensuite, exécutons le code suivant.
import os from dotenv import load_dotenv from openai import OpenAI load_dotenv() GOOGLE_API_KEY = os.getenv("GOOGLE_API_KEY") client = OpenAI( api_key=GOOGLE_API_KEY, base_url="https://generativelanguage.googleapis.com/v1beta/" ) response = client.chat.completions.create( model="gemini-1.5-flash", n=1, messages=[ {"role": "system", "content": "You are a helpful assistant."}, { "role": "user", "content": "Explain briefly(less than 30 words) to me how AI works." } ] ) print(response.choices[0].message.content)
La réponse suivante a été renvoyée.
AI mimics human intelligence by learning patterns from data, using algorithms to solve problems and make decisions.
Dans le champ de contenu, vous pouvez spécifier soit une chaîne, soit un 'type' : 'text'.
import os from dotenv import load_dotenv from openai import OpenAI load_dotenv() GOOGLE_API_KEY = os.getenv("GOOGLE_API_KEY") client = OpenAI( api_key=GOOGLE_API_KEY, base_url="https://generativelanguage.googleapis.com/v1beta/" ) response = client.chat.completions.create( model="gemini-1.5-flash", n=1, messages=[ {"role": "system", "content": "You are a helpful assistant."}, { "role": "user", "content": [ { "type": "text", "text": "Explain briefly(less than 30 words) to me how AI works.", }, ] } ] ) print(response.choices[0].message.content)
Cependant, des erreurs se sont produites avec les entrées image et audio.
Exemple de code pour la saisie d'image
import os from dotenv import load_dotenv from openai import OpenAI load_dotenv() GOOGLE_API_KEY = os.getenv("GOOGLE_API_KEY") client = OpenAI( api_key=GOOGLE_API_KEY, base_url="https://generativelanguage.googleapis.com/v1beta/" ) # png to base64 text import base64 with open("test.png", "rb") as image: b64str = base64.b64encode(image.read()).decode("utf-8") response = client.chat.completions.create( model="gemini-1.5-flash", # model="gpt-4o", n=1, messages=[ {"role": "system", "content": "You are a helpful assistant."}, { "role": "user", "content": [ { "type": "text", "text": "Describe the image in the image below.", }, { "type": "image_url", "image_url": { "url": f"data:image/png;base64,{b64str}" } } ] } ] ) print(response.choices[0].message.content)
Exemple de code pour l'entrée audio
import os from dotenv import load_dotenv from openai import OpenAI load_dotenv() GOOGLE_API_KEY = os.getenv("GOOGLE_API_KEY") client = OpenAI( api_key=GOOGLE_API_KEY, base_url="https://generativelanguage.googleapis.com/v1beta/" ) # png to base64 text import base64 with open("test.wav", "rb") as audio: b64str = base64.b64encode(audio.read()).decode("utf-8") response = client.chat.completions.create( model="gemini-1.5-flash", # model="gpt-4o-audio-preview", n=1, modalities=["text"], messages=[ {"role": "system", "content": "You are a helpful assistant."}, { "role": "user", "content": [ { "type": "text", "text": "What does he say?", }, { "type": "input_audio", "input_audio": { "data": b64str, "format": "wav", } } ] } ] ) print(response.choices[0].message.content)
La réponse d'erreur suivante a été renvoyée.
openai.BadRequestError: Error code: 400 - [{'error': {'code': 400, 'message': 'Request contains an invalid argument.', 'status': 'INVALID_ARGUMENT'}}]
Actuellement, seule la saisie de texte est prise en charge, mais il semble que les entrées d'image et audio seront disponibles à l'avenir.
Jetons un coup d'œil à l'exemple de code JavaScript.
Tout d’abord, configurons l’environnement.
npm init -y npm install openai npm pkg set type=module
Ensuite, exécutons le code suivant.
import OpenAI from "openai"; const GOOGLE_API_KEY = process.env.GOOGLE_API_KEY; const openai = new OpenAI({ apiKey: GOOGLE_API_KEY, baseURL: "https://generativelanguage.googleapis.com/v1beta/" }); const response = await openai.chat.completions.create({ model: "gemini-1.5-flash", messages: [ { role: "system", content: "You are a helpful assistant." }, { role: "user", content: "Explain briefly(less than 30 words) to me how AI works", }, ], }); console.log(response.choices[0].message.content);
Lors de l'exécution du code, assurez-vous d'inclure la clé API dans le fichier .env. Le fichier .env sera chargé au moment de l'exécution.
node --env-file=.env run.js
La réponse suivante a été renvoyée.
AI systems learn from data, identify patterns, and make predictions or decisions based on those patterns.
C'est génial de pouvoir utiliser d'autres modèles au sein de la même bibliothèque.
Personnellement, j'en suis content car OpenAI facilite la modification de l'historique des conversations.
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!