Gemini 2.0 Flash теперь доступен в виде экспериментальной предварительной версии через Gemini Developer API и Google AI Studio. Модель представляет новые функции и расширенные основные возможности:
- Мультимодальный Live API: этот новый API помогает создавать приложения для визуализации в реальном времени и потокового аудио с помощью инструментов.
- Скорость и производительность: Gemini 2.0 имеет значительно улучшенное время появления первого токена (TTFT) по сравнению с 1,5 Flash.
- Качество: лучшая производительность в большинстве тестов, чем у Gemini 1.5 Pro.
- Улучшенные агентские возможности: Gemini 2.0 обеспечивает улучшения мультимодального понимания, кодирования, выполнения сложных инструкций и вызова функций.
- Новые возможности: Gemini 2.0 представляет встроенную генерацию изображений и управляемые возможности преобразования текста в речь.
Чтобы сделать разработку более удобной, мы также выпускаем новый SDK . Технические подробности о Gemini 2.0 см. в разделе Модели Gemini .
Google Gen AI SDK (экспериментальный)
Новый Google Gen AI SDK обеспечивает унифицированный интерфейс для Gemini 2.0 через Gemini Developer API и Gemini API на Vertex AI. За некоторыми исключениями, код, работающий на одной платформе, будет работать и на обеих. Новый SDK доступен на Python и Go, а в ближайшее время появятся Java и JavaScript.
- Установите новый SDK:
pip install google-genai
- Затем импортируйте библиотеку, инициализируйте клиент и сгенерируйте контент:
from google import genai
client = genai.Client(api_key="GEMINI_API_KEY")
response = client.models.generate_content(model='gemini-2.0-flash-exp', contents='How does AI work?')
print(response.text)
Разработчики Python также могут опробовать записную книжку «Начало работы» в Gemini Cookbook .
Мультимодальный Live API
Мультимодальный Live API обеспечивает двунаправленное голосовое и видео взаимодействие с Gemini с малой задержкой. Используя Multimodal Live API, вы можете предоставить конечным пользователям возможность естественного, человеческого голосового общения, а также возможность прерывать ответы модели с помощью голосовых команд. Модель может обрабатывать ввод текста, аудио и видео, а также обеспечивать вывод текста и звука.
Вы можете попробовать Multimodal Live API в Google AI Studio . Дополнительные сведения о возможностях и ограничениях API см. в справочном руководстве по Multimodal Live API .
Поиск как инструмент
Используя заземление с помощью Google Поиска, вы можете повысить точность и актуальность ответов модели. Начиная с Gemini 2.0, поиск Google доступен в качестве инструмента. Это означает, что модель может решить, когда использовать поиск Google. В следующем примере показано, как настроить поиск в качестве инструмента.
from google import genai
from google.genai.types import Tool, GenerateContentConfig, GoogleSearch
client = genai.Client()
model_id = "gemini-2.0-flash-exp"
google_search_tool = Tool(
google_search = GoogleSearch()
)
response = client.models.generate_content(
model=model_id,
contents="When is the next total solar eclipse in the United States?",
config=GenerateContentConfig(
tools=[google_search_tool],
response_modalities=["TEXT"],
)
)
for each in response.candidates[0].content.parts:
print(each.text)
# Example response:
# The next total solar eclipse visible in the contiguous United States will be on ...
# To get grounding metadata as web content.
print(response.candidates[0].grounding_metadata.search_entry_point.rendered_content)
Функциональность «Поиск как инструмент» также обеспечивает многоэтапный поиск и запросы с использованием нескольких инструментов (например, сочетание заземления с поиском Google и выполнением кода).
Поиск как инструмент обеспечивает сложные подсказки и рабочие процессы, требующие планирования, рассуждений и размышлений:
- Обоснование для повышения фактичности и актуальности и предоставления более точных ответов.
- Получение артефактов из Интернета для дальнейшего анализа.
- Поиск подходящих изображений, видео или других медиафайлов для помощи в мультимодальных рассуждениях или задачах генерации.
- Кодирование, устранение технических неполадок и другие специализированные задачи.
- Поиск информации для конкретного региона или помощь в точном переводе контента
- Поиск подходящих веб-сайтов для дальнейшего просмотра
Вы можете начать с использования блокнота «Инструмент поиска» .
Улучшенное использование инструментов
Gemini 2.0 представляет улучшения в вызове функций и инструменты, которые обеспечивают лучшую поддержку агентного взаимодействия.
Вызов композиционной функции
Gemini 2.0 поддерживает новую возможность вызова функций: вызов композиционных функций . Вызов композиционных функций позволяет API Gemini автоматически вызывать несколько определяемых пользователем функций в процессе генерации ответа. Например, чтобы ответить на запрос "Get the temperature in my current location"
, API Gemini может вызвать как функцию get_current_location()
, так и функцию get_weather()
которая принимает местоположение в качестве параметра.
Вызов композиционной функции с выполнением кода требует двунаправленной потоковой передачи и поддерживается только новым Multimodal Live API. Вот пример, показывающий, как вы можете использовать вызов композиционных функций, выполнение кода и Multimodal Live API вместе:
turn_on_the_lights_schema = {'name': 'turn_on_the_lights'}
turn_off_the_lights_schema = {'name': 'turn_off_the_lights'}
prompt = """
Hey, can you write run some python code to turn on the lights, wait 10s and then turn off the lights?
"""
tools = [
{'code_execution': {}},
{'function_declarations': [turn_on_the_lights_schema, turn_off_the_lights_schema]}
]
await run(prompt, tools=tools, modality="AUDIO")
Разработчики Python могут попробовать это в блокноте Live API Tool Use .
Использование нескольких инструментов
В Gemini 2.0 вы можете одновременно включить несколько инструментов, и модель сама решит, когда их вызывать. Вот пример, который включает два инструмента: заземление с помощью поиска Google и выполнение кода в запросе с использованием Multimodal Live API.
prompt = """
Hey, I need you to do three things for me.
1. Turn on the lights.
2. Then compute the largest prime palindrome under 100000.
3. Then use Google Search to look up information about the largest earthquake in California the week of Dec 5 2024.
Thanks!
"""
tools = [
{'google_search': {}},
{'code_execution': {}},
{'function_declarations': [turn_on_the_lights_schema, turn_off_the_lights_schema]}
]
await run(prompt, tools=tools, modality="AUDIO")
Разработчики Python могут попробовать это в блокноте Live API Tool Use .
Обнаружение ограничивающей рамки
В этом экспериментальном выпуске мы предоставляем разработчикам мощный инструмент для обнаружения и локализации объектов на изображениях и видео. Точно идентифицируя и очерчивая объекты с помощью ограничивающих рамок, разработчики могут разблокировать широкий спектр приложений и повысить интеллектуальность своих проектов.
Ключевые преимущества:
- Просто: легко интегрируйте возможности обнаружения объектов в свои приложения, независимо от вашего опыта в области компьютерного зрения.
- Настраиваемость: создавайте ограничивающие рамки на основе пользовательских инструкций (например, «Я хочу видеть ограничивающие рамки всех зеленых объектов на этом изображении») без необходимости обучения пользовательской модели.
Технические детали:
- Входные данные: ваше приглашение и связанные с ним изображения или видеокадры.
- Вывод: ограничивающие рамки в формате
[y_min, x_min, y_max, x_max]
. Верхний левый угол — это начало координат. Осьx
иy
проходят горизонтально и вертикально соответственно. Значения координат нормализуются до 0–1000 для каждого изображения. - Визуализация: пользователи AI Studio увидят ограничивающие рамки, нанесенные в пользовательском интерфейсе. Пользователи Vertex AI должны визуализировать свои ограничивающие рамки с помощью специального кода визуализации.
Разработчики Python могут попробовать блокнот для 2D-пространства или экспериментальный блокнот для 3D-указания .
Генерация речи (ранний доступ/белый список)
Gemini 2.0 поддерживает новую возможность мультимодальной генерации: преобразование текста в речь. Используя функцию преобразования текста в речь, вы можете предложить модели генерировать высококачественный аудиовыход, который звучит как человеческий голос ( say "hi everyone"
), а также дополнительно уточнить вывод, управляя голосом.
Создание изображений (ранний доступ/белый список)
Gemini 2.0 поддерживает возможность вывода текста с встроенными изображениями. Это позволяет вам использовать Gemini для редактирования изображений в диалоговом режиме или создания мультимодальных результатов (например, сообщения в блоге с текстом и изображениями за один раз). Раньше для этого требовалось объединить несколько моделей.
Генерация изображений доступна в виде частной экспериментальной версии. Он поддерживает следующие модальности и возможности:
- Текст в изображение
- Пример запроса: «Создать изображение Эйфелевой башни с фейерверком на заднем плане».
- Текст в изображение(я) и текст (чередующийся)
- Пример приглашения: «Создать иллюстрированный рецепт паэльи».
- Изображения и текст в изображения и текст (чередующиеся)
- Пример подсказки: (с изображением меблированной комнаты) «Дива каких еще цветов подойдут в моем пространстве? Можете ли вы обновить изображение?»
- Редактирование изображений (текст и изображение в изображение)
- Пример подсказки: «Отредактируйте это изображение, чтобы оно выглядело как мультфильм».
- Пример подсказки: [изображение кота] + [изображение подушки] + «Вышейте крестиком моего кота на этой подушке».
- Многооборотное редактирование изображений (чат)
- Пример подсказки: [загрузите изображение синей машины.] «Превратите эту машину в кабриолет». «Теперь измените цвет на желтый».
- Водяные знаки
- Все сгенерированные изображения содержат водяной знак SynthID.
Ограничения:
- Генерация людей и редактирование загруженных изображений людей запрещены.
- Для достижения наилучшей производительности используйте следующие языки: EN, es-MX, ja-JP, zh-CN, hi-IN.
- Генерация изображений не поддерживает аудио- и видеовходы.
- Генерация изображения не всегда может срабатывать:
- Модель может выводить только текст. Попробуйте явно запросить выходные данные изображения (например, «создать изображение», «предоставить изображения по мере продвижения», «обновить изображение»).
- Модель может перестать генерировать на полпути. Попробуйте еще раз или попробуйте другое приглашение.