יצירת טקסט באמצעות הפונקציה AI.GENERATE
במדריך הזה נסביר איך ליצור טקסט מטקסט או מנתונים מולטימודאליים באמצעות הפונקציה AI.GENERATE. באמצעות הפונקציה AI.GENERATE, תוכלו להשתמש בקישור למשאבים ב-Cloud כדי להתחבר למודל Gemini שמתארח בענן, כך שלא תצטרכו ליצור ולתחזק מודל משלכם.
במדריך הזה מוסבר איך לבצע את הפעולות הבאות:
- לסכם תוכן טקסט ולהציג את התוצאות בפורמט ברירת המחדל של הפונקציה.
- תסכם את תוכן הטקסט ותציג תוצאות מובנות.
- לתמלל ולתרגם תוכן וידאו.
- ניתוח התוכן של קובץ אודיו.
עלויות
במסמך הזה משתמשים ברכיבים הבאים של Google Cloud, והשימוש בהם כרוך בתשלום:
- BigQuery ML: You incur costs for the data that you process in BigQuery.
- Gemini Enterprise Agent Platform: You incur costs for calls to the Agent Platform model.
כדי להעריך את ההוצאות בהתאם לתחזית השימוש שלכם, אתם יכולים להיעזר במחשבון העלויות.
מידע נוסף על התמחור של BigQuery זמין במאמר תמחור ב-BigQuery במסמכי התיעוד של BigQuery.
מידע נוסף על התמחור של AI גנרטיבי ב-Agent Platform זמין בדף התמחור של Agent Platform.
לפני שמתחילים
- נכנסים לחשבון Google Cloud . אם אתם משתמשים חדשים ב- Google Cloud, צרו חשבון כדי שתוכלו להעריך את הביצועים של המוצרים שלנו בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
- BigQuery מופעל באופן אוטומטי בפרויקטים חדשים.
כדי להפעיל את BigQuery בפרויקט קיים, עוברים אל
מפעילים את BigQuery API.
תפקידים שנדרשים להפעלת ממשקי API
כדי להפעיל ממשקי API, צריך את תפקיד ה-IAM 'אדמין של Service Usage' (
roles/serviceusage.serviceUsageAdmin), שכולל את ההרשאהserviceusage.services.enable. איך מקצים תפקידים
התפקידים הנדרשים
כדי להשתמש בפונקציה AI.GENERATE, אתם צריכים את התפקידים הבאים בממשק של ניהול הזהויות והרשאות הגישה (IAM):
- יצירה ושימוש במערכי נתונים ובטבלאות של BigQuery:
BigQuery Data Editor (
roles/bigquery.dataEditor) בפרויקט. - יצירה, הקצאה ושימוש בחיבורים ל-BigQuery:
BigQuery Connections Admin (
roles/bigquery.connectionsAdmin) בפרויקט. - הקצאת הרשאות לחשבון השירות של החיבור: אדמין IAM בפרויקט (
roles/resourcemanager.projectIamAdmin) בפרויקט שמכיל את נקודת הקצה של Gemini Enterprise Agent Platform. - יצירת משימות BigQuery: BigQuery Job User (
roles/bigquery.jobUser) בפרויקט.
התפקידים המוגדרים מראש האלה מכילים את ההרשאות שנדרשות לביצוע המשימות שמתוארות במסמך הזה. כדי לראות את ההרשאות הנדרשות, מרחיבים את הקטע ההרשאות הנדרשות:
ההרשאות הנדרשות
- יצירת מערך נתונים:
bigquery.datasets.create - יצירה, הקצאה ושימוש בחיבור:
bigquery.connections.* - מגדירים את ההרשאות לחשבון השירות:
resourcemanager.projects.getIamPolicyו-resourcemanager.projects.setIamPolicy - שאילתת נתונים בטבלה:
bigquery.tables.getData
יכול להיות שתוכלו לקבל את ההרשאות האלה גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.
יצירת מערך נתונים
יוצרים מערך נתונים ב-BigQuery לאחסון מודל ה-ML.
המסוף
במסוף Google Cloud , עוברים לדף BigQuery.
בחלונית Explorer, לוחצים על שם הפרויקט.
לוחצים על הצגת פעולות > יצירת מערך נתונים.
בדף Create dataset, מבצעים את הפעולות הבאות:
בשדה Dataset ID (מזהה מערך הנתונים), מזינים
bqml_tutorial.בקטע Location type, בוחרים באפשרות Multi-region ואז בוחרים באפשרות US.
משאירים את הגדרות ברירת המחדל שנותרו כמו שהן ולוחצים על Create dataset (יצירת מערך נתונים).
BQ
כדי ליצור מערך נתונים חדש, משתמשים בפקודה bq mk --dataset.
יוצרים מערך נתונים בשם
bqml_tutorialעם מיקום הנתונים שמוגדר ל-US.bq mk --dataset \ --location=US \ --description "BigQuery ML tutorial dataset." \ bqml_tutorial
בודקים שמערך הנתונים נוצר:
bq ls
API
מבצעים קריאה לשיטה datasets.insert
עם משאב מוגדר של מערך נתונים.
{ "datasetReference": { "datasetId": "bqml_tutorial" } }
יצירת חיבור
יוצרים קישור למשאבים ב-Cloud ומקבלים את חשבון השירות של הקישור. יוצרים את החיבור באותו מיקום של מערך הנתונים שיצרתם בשלב הקודם.
כדי ליצור חיבור:
עוברים לדף BigQuery.
בחלונית Explorer, לוחצים על Add data:
תיבת הדו-שיח הוספת נתונים נפתחת.
בחלונית Filter By, בקטע Data Source Type, בוחרים באפשרות Business Applications.
אפשרות אחרת היא להזין
Vertex AIבשדה חיפוש מקורות נתונים.בקטע מקורות נתונים מומלצים, לוחצים על Vertex AI.
לוחצים על כרטיס הפתרון Vertex AI Models: BigQuery Federation.
ברשימה Connection type בוחרים באפשרות Vertex AI remote models, remote functions, BigLake and Spanner (Cloud Resource).
בשדה מזהה החיבור, מקלידים
test_connection.לוחצים על יצירת קישור.
לוחצים על מעבר לחיבור.
בחלונית Connection info (פרטי התחברות), מעתיקים את מזהה חשבון השירות כדי להשתמש בו בשלב הבא.
מעניקים לחשבון השירות גישה
מקצים לחשבון השירות של החיבור את התפקיד Agent Platform User.
כדי להקצות את התפקיד:
עוברים לדף IAM & Admin.
לוחצים על הוספה.
תיבת הדו-שיח Add principals נפתחת.
בשדה New principals, מזינים את מזהה חשבון השירות שהעתקתם קודם.
בשדה Select a role, בוחרים באפשרות Vertex AI ואז באפשרות Agent Platform User.
לוחצים על הוספת תפקיד נוסף.
בשדה Select a role, בוחרים באפשרות Cloud Storage ואז באפשרות Storage Object Viewer.
לוחצים על Save.
סיכום טקסט ושימוש בפורמט הפלט שמוגדר כברירת מחדל
כדי ליצור טקסט באמצעות הפונקציה AI.GENERATE ולהציג את התוצאות בפורמט ברירת המחדל של הפונקציה AI.GENERATE:
במסוף Google Cloud , עוברים לדף BigQuery.
בעורך השאילתות, מריצים את השאילתה הבאה:
WITH bbc_news AS ( SELECT body FROM `bigquery-public-data.bbc_news.fulltext` LIMIT 5 ) SELECT AI.GENERATE(body, endpoint => 'gemini-2.5-pro') AS news FROM bbc_news;
הפלט אמור להיראות כך:
+---------------------------------------------+------------------------------------+---------------+ | news.result | news.full_response | news.status | +---------------------------------------------+------------------------------------+---------------+ | This article presents a debate about the | {"candidates":[{"avg_logprobs": | | | "digital divide" between rich and poor | -0.31465074559841777, content": | | | nations. Here's a breakdown of the key.. | {"parts":[{"text":"This article.. | | +---------------------------------------------+------------------------------------+---------------+ | This article discusses how advanced | {"candidates":[{"avg_logprobs": | | | mapping technology is aiding humanitarian | -0.21313422900091983,"content": | | | efforts in Darfur, Sudan. Here's a... | {"parts":[{"text":"This article.. | | +---------------------------------------------+------------------------------------+---------------+ | ... | ... | ... | +---------------------------------------------+------------------------------------+---------------+
סיכום טקסט ויצירת תוצאות מובנות
כדי ליצור טקסט באמצעות הפונקציה AI.GENERATE ולעצב את הפלט באמצעות הארגומנט output_schema של הפונקציה AI.GENERATE, פועלים לפי השלבים הבאים:
במסוף Google Cloud , עוברים לדף BigQuery.
בעורך השאילתות, מריצים את השאילתה הבאה:
WITH bbc_news AS ( SELECT body FROM `bigquery-public-data`.bbc_news.fulltext LIMIT 5 ) SELECT news.good_sentiment, news.summary FROM bbc_news, UNNEST(ARRAY[AI.GENERATE(body, endpoint => 'gemini-2.5-pro', output_schema => 'summary STRING, good_sentiment BOOL')]) AS news;
הפלט אמור להיראות כך:
+----------------+--------------------------------------------+ | good_sentiment | summary | +----------------+--------------------------------------------+ | true | A World Bank report suggests the digital | | | divide is rapidly closing due to increased | | | access to technology in developing.. | +----------------+--------------------------------------------+ | true | A review of sports games, focusing on the | | | rivalry between EA Sports and ESPN, and | | | the recent deal where EA acquired the.. | +----------------+--------------------------------------------+ | ... | ... | +----------------+--------------------------------------------+
תמלול ותרגום של תוכן בסרטונים
כדי ליצור טבלת אובייקטים על תוכן וידאו ציבורי, ואז לתמלל ולתרגם סרטון:
במסוף Google Cloud , עוברים לדף BigQuery.
בעורך השאילתות, מריצים את השאילתה הבאה כדי ליצור את טבלת האובייקטים:
CREATE OR REPLACE EXTERNAL TABLE `bqml_tutorial.video` WITH CONNECTION `us.test_connection` OPTIONS ( object_metadata = 'SIMPLE', uris = ['gs://cloud-samples-data/generative-ai/video/*']);
בעורך השאילתות, מריצים את השאילתה הבאה כדי לתמלל ולתרגם את הקובץ
pixel8.mp4:SELECT AI.GENERATE( (OBJ.GET_ACCESS_URL(ref, 'r'), 'Transcribe the video in Japanese and then translate to English.'), endpoint => 'gemini-2.5-pro', output_schema => 'japanese_transcript STRING, english_translation STRING' ).* EXCEPT (full_response, status) FROM `bqml_tutorial.video` WHERE REGEXP_CONTAINS(uri, 'pixel8.mp4');
הפלט אמור להיראות כך:
+--------------------------------------------+--------------------------------+ | english_translation | japanese_transcript | +--------------------------------------------+--------------------------------+ | My name is Saeka Shimada. I'm a | 島田 さえか です 。 東京 で フ | | photographer in Tokyo. Tokyo has many | ォトグラファー を し て い ま | | faces. The city at night is totally... | す 。 東京 に は いろんな 顔 が | +--------------------------------------------+--------------------------------+
ניתוח התוכן של קובץ אודיו
כדי ליצור טבלת אובייקטים של תוכן אודיו ציבורי, ואז לנתח את התוכן של קובצי האודיו, פועלים לפי השלבים הבאים.
במסוף Google Cloud , עוברים לדף BigQuery.
בעורך השאילתות, מריצים את השאילתה הבאה כדי ליצור את טבלת האובייקטים:
CREATE OR REPLACE EXTERNAL TABLE `bqml_tutorial.audio` WITH CONNECTION `us.test_connection` OPTIONS ( object_metadata = 'SIMPLE', uris = ['gs://cloud-samples-data/generative-ai/audio/*']);
בעורך השאילתות, מריצים את השאילתה הבאה כדי לנתח את קובצי האודיו:
SELECT AI.GENERATE( (OBJ.GET_ACCESS_URL(ref, 'r'), 'Summarize the content of this audio file.'), endpoint => 'gemini-2.5-pro', output_schema => 'topic ARRAY<STRING>, summary STRING' ).* EXCEPT (full_response, status), uri FROM `bqml_tutorial.audio`;
התוצאות אמורות להיראות כך:
+--------------------------------------------+-----------------------------------------------------------+ | summary | topic | uri | +--------------------------------------------+-----------------------------------------------------------+ | The audio contains a distinctive 'beep' | beep sound | gs://cloud-samples-data/generativ... | | sound, followed by the characteristic | | | | sound of a large vehicle or bus backing.. | | | +--------------------------------------------+--------------------+--------------------------------------+ | | vehicle backing up | | | +--------------------+ | | | bus | | | +--------------------+ | | | alarm | | +--------------------------------------------+--------------------+--------------------------------------+ | The speaker introduces themselves | Introduction | gs://cloud-samples-data/generativ... | | as Gemini and expresses their excitement | | | | and readiness to dive into something.. | | | +--------------------------------------------+--------------------+--------------------------------------+ | | Readiness | | | +--------------------+ | | | Excitement | | | +--------------------+ | | | Collaboration | | +--------------------------------------------+--------------------+--------------------------------------+ | ... | ... | ... | +--------------------------------------------+--------------------+--------------------------------------+
הסרת המשאבים
- במסוף Google Cloud , נכנסים לדף Manage resources.
- ברשימת הפרויקטים, בוחרים את הפרויקט שרוצים למחוק ולוחצים על Delete.
- כדי למחוק את הפרויקט, כותבים את מזהה הפרויקט בתיבת הדו-שיח ולוחצים על Shut down.