В этом кратком руководстве показано, как начать работу с Gemini API, используя выбранный вами SDK.
Предварительные условия
Питон
Посмотреть в Google AI | Запустить в Google Colab | Посмотреть блокнот на GitHub |
Чтобы выполнить это краткое руководство локально, убедитесь, что ваша среда разработки соответствует следующим требованиям:
- Питон 3.9+
- Установка
jupyter
для запуска ноутбука.
Идти
В этом кратком руководстве предполагается, что вы знакомы с созданием приложений на Go.
Чтобы выполнить это краткое руководство, убедитесь, что ваша среда разработки соответствует следующим требованиям:
- Перейти 1.20+
Node.js
В этом кратком руководстве предполагается, что вы знакомы с созданием приложений с помощью Node.js.
Чтобы выполнить это краткое руководство, убедитесь, что ваша среда разработки соответствует следующим требованиям:
- Node.js 18+
- НПМ
Интернет
В этом кратком руководстве предполагается, что вы знакомы с использованием JavaScript для разработки веб-приложений. Это руководство не зависит от платформы.
Чтобы выполнить это краткое руководство, убедитесь, что ваша среда разработки соответствует следующим требованиям:
- (Необязательно) Node.js
- Современный веб-браузер
Дарт (Флаттер)
В этом кратком руководстве предполагается, что вы знакомы с созданием приложений с помощью Dart.
Чтобы выполнить это краткое руководство, убедитесь, что ваша среда разработки соответствует следующим требованиям:
- Дарт 3.2.0+
Быстрый
В этом кратком руководстве предполагается, что вы знакомы с использованием Xcode для разработки приложений Swift.
Чтобы выполнить это краткое руководство, убедитесь, что ваша среда разработки и приложение Swift соответствуют следующим требованиям:
- Xcode 15.0 или выше
- Ваше приложение Swift должно быть ориентировано на iOS 15 или более позднюю версию или macOS 12 или более позднюю версию.
Андроид
В этом кратком руководстве предполагается, что вы знакомы с использованием Android Studio для разработки приложений Android.
Чтобы выполнить это краткое руководство, убедитесь, что ваша среда разработки и приложение Android соответствуют следующим требованиям:
- Android Studio (последняя версия)
- Ваше Android-приложение должно быть ориентировано на уровень API 21 или выше.
Настройте свой ключ API
Чтобы использовать API Gemini, вам понадобится ключ API. Если у вас его еще нет, создайте ключ в Google AI Studio.
Затем настройте свой ключ.
Питон
Настоятельно рекомендуется не проверять ключ API в вашей системе контроля версий. В этом кратком руководстве предполагается, что вы получаете доступ к своему ключу API как к переменной среды.
Назначьте свой ключ API переменной среды:
export API_KEY=<YOUR_API_KEY>
Идти
Настоятельно рекомендуется не проверять ключ API в вашей системе контроля версий. В этом кратком руководстве предполагается, что вы получаете доступ к своему ключу API как к переменной среды.
Назначьте свой ключ API переменной среды:
export API_KEY=<YOUR_API_KEY>
Node.js
Настоятельно рекомендуется не проверять ключ API в вашей системе контроля версий. В этом кратком руководстве предполагается, что вы получаете доступ к своему ключу API как к переменной среды.
Назначьте свой ключ API переменной среды:
export API_KEY=<YOUR_API_KEY>
Интернет
Настоятельно рекомендуется не проверять ключ API в вашей системе контроля версий. Вместо этого вам следует передать ключ API в свое приложение непосредственно перед инициализацией модели.
В этом кратком руководстве предполагается, что вы обращаетесь к своему ключу API как к глобальной константе.
Дарт (Флаттер)
Настоятельно рекомендуется не проверять ключ API в вашей системе контроля версий. В этом кратком руководстве предполагается, что вы получаете доступ к своему ключу API как к переменной среды процесса. Если вы разрабатываете приложение Flutter, вы можете использовать String.fromEnvironment
и передать --dart-define=API_KEY=$API_KEY
для flutter build
или flutter run
для компиляции с ключом API, поскольку при запуске приложения среда процесса будет другой. .
Быстрый
Настоятельно рекомендуется не проверять ключ API в вашей системе контроля версий. Один из альтернативных вариантов — сохранить его в файле GenerativeAI-Info.plist
, а затем прочитать ключ API из файла .plist
. Обязательно поместите этот файл .plist
в корневую папку вашего приложения и исключите его из контроля версий.
enum APIKey {
// Fetch the API key from `GenerativeAI-Info.plist`
static var `default`: String {
guard let filePath = Bundle.main.path(forResource: "GenerativeAI-Info", ofType: "plist")
else {
fatalError("Couldn't find file 'GenerativeAI-Info.plist'.")
}
let plist = NSDictionary(contentsOfFile: filePath)
guard let value = plist?.object(forKey: "API_KEY") as? String else {
fatalError("Couldn't find key 'API_KEY' in 'GenerativeAI-Info.plist'.")
}
if value.starts(with: "_") {
fatalError(
"Follow the instructions at https://ai.google.dev/tutorials/setup to get an API key."
)
}
return value
}
}
Андроид
Настоятельно рекомендуется не проверять ключ API в вашей системе контроля версий. Вместо этого вам следует сохранить его в файле local.properties
(который находится в корневом каталоге вашего проекта, но исключен из контроля версий), а затем использовать плагин Secrets Gradle для Android , чтобы прочитать ваш ключ API как переменную конфигурации сборки.
Котлин:
// Access your API key as a Build Configuration variable
val apiKey = BuildConfig.apiKey
Джава:
// Access your API key as a Build Configuration variable
String apiKey = BuildConfig.apiKey;
Если вы хотите увидеть реализацию плагина Secrets Gradle, вы можете просмотреть пример приложения для этого SDK или использовать последнюю предварительную версию Android Studio Iguana, в которой есть стартовый шаблон Gemini API (который включает файл local.properties
для начала работы). ).
Установите SDK
Питон
Python SDK для Gemini API содержится в пакете google-generativeai
. Установите зависимость с помощью pip:
pip install -q -U google-generativeai
Идти
Чтобы использовать Gemini API в своем приложении, вам необходимо get
пакет Go SDK в каталоге вашего модуля:
go get github.com/google/generative-ai-go
Node.js
Чтобы использовать Gemini API в своем приложении, вам необходимо установить пакет GoogleGenerativeAI
для Node.js:
npm install @google/generative-ai
Интернет
Чтобы использовать Gemini API в своем веб-приложении, импортируйте @google/generative-ai
:
<script type="importmap">
{
"imports": {
"@google/generative-ai": "https://esm.run/@google/generative-ai"
}
}
</script>
Дарт (Флаттер)
Чтобы использовать API Gemini в своем приложении, вам необходимо add
пакет google_generative_ai
в приложение Dart или Flutter:
Дарт:
dart pub add google_generative_ai
Трепетание:
flutter pub add google_generative_ai
Быстрый
Чтобы использовать Gemini API в своем собственном приложении Swift, добавьте в свое приложение пакет GoogleGenerativeAI
:
В Xcode щелкните правой кнопкой мыши свой проект в навигаторе проекта.
Выберите «Добавить пакеты» в контекстном меню.
В диалоговом окне «Добавление пакетов» вставьте URL-адрес пакета в строку поиска:
none https://github.com/google/generative-ai-swift
Нажмите «Добавить пакет» . Xcode теперь добавит пакет
GoogleGenerativeAI
в ваш проект.
Андроид
В файле конфигурации Gradle вашего модуля (на уровне приложения) (например
<project>/<app-module>/build.gradle.kts
) добавьте зависимость для Google AI SDK для Android:Котлин:
dependencies { // add the dependency for the Google AI client SDK for Android implementation("com.google.ai.client.generativeai:generativeai:0.3.0") }
Джава:
Для Java вам необходимо добавить две дополнительные библиотеки.
dependencies { // add the dependency for the Google AI client SDK for Android implementation("com.google.ai.client.generativeai:generativeai:0.3.0") // Required for one-shot operations (to use `ListenableFuture` from Guava Android) implementation("com.google.guava:guava:31.0.1-android") // Required for streaming operations (to use `Publisher` from Reactive Streams) implementation("org.reactivestreams:reactive-streams:1.0.4") }
Синхронизируйте проект Android с файлами Gradle.
Инициализируйте генеративную модель
Питон
Прежде чем вы сможете выполнять какие-либо вызовы API, вам необходимо импортировать и инициализировать генеративную модель.
import google.generativeai as genai
genai.configure(api_key=os.environ["API_KEY"])
model = genai.GenerativeModel('gemini-pro')
Идти
Прежде чем вы сможете выполнять какие-либо вызовы API, вам необходимо импортировать и инициализировать генеративную модель.
import "github.com/google/generative-ai-go/genai"
import "google.golang.org/api/option"
ctx := context.Background()
// Access your API key as an environment variable (see "Set up your API key" above)
client, err := genai.NewClient(ctx, option.WithAPIKey(os.Getenv("API_KEY")))
if err != nil {
log.Fatal(err)
}
defer client.Close()
// For text-only input, use the gemini-pro model
model := client.GenerativeModel("gemini-pro")
Node.js
Прежде чем вы сможете выполнять какие-либо вызовы API, вам необходимо импортировать и инициализировать генеративную модель.
const { GoogleGenerativeAI } = require("@google/generative-ai");
// Access your API key as an environment variable (see "Set up your API key" above)
const genAI = new GoogleGenerativeAI(process.env.API_KEY);
// ...
// For text-only input, use the gemini-pro model
const model = genAI.getGenerativeModel({ model: "gemini-pro"});
// ...
Интернет
Прежде чем вы сможете выполнять какие-либо вызовы API, вам необходимо импортировать и инициализировать генеративную модель.
<html>
<body>
<!-- ... Your HTML and CSS -->
<!-- Import @google/generative-ai, as shown above. -->
<script type="module">
import { GoogleGenerativeAI } from "@google/generative-ai";
// Fetch your API_KEY
const API_KEY = "...";
// Access your API key (see "Set up your API key" above)
const genAI = new GoogleGenerativeAI(API_KEY);
// ...
// For text-only input, use the gemini-pro model
const model = genAI.getGenerativeModel({ model: "gemini-pro"});
// ...
</script>
</body>
</html>
Дарт (Флаттер)
Прежде чем вы сможете выполнять какие-либо вызовы API, вам необходимо импортировать и инициализировать генеративную модель.
import 'package:google_generative_ai/google_generative_ai.dart';
// Access your API key as an environment variable (see "Set up your API key" above)
final apiKey = Platform.environment['API_KEY'];
if (apiKey == null) {
print('No \$API_KEY environment variable');
exit(1);
}
// For text-only input, use the gemini-pro model
final model = GenerativeModel(model: 'gemini-pro', apiKey: apiKey);
Быстрый
Прежде чем вы сможете совершать какие-либо вызовы API, вам необходимо инициализировать генеративную модель.
Импортируйте модуль
GoogleAI
:import GoogleGenerativeAI
Инициализируйте генеративную модель:
// For text-only input, use the gemini-pro model // Access your API key from your on-demand resource .plist file (see "Set up your API key" above) let model = GenerativeModel(name: "gemini-pro", apiKey: APIKey.default)
Андроид
Прежде чем вы сможете совершать какие-либо вызовы API, вам необходимо инициализировать объект GenerativeModel
:
Котлин:
val generativeModel = GenerativeModel(
// For text-only input, use the gemini-pro model
modelName = "gemini-pro",
// Access your API key as a Build Configuration variable (see "Set up your API key" above)
apiKey = BuildConfig.apiKey
)
Джава:
Для Java вам также необходимо инициализировать объект GenerativeModelFutures
.
// For text-only input, use the gemini-pro model
GenerativeModel gm = new GenerativeModel(/* modelName */ "gemini-pro",
// Access your API key as a Build Configuration variable (see "Set up your API key" above)
/* apiKey */ BuildConfig.apiKey);
// Use the GenerativeModelFutures Java compatibility layer which offers
// support for ListenableFuture and Publisher APIs
GenerativeModelFutures model = GenerativeModelFutures.from(gm);
Создать текст
Питон
response = model.generate_content("Write a story about a magic backpack.")
print(response.text)
Идти
resp, err := model.GenerateContent(ctx, genai.Text("Write a story about a magic backpack."))
if err != nil {
log.Fatal(err)
}
Node.js
async function run() {
const prompt = "Write a story about a magic backpack."
const result = await model.generateContent(prompt);
const response = await result.response;
const text = response.text();
console.log(text);
}
run();
Интернет
async function run() {
const prompt = "Write a story about a magic backpack."
const result = await model.generateContent(prompt);
const response = await result.response;
const text = response.text();
console.log(text);
}
run();
Дарт (Флаттер)
void main() async {
// Access your API key as an environment variable (see "Set up your API key" above)
final apiKey = Platform.environment['API_KEY'];
if (apiKey == null) {
print('No \$API_KEY environment variable');
exit(1);
}
// For text-only input, use the gemini-pro model
final model = GenerativeModel(model: 'gemini-pro', apiKey: apiKey);
final content = [Content.text('Write a story about a magic backpack.')];
final response = await model.generateContent(content);
print(response.text);
}
Быстрый
let prompt = "Write a story about a magic backpack."
let response = try await model.generateContent(prompt)
if let text = response.text {
print(text)
}
Андроид
Котлин:
Обратите внимание, чтоgenerateContent generateContent()
— это функция приостановки, и ее необходимо вызывать из области Coroutine. Если вы не знакомы с корутинами, прочитайте Kotlin Coroutines для Android .
val prompt = "Write a story about a magic backpack."
val response = generativeModel.generateContent(prompt)
print(response.text)
Джава:
Обратите внимание, чтоgenerateContent generateContent()
возвращает ListenableFuture
. Если вы не знакомы с этим API, см. документацию Android об использовании ListenableFuture
.
Content content = new Content.Builder()
.addText("Write a story about a magic backpack.")
.build();
Executor executor = // ...
ListenableFuture<GenerateContentResponse> response = model.generateContent(content);
Futures.addCallback(response, new FutureCallback<GenerateContentResponse>() {
@Override
public void onSuccess(GenerateContentResponse result) {
String resultText = result.getText();
System.out.println(resultText);
}
@Override
public void onFailure(Throwable t) {
t.printStackTrace();
}
}, executor);
Что дальше
Чтобы узнать больше о работе с Gemini API, ознакомьтесь с руководством для выбранного вами языка.
Вы также можете использовать команды curl
, чтобы опробовать Gemini API:
Если вы новичок в генеративных моделях искусственного интеллекта, возможно, вам стоит просмотреть руководство по концепциям и обзор API Gemini, прежде чем приступать к быстрому началу работы.