אתם יכולים להוסיף מסמכים (קובצי PDF ו-TXT) לבקשות ב-Gemini כדי לבצע משימות שדורשות הבנה של תוכן המסמכים. בדף הזה מוסבר איך להוסיף קובצי PDF לבקשות ל-Gemini ב-Gemini Enterprise Agent Platform באמצעות מסוף Google Cloud ו-Agent Platform API.
מודלים נתמכים
בטבלה הבאה מפורטים המודלים שתומכים בהבנת מסמכים:
| מודלים | פרטים על המדיה | סוגי MIME |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1זהו המספר המקסימלי של TPM מקלט של מסמכים בכל הבקשות של פרויקט. השתמשו בערך המקסימלי של TPM גם למודלים אחרים.
מדד המכסה הוא generate_content_document_input_per_base_model_id_and_resolution.
רשימת השפות שנתמכות במודלים של Gemini מופיעה במידע על המודלים של Google. איך מעצבים פרומפטים מולטי-מודאליים אם אתם מחפשים דרך להשתמש ב-Gemini ישירות מהאפליקציות לנייד ומאפליקציות האינטרנט שלכם, כדאי לעיין בערכות ה-SDK של Firebase AI Logic ללקוחות עבור אפליקציות Swift, Android, Web, Flutter ו-Unity.
הוספת מסמכים לבקשה
בדוגמת הקוד הבאה מוסבר איך לכלול קובץ PDF בבקשת הנחיה. דוגמת ה-PDF הזו פועלת עם כל המודלים של Gemini multimodal.
Python
התקנה
pip install --upgrade google-genai
מידע נוסף מופיע ב מאמרי העזרה בנושא SDK.
מגדירים משתני סביבה כדי להשתמש ב-Google Gen AI SDK עם Vertex AI:
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_ENTERPRISE=True
Go
מידע נוסף זמין ב מאמרי העזרה של ה-SDK.
מגדירים משתני סביבה כדי להשתמש ב-Google Gen AI SDK עם Vertex AI:
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_ENTERPRISE=True
Java
איך מתקינים או מעדכנים את Java
מידע נוסף מופיע ב מאמרי העזרה בנושא SDK.
מגדירים משתני סביבה כדי להשתמש ב-Google Gen AI SDK עם Vertex AI:
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_ENTERPRISE=True
Node.js
התקנה
npm install @google/genai
מידע נוסף מופיע ב מאמרי העזרה בנושא SDK.
מגדירים משתני סביבה כדי להשתמש ב-Google Gen AI SDK עם Vertex AI:
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_ENTERPRISE=True
C#
מידע נוסף מופיע ב מאמרי העזרה בנושא SDK.
מגדירים משתני סביבה כדי להשתמש ב-Google Gen AI SDK עם Vertex AI:
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_ENTERPRISE=True
REST
אחרי שמגדירים את הסביבה, אפשר להשתמש ב-REST כדי לבדוק פרומפט טקסטואלי. בדוגמה הבאה מוצגת שליחה של בקשה לנקודת הקצה של מודל בעל התוכן הדיגיטלי.
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
-
PROJECT_ID: מזהה הפרויקט. . -
FILE_URI: ה-URI או כתובת ה-URL של הקובץ שרוצים לכלול בהנחיה. הערכים הקבילים כוללים:- URI של קטגוריה ב-Cloud Storage: האובייקט צריך להיות קריא באופן ציבורי או להיות באותו פרויקט ב- Google Cloud ששולח את הבקשה.
- כתובת URL מסוג HTTP: כתובת ה-URL של הקובץ צריכה להיות ניתנת לקריאה באופן ציבורי. אפשר לציין קובץ וידאו אחד, קובץ אודיו אחד ועד 10 קבצי תמונה בכל בקשה. הגודל המקסימלי של קובצי אודיו, קובצי וידאו ומסמכים הוא 15MB.
- כתובת ה-URL של הסרטון ב-YouTube: הסרטון ב-YouTube צריך להיות בבעלות החשבון שבו השתמשתם כדי להיכנס למסוף Google Cloud , או להיות גלוי לכולם. אפשר להוסיף רק כתובת URL אחת של סרטון ב-YouTube בכל בקשה.
כשמציינים
fileURI, צריך לציין גם את סוג המדיה (mimeType) של הקובץ. אם VPC Service Controls מופעל, אי אפשר לציין כתובת URL של קובץ מדיה בשבילfileURI.אם אין לכם קובץ PDF ב-Cloud Storage, אתם יכולים להשתמש בקובץ הציבורי הבא:
gs://cloud-samples-data/generative-ai/pdf/2403.05530.pdfעם סוג MIMEapplication/pdf. כדי לראות את קובץ ה-PDF הזה, פתחו את קובץ ה-PDF לדוגמה. -
MIME_TYPE: סוג המדיה של הקובץ שצוין בשדותdataאוfileUri. הערכים הקבילים כוללים:לחצו כדי להרחיב את סוגי ה-MIME
application/pdfaudio/mpegaudio/mp3audio/wavimage/pngimage/jpegimage/webptext/plainvideo/movvideo/mpegvideo/mp4video/mpgvideo/avivideo/wmvvideo/mpegpsvideo/flv
-
TEXT: הוראות הטקסט שרוצים לכלול בהנחיה. לדוגמה,You are a very professional document summarization specialist. Please summarize the given document.
כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:
curl
שומרים את גוף הבקשה בקובץ בשם request.json.
כדי ליצור או להחליף את הקובץ הזה בספרייה הנוכחית, מריצים את הפקודה הבאה בטרמינל:
cat > request.json << 'EOF'
{
"contents": {
"role": "USER",
"parts": [
{
"fileData": {
"fileUri": "FILE_URI",
"mimeType": "MIME_TYPE"
}
},
{
"text": "TEXT"
}
]
}
}
EOFלאחר מכן מבצעים את הפקודה הבאה כדי לשלוח את בקשת ה-REST:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/global/publishers/google/models/gemini-3.5-flash:generateContent"
PowerShell
שומרים את גוף הבקשה בקובץ בשם request.json.
כדי ליצור או להחליף את הקובץ הזה בספרייה הנוכחית, מריצים את הפקודה הבאה בטרמינל:
@'
{
"contents": {
"role": "USER",
"parts": [
{
"fileData": {
"fileUri": "FILE_URI",
"mimeType": "MIME_TYPE"
}
},
{
"text": "TEXT"
}
]
}
}
'@ | Out-File -FilePath request.json -Encoding utf8לאחר מכן מבצעים את הפקודה הבאה כדי לשלוח את בקשת ה-REST:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/global/publishers/google/models/gemini-3.5-flash:generateContent" | Select-Object -Expand Content
אתם אמורים לקבל תגובת JSON שדומה לזו:
שימו לב לפרטים הבאים בכתובת ה-URL של הדוגמה הזו:- משתמשים ב-method
generateContentכדי לבקש שהתשובה תוחזר אחרי שהיא נוצרת במלואה. כדי להפחית את תפיסת זמן האחזור בקרב קהל אנושי, אפשר להעביר בסטרימינג את התשובה בזמן שהיא נוצרת באמצעות השיטהstreamGenerateContent. - המזהה של המודל המולטי-מודאלי נמצא בסוף כתובת ה-URL לפני ה-method (לדוגמה,
gemini-3.5-flash). יכול להיות שהדוגמה הזו תומכת גם במודלים אחרים. - כשמשתמשים בנקודת קצה אזורית ל-API (לדוגמה,
us-central1), האזור מכתובת ה-URL של נקודת הקצה קובע איפה הבקשה תעובד. המערכת מתעלמת מכל מיקום שמתנגש בנתיב המשאב.
המסוף
כדי לשלוח פרומפט מולטי-מודאלי באמצעות מסוף Google Cloud :בקטע Agent Platform במסוף Google Cloud , נכנסים לדף Agent Studio.
לוחצים על יצירת הנחיה.
אופציונלי: מגדירים את המודל והפרמטרים:
- מודל: בוחרים מודל.
אופציונלי: כדי להגדיר פרמטרים מתקדמים, לוחצים על מתקדם ומגדירים את הפרמטרים הבאים:
לוחצים כדי להרחיב את ההגדרות המתקדמות.
Top-K: משתמשים בפס ההזזה או בתיבת הטקסט כדי להזין ערך ל-Top-K.
הפרמטר Top-K משנה את האופן שבו המודל בוחר אסימונים לפלט. ערך של top-K של1אומר שהטוקן הבא שנבחר הוא הטוקן הסביר ביותר מבין כל הטוקנים באוצר המילים של המודל (נקרא גם פענוח חמדני), בעוד שערך של top-K של3אומר שהטוקן הבא נבחר מבין שלושת הטוקנים הסבירים ביותר באמצעות טמפרטורה.בכל שלב של בחירת אסימון, נדגמים האסימונים עם ההסתברות הגבוהה ביותר ב-Top-K. לאחר מכן, האסימונים מסוננים עוד יותר על סמך top-P, והאסימון הסופי נבחר באמצעות דגימת טמפרטורה.
מציינים ערך נמוך יותר כדי לקבל תשובות פחות אקראיות, וערך גבוה יותר כדי לקבל תשובות יותר אקראיות.
- Top-P: משתמשים בפס ההזזה או בתיבת הטקסט כדי להזין ערך ל-Top-P.
הטוקנים נבחרים מהסבירות הגבוהה ביותר לסבירות הנמוכה ביותר, עד שסכום ההסתברויות שלהם שווה לערך של top-P. כדי לקבל תוצאות עם הכי פחות שונות,
מגדירים את top-P ל-
0. - מספר מקסימלי של תשובות: משתמשים בפס ההזזה או בתיבת הטקסט כדי להזין ערך למספר התשובות שרוצים ליצור.
- הצגת התשובות כשהן מוכנות: אם מפעילים את ההגדרה הזו, התשובות יוצגו בזמן שהן נוצרות.
- סף מסנן הבטיחות: בוחרים את הסף של הסבירות לקבלת תשובות שעלולות להיות מזיקות.
- הפעלת ביסוס: אין תמיכה בביסוס בפרומפטים מולטי-מודאליים.
- Region: בוחרים את האזור שרוצים להשתמש בו.
- טמפרטורה: משתמשים בפס ההזזה או בתיבת הטקסט כדי להזין ערך לטמפרטורה.
The temperature is used for sampling during response generation, which occurs whentopPandtopKare applied. Temperature controls the degree of randomness in token selection. Lower temperatures are good for prompts that require a less open-ended or creative response, while higher temperatures can lead to more diverse or creative results. A temperature of0means that the highest probability tokens are always selected. In this case, responses for a given prompt are mostly deterministic, but a small amount of variation is still possible.If the model returns a response that's too generic, too short, or the model gives a fallback response, try increasing the temperature. If the model enters infinite generation, increasing the temperature to at least
0.1may lead to improved results.1.0is the recommended starting value for temperature. </li> <li>**Output token limit**: Use the slider or textbox to enter a value for the max output limit. Maximum number of tokens that can be generated in the response. A token is approximately four characters. 100 tokens correspond to roughly 60-80 words.Specify a lower value for shorter responses and a higher value for potentially longer responses.
</li> <li>**Add stop sequence**: Optional. Enter a stop sequence, which is a series of characters that includes spaces. If the model encounters a stop sequence, the response generation stops. The stop sequence isn't included in the response, and you can add up to five stop sequences.</li> </ul>
לוחצים על הוספת מדיה ובוחרים מקור לקובץ.
העלאה
בוחרים את הקובץ שרוצים להעלות ולוחצים על פתיחה.
לפי כתובת URL
מזינים את כתובת ה-URL של הקובץ שבו רוצים להשתמש ולוחצים על הוספה.
Cloud Storage
בוחרים את הקטגוריה ואז את הקובץ מהקטגוריה שרוצים לייבא, ולוחצים על Select.
Google Drive
- בפעם הראשונה שבוחרים באפשרות הזו, צריך לבחור חשבון ולתת ל-Agent Studio הרשאת גישה אליו. אפשר להעלות כמה קבצים בגודל כולל של עד 10MB. הגודל המקסימלי של קובץ בודד הוא 7MB.
- לוחצים על הקובץ שרוצים להוסיף.
לוחצים על בחירה.
התמונה הממוזערת של הקובץ מוצגת בחלונית הנחיה. מוצג גם המספר הכולל של האסימונים. אם נתוני ההנחיה חורגים ממגבלת הטוקנים, הטוקנים נחתכים ולא נכללים בעיבוד הנתונים.
מזינים את הפרומפט הטקסטואלי בחלונית הנחיה.
אופציונלי: כדי לראות את מזהה טוקן לטקסט ואת מזהי טוקנים, לוחצים על כמות טוקנים בחלונית פרומפט.
לוחצים על שליחה.
אם רוצים לשמור את ההנחיה בההנחיות שלי, לוחצים על שמירה.
אופציונלי: כדי לקבל את קוד Python או פקודת curl להנחיה, לוחצים על יצירה עם קוד > קבלת קוד.
הגדרת פרמטרים אופציונליים של המודל
לכל מודל יש קבוצה של פרמטרים אופציונליים שאפשר להגדיר. מידע נוסף מופיע במאמר פרמטרים ליצירת תוכן.
חלוקת מסמכים לטוקנים
במודלים של Gemini 3, הטוקניזציה של המסמכים מתבצעת באמצעות אורך משתנה של רצף, שמחליף את שיטת ה-Pan and Scan ששימשה במודלים קודמים, כדי לשפר את האיכות והזמן האחזור.
אתם יכולים לציין רזולוציית מדיה לקובצי PDF, שמשפיעה על האופן שבו המסמכים עוברים טוקניזציה ועל מספר הטוקנים שמשמשים לכל מסמך.
אפשר להגדיר את media_resolution ב-generationConfig כך שיחול על כל המדיה בבקשה, או להגדיר אותו לקטעי מדיה ספציפיים, מה שיבטל את ההגדרה ברמה העליונה.
אלה הרזולוציות שזמינות במודלים של Gemini 3:
-
MEDIA_RESOLUTION_HIGH: 1,120 אסימונים לקובצי PDF -
MEDIA_RESOLUTION_MEDIUM: 560 טוקנים לקובצי PDF MEDIA_RESOLUTION_LOW: 280 טוקנים לקובצי PDF-
MEDIA_RESOLUTION_UNSPECIFIED: 560 לקובצי PDF (ברירת המחדל)
בדוגמת הקוד הזו אפשר לראות איך משנים את media_resolution:
from google import genai from google.genai import types client = genai.Client() response = client.models.generate_content( model="gemini-3.1-pro-preview", contents=[ types.Part( file_data=types.FileData( file_uri="gs://cloud-samples-data/generative-ai/image/a-man-and-a-dog.png", mime_type="image/jpeg", ), media_resolution=types.PartMediaResolution( level=types.PartMediaResolutionLevel.MEDIA_RESOLUTION_HIGH ), ), Part( file_data=types.FileData( file_uri="gs://cloud-samples-data/generative-ai/video/behind_the_scenes_pixel.mp4", mime_type="video/mp4", ), media_resolution=types.PartMediaResolution( level=types.PartMediaResolutionLevel.MEDIA_RESOLUTION_LOW ), ), "When does the image appear in the video? What is the context?", ], ) print(response.text)
שיטות מומלצות לשימוש ב-PDF
כדי לקבל את התוצאות הכי טובות, כדאי להשתמש בשיטות המומלצות ובמידע הבא:
- אם הפרומפט מכיל קובץ PDF אחד, צריך למקם את קובץ ה-PDF לפני הפרומפט הטקסטואלי בבקשה.
- אם יש לכם מסמך ארוך, כדאי לפצל אותו לכמה קובצי PDF כדי לעבד אותו.
- השתמשו בקובצי PDF שנוצרו עם טקסט שמוצג כטקסט, במקום להשתמש בטקסט בתמונות סרוקות. הפורמט הזה מבטיח שהטקסט יהיה פורמט קריא למכונה, כך שיהיה קל יותר למודל לערוך, לחפש ולשנות אותו בהשוואה לקובצי PDF של תמונות סרוקות. השיטה הזו מספקת תוצאות אופטימליות כשעובדים עם מסמכים שמכילים הרבה טקסט, כמו חוזים.
מגבלות
המודלים המולטי-מודאליים של Gemini הם עוצמתיים בהרבה תרחישי שימוש מולטי-מודאליים, אבל חשוב להבין את המגבלות של המודלים:
- תפיסה מרחבית: המודלים לא מדויקים באיתור טקסט או אובייקטים בקובצי PDF. יכול להיות שהם יחזירו רק את המספרים המשוערים של האובייקטים.
- דיוק: המודלים עלולים להזות כשהם מפרשים טקסט בכתב יד במסמכי PDF.
המאמרים הבאים
- לקוחות חדשים יכולים להתחיל לפתח באמצעות המודלים המולטי-מודאליים של Gemini ולקבל קרדיטים בשווי 300 $בחינם Google Cloud כדי לבדוק מה אפשר לעשות עם Gemini.
- איך שולחים בקשות להנחיות בצ'אט
- מידע על שיטות מומלצות לשימוש אחראי ב-AI ועל מסנני הבטיחות של Agent Platform