Berdasarkan artikel ini, kami kini boleh menggunakan Gemini dengan Perpustakaan OpenAI. Jadi, saya memutuskan untuk mencubanya dalam artikel ini
Pada masa ini, hanya API Penyiapan Sembang dan API Pembenaman tersedia.
Dalam artikel ini, saya cuba menggunakan Python dan JavaScript.
Pertama, mari kita sediakan persekitaran.
pip install openai python-dotenv
Seterusnya, mari jalankan kod berikut.
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)
Respons berikut telah dikembalikan.
AI mimics human intelligence by learning patterns from data, using algorithms to solve problems and make decisions.
Dalam medan kandungan, anda boleh menentukan sama ada rentetan atau 'jenis': 'teks'.
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)
Walau bagaimanapun, ralat berlaku dengan input imej dan audio.
Kod contoh untuk input imej
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)
Kod contoh untuk input 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)
Respons ralat berikut telah dikembalikan.
openai.BadRequestError: Error code: 400 - [{'error': {'code': 400, 'message': 'Request contains an invalid argument.', 'status': 'INVALID_ARGUMENT'}}]
Pada masa ini, hanya input teks yang disokong, tetapi nampaknya input imej dan audio akan tersedia pada masa hadapan.
Mari kita lihat contoh kod JavaScript.
Pertama, mari kita sediakan persekitaran.
npm init -y npm install openai npm pkg set type=module
Seterusnya, mari jalankan kod berikut.
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);
Apabila menjalankan kod, pastikan anda memasukkan kunci API dalam fail .env. Fail .env akan dimuatkan pada masa jalan.
node --env-file=.env run.js
Respons berikut telah dikembalikan.
AI systems learn from data, identify patterns, and make predictions or decisions based on those patterns.
Sangat bagus kerana kami boleh menggunakan model lain dalam perpustakaan yang sama.
Secara peribadi, saya gembira tentang perkara ini kerana OpenAI memudahkan untuk mengedit sejarah perbualan.
Atas ialah kandungan terperinci Menggunakan Gemini dengan Perpustakaan OpenAI. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!