Gemini 2.0 Flash זמין עכשיו כגרסת טרום-השקה ניסיונית דרך Gemini Developer API ו-Google AI Studio. המודל כולל תכונות חדשות ויכולות ליבה משופרות:
- Multimodal 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 (ניסיוני)
ערכת ה-SDK החדשה של Google Gen AI מספקת ממשק מאוחד ל-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.
Multimodal Live API
Multimodal Live API מאפשר אינטראקציות דו-כיווניות בווידאו ובקול עם זמן אחזור נמוך באמצעות Gemini. באמצעות Multimodal Live API, תוכלו לספק למשתמשי הקצה חוויה של שיחות קוליות טבעיות דמויות-אנושיות, וגם את היכולת להפריע לתשובות של המודל באמצעות פקודות קוליות. המודל יכול לעבד קלט של טקסט, אודיו ווידאו, ולספק פלט של טקסט ואודיו.
אתם יכולים לנסות את Multimodal Live API ב-Google AI Studio. למידע נוסף על היכולות והמגבלות של ה-API, אפשר לעיין במדריך העזרה של Multimodal Live API.
חיפוש ככלי
בעזרת התכונה 'הקשר' בחיפוש Google, תוכלו לשפר את הדיוק ואת העדכניות של התשובות מהמודל. החל מגרסה 2.0 של Gemini, חיפוש 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 תומך ביכולת חדשה של קריאת פונקציות: קריאת פונקציות מורכבות. קריאה לפונקציות מורכבות מאפשרת ל-Gemini API להפעיל אוטומטית כמה פונקציות מוגדרות-משתמש בתהליך יצירת התגובה. לדוגמה, כדי להגיב להנחיה "Get the temperature in my current location"
, יכול להיות ש-Gemini API יפעיל גם פונקציית 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 יכולים לנסות את זה במחברת הקוד של השימוש בכלי ה-API.
שימוש בכלי רב-תכליתי
ב-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 יכולים לנסות את זה במחברת הקוד של השימוש בכלי ה-API.
זיהוי של תיבה תוחמת (bounding box)
במסגרת ההשקה הניסיונית הזו, אנחנו מספקים למפתחים כלי חזק לזיהוי ולמיקום של אובייקטים בתמונות ובסרטונים. זיהוי מדויק של אובייקטים והגדרת גבולות שלהם באמצעות תיבות מלבניות מאפשר למפתחים לפתח מגוון רחב של אפליקציות ולשפר את האינטליגנציה של הפרויקטים שלהם.
יתרונות עיקריים:
- פשוט: אפשר לשלב בקלות יכולות של זיהוי אובייקטים באפליקציות, ללא קשר לרמת המומחיות שלכם בתחום הראייה הממוחשבת.
- ניתן להתאמה אישית: אפשר ליצור תיבות מלבניות לפי הוראות בהתאמה אישית (למשל "אני רוצה לראות תיבות מלבניות של כל העצמים הירוקים בתמונה הזו"), בלי לאמן מודל בהתאמה אישית.
פרטים טכניים:
- קלט: ההנחיה והתמונות או הפריימים של הסרטון המשויכים.
- פלט: תיבות מלבניות בפורמט
[y_min, x_min, y_max, x_max]
. הפינה השמאלית העליונה היא המקור. הציריםx
ו-y
נמצאים בכיוון אופקי ואנכי, בהתאמה. ערכי הקואורדינטות מנורמלים ל-0 עד 1,000 לכל תמונה. - ויזואליזציה: משתמשי AI Studio יראו תיבות גבול שמוצגות בממשק המשתמש. משתמשי Vertex AI צריכים להציג את תיבות הסימון שלהם באמצעות קוד תצוגה חזותית בהתאמה אישית.
למפתחי Python, כדאי לנסות את ה-notebook של ההבנה המרחבית 2D או את ה-notebook הניסיוני של הצבעה בתלת-ממד.
יצירת דיבור (גישה מוקדמת/רשימת ההיתרים)
ב-Gemini 2.0 יש תמיכה ביכולת חדשה ליצירה של מודלים מולטימודליים: טקסט לדיבור.
באמצעות יכולת המרת הטקסט לדיבור, אפשר להורות למודל ליצור פלט אודיו באיכות גבוהה שנשמע כמו קול אנושי (say "hi everyone"
), ואפשר לשפר את הפלט עוד יותר על ידי שינוי הקול.
יצירת תמונות (גישה מוקדמת/רשימת ההיתרים)
ב-Gemini 2.0 יש תמיכה בפלט של טקסט עם תמונות בתוך הטקסט. כך תוכלו להשתמש ב-Gemini כדי לערוך תמונות בשיחה או ליצור פלטים מסוגים שונים (לדוגמה, פוסט בבלוג עם טקסט ותמונות בפנייה אחת). בעבר היה צריך לקשר כמה מודלים כדי לעשות זאת.
יצירת תמונות זמינה כגרסה ניסיונית פרטית. הוא תומך במודלים וביכולות הבאים:
- יצירת תמונות לפי טקסט
- הנחיה לדוגמה: "יצירת תמונה של מגדל אייפל עם זיקוקים ברקע".
- טקסט לתמונות וטקסט (מקובץ)
- הנחיה לדוגמה: "יצירת מתכון מאויר לפאייה".
- תמונות וטקסט לתמונות וטקסט (מקובצים)
- הנחיה לדוגמה: (עם תמונה של חדר מעוצב) "איזה ספות בצבעים אחרים יתאימו למרחב שלי? יש לך אפשרות לעדכן את התמונה?"
- עריכת תמונות (טקסט ותמונה לתמונה)
- הנחיה לדוגמה: "עריכת התמונה הזו כך שתראה כמו קריקטורה"
- דוגמה להנחיה: [תמונה של חתול] + [תמונה של כרית] + "Create a cross stitch of my cat on this pillow" (יצירת תפר קרוס של החתול שלי על הכרית הזו).
- עריכת תמונות במספר שלבים (צ'אט)
- הנחיות לדוגמה: [upload an image of a blue car.] "Turn this car into a convertible" "עכשיו משנים את הצבע לצהוב".
- הוספת סימן מים
- כל התמונות שנוצרו כוללות סימן מים של SynthID.
מגבלות:
- אסור ליצור אנשים ולערוך תמונות של אנשים שהועלו.
- כדי להשיג את הביצועים הטובים ביותר, מומלץ להשתמש בשפות הבאות: EN, es-MX, ja-JP, zh-CN, hi-IN.
- יצירת תמונות לא תומכת בקלט של אודיו או וידאו.
- יכול להיות שיצירת התמונה לא תמיד תגרום לפעולות הבאות:
- המודל יכול להפיק פלט של טקסט בלבד. כדאי לבקש פלט של תמונות באופן מפורש (למשל, "create an image", "provide images as you go along", "update the image").
- יכול להיות שהמודל יפסיק ליצור תמונות באמצע התהליך. אפשר לנסות שוב או לנסות הנחיה אחרת.