مدلهای هوش مصنوعی (AI) خانواده Gemini برای مدیریت انواع دادههای ورودی از جمله متن، تصویر و صدا ساخته شدهاند. از آنجایی که این مدلها میتوانند بیش از یک نوع یا حالت داده را مدیریت کنند، مدلهای جمینی مدلهای چندوجهی نامیده میشوند یا به عنوان دارای قابلیتهای چندوجهی توضیح داده میشوند.
این راهنما نحوه کار با فایل های رسانه ای را با استفاده از Files API به شما نشان می دهد. عملیات اصلی برای فایل های صوتی، تصاویر، فیلم ها، اسناد و سایر انواع فایل های پشتیبانی شده یکسان است.
برای راهنمایی درخواست فایل، بخش راهنمای درخواست فایل را بررسی کنید.
یک فایل آپلود کنید
می توانید از Files API برای آپلود یک فایل رسانه ای استفاده کنید. همیشه زمانی از Files API استفاده کنید که حجم کل درخواست (شامل فایلها، پیام متنی، دستورالعملهای سیستم و غیره) بیشتر از 20 مگابایت باشد.
کد زیر یک فایل را آپلود می کند و سپس از فایل در یک تماس برای generateContent
استفاده می کند.
from google import genai
client = genai.Client(api_key="GOOGLE_API_KEY")
myfile = client.files.upload(file="path/to/sample.mp3")
response = client.models.generate_content(
model="gemini-2.0-flash", contents=["Describe this audio clip", myfile]
)
print(response.text)
import {
GoogleGenAI,
createUserContent,
createPartFromUri,
} from "@google/genai";
const ai = new GoogleGenAI({ apiKey: "GOOGLE_API_KEY" });
async function main() {
const myfile = await ai.files.upload({
file: "path/to/sample.mp3",
config: { mimeType: "audio/mpeg" },
});
const response = await ai.models.generateContent({
model: "gemini-2.0-flash",
contents: createUserContent([
createPartFromUri(myfile.uri, myfile.mimeType),
"Describe this audio clip",
]),
});
console.log(response.text);
}
await main();
file, err := client.UploadFileFromPath(ctx, "path/to/sample.mp3", nil)
if err != nil {
log.Fatal(err)
}
defer client.DeleteFile(ctx, file.Name)
model := client.GenerativeModel("gemini-2.0-flash")
resp, err := model.GenerateContent(ctx,
genai.FileData{URI: file.URI},
genai.Text("Describe this audio clip"))
if err != nil {
log.Fatal(err)
}
printResponse(resp)
AUDIO_PATH="path/to/sample.mp3"
MIME_TYPE=$(file -b --mime-type "${AUDIO_PATH}")
NUM_BYTES=$(wc -c < "${AUDIO_PATH}")
DISPLAY_NAME=AUDIO
tmp_header_file=upload-header.tmp
# Initial resumable request defining metadata.
# The upload url is in the response headers dump them to a file.
curl "${BASE_URL}/upload/v1beta/files?key=${GOOGLE_API_KEY}" \
-D upload-header.tmp \
-H "X-Goog-Upload-Protocol: resumable" \
-H "X-Goog-Upload-Command: start" \
-H "X-Goog-Upload-Header-Content-Length: ${NUM_BYTES}" \
-H "X-Goog-Upload-Header-Content-Type: ${MIME_TYPE}" \
-H "Content-Type: application/json" \
-d "{'file': {'display_name': '${DISPLAY_NAME}'}}" 2> /dev/null
upload_url=$(grep -i "x-goog-upload-url: " "${tmp_header_file}" | cut -d" " -f2 | tr -d "\r")
rm "${tmp_header_file}"
# Upload the actual bytes.
curl "${upload_url}" \
-H "Content-Length: ${NUM_BYTES}" \
-H "X-Goog-Upload-Offset: 0" \
-H "X-Goog-Upload-Command: upload, finalize" \
--data-binary "@${AUDIO_PATH}" 2> /dev/null > file_info.json
file_uri=$(jq ".file.uri" file_info.json)
echo file_uri=$file_uri
# Now generate content using that file
curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent?key=$GOOGLE_API_KEY" \
-H 'Content-Type: application/json' \
-X POST \
-d '{
"contents": [{
"parts":[
{"text": "Describe this audio clip"},
{"file_data":{"mime_type": "${MIME_TYPE}", "file_uri": '$file_uri'}}]
}]
}' 2> /dev/null > response.json
cat response.json
echo
jq ".candidates[].content.parts[].text" response.json
دریافت متادیتا برای یک فایل
میتوانید تأیید کنید که API با موفقیت فایل آپلود شده را ذخیره کرده و ابردادههای آن را با فراخوانی files.get
دریافت کنید.
myfile = client.files.upload(file='path/to/sample.mp3')
file_name = myfile.name
myfile = client.files.get(name=file_name)
print(myfile)
const myfile = await ai.files.upload({
file: "path/to/sample.mp3",
config: { mimeType: "audio/mpeg" },
});
const fileName = myfile.name;
const fetchedFile = await ai.files.get({ name: fileName });
console.log(fetchedFile);
file, err := client.UploadFileFromPath(ctx, "path/to/sample.mp3", nil)
if err != nil {
log.Fatal(err)
}
gotFile, err := client.GetFile(ctx, file.Name)
if err != nil {
log.Fatal(err)
}
fmt.Println("Got file:", gotFile.Name)
# file_info.json was created in the upload example
name=$(jq ".file.name" file_info.json)
# Get the file of interest to check state
curl https://generativelanguage.googleapis.com/v1beta/files/$name > file_info.json
# Print some information about the file you got
name=$(jq ".file.name" file_info.json)
echo name=$name
file_uri=$(jq ".file.uri" file_info.json)
echo file_uri=$file_uri
لیست فایل های آپلود شده
می توانید چندین فایل را با استفاده از Files API آپلود کنید. کد زیر لیستی از تمام فایل های آپلود شده را دریافت می کند:
print('My files:')
for f in client.files.list():
print(' ', f.name)
const listResponse = await ai.files.list({ config: { pageSize: 10 } });
for await (const file of listResponse) {
console.log(file.name);
}
iter := client.ListFiles(ctx)
for {
ifile, err := iter.Next()
if err == iterator.Done {
break
}
if err != nil {
log.Fatal(err)
}
fmt.Println(ifile.Name)
}
echo "My files: "
curl "https://generativelanguage.googleapis.com/v1beta/files?key=$GOOGLE_API_KEY"
فایل های آپلود شده را حذف کنید
پس از 48 ساعت فایل ها به طور خودکار حذف می شوند. همچنین می توانید به صورت دستی فایل آپلود شده را حذف کنید:
myfile = client.files.upload(file='path/to/sample.mp3')
client.files.delete(name=myfile.name)
const myfile = await ai.files.upload({
file: "path/to/sample.mp3",
config: { mimeType: "audio/mpeg" },
});
const fileName = myfile.name;
await ai.files.delete({ name: fileName });
file, err := client.UploadFileFromPath(ctx, "path/to/sample.mp3", nil)
if err != nil {
log.Fatal(err)
}
client.DeleteFile(ctx, file.Name)
curl --request "DELETE" https://generativelanguage.googleapis.com/v1beta/files/$name?key=$GOOGLE_API_KEY
اطلاعات استفاده
می توانید از Files API برای آپلود و تعامل با فایل های رسانه ای استفاده کنید. Files API به شما امکان می دهد تا حداکثر 20 گیگابایت فایل در هر پروژه را با حداکثر اندازه هر فایل 2 گیگابایت ذخیره کنید. فایل ها به مدت 48 ساعت ذخیره می شوند. در این مدت، می توانید از API برای دریافت ابرداده در مورد فایل ها استفاده کنید، اما نمی توانید فایل ها را دانلود کنید. Files API بدون هیچ هزینه ای در تمام مناطقی که Gemini API در دسترس است در دسترس است.
استراتژی های ایجاد فایل
این بخش راهنمایی و بهترین روش ها را برای استفاده از فایل های رسانه ای با درخواست Gemini API ارائه می دهد.
توانایی استفاده از انواع مختلف داده ها در درخواست های خود به شما انعطاف پذیری بیشتری از نظر کارهایی که می توانید با Gemini API انجام دهید، می دهد. به عنوان مثال، می توانید عکس یک غذای خوشمزه را برای مدل ارسال کنید و از او بخواهید که یک وبلاگ کوتاه درباره غذا بنویسد.
اعلان | پاسخ |
بر اساس این تصویر یک پست وبلاگ کوتاه و جذاب بنویسید. این باید شامل توضیحاتی در مورد غذا در عکس باشد و در مورد تهیه غذای سفر من صحبت کند. ![]() | تهیه غذا یک راه عالی برای صرفه جویی در زمان و هزینه است و همچنین می تواند به شما کمک کند که غذای سالم تری داشته باشید. این غذا نمونه ای عالی از یک غذای سالم و خوشمزه است که به راحتی می توان آن را زودتر از موعد آماده کرد. این غذا شامل برنج قهوه ای، سبزیجات بوداده و تریاکی مرغ است. برنج قهوه ای یک کربوهیدرات سالم و پیچیده است که به شما انرژی پایدار می دهد. سبزیجات برشته یک راه عالی برای دریافت دوز روزانه ویتامین ها و مواد معدنی هستند و تریاکی مرغ یک گزینه خوشمزه و غنی از پروتئین است. تهیه این غذا نیز بسیار آسان است. به سادگی برنج قهوه ای را بپزید، سبزیجات را تفت دهید و مرغ تریاکی را بپزید. وقتی همه چیز پخته شد، آن را در ظرف های آماده غذا تقسیم کنید و در یخچال نگهداری کنید. سپس می توانید یک ظرف بردارید و صبح های شلوغ بروید! اگر به دنبال یک غذای سالم و لذیذ هستید که به راحتی بتوان آن را زودتر از موعد آماده کرد، این غذا گزینه بسیار خوبی است. این مملو از مواد مغذی و طعم است و مطمئناً احساس سیری و رضایت شما را حفظ می کند. در اینجا آماده کردن یک وعده غذایی سالم و خوشمزه است! |
اگر در دریافت خروجی مورد نظر از اعلانهایی که از فایلهای رسانهای استفاده میکنند مشکل دارید، چند استراتژی وجود دارد که میتواند به شما کمک کند به نتایج دلخواه خود برسید. بخشهای زیر رویکردهای طراحی و نکات عیبیابی را برای بهبود اعلانهایی که از ورودی چندوجهی استفاده میکنند، ارائه میکند.
میتوانید با پیروی از بهترین روشها، درخواستهای چندوجهی خود را بهبود بخشید:
اصول اولیه طراحی
- دستورالعملهای خود را مشخص کنید : دستورالعملهای واضح و مختصر بسازید که کمترین فضایی را برای تفسیر نادرست باقی میگذارد.
- چند مثال به درخواست خود اضافه کنید: از مثال های واقعی چند شات برای نشان دادن آنچه می خواهید به دست آورید استفاده کنید.
- گام به گام آن را تجزیه کنید : وظایف پیچیده را به اهداف فرعی قابل مدیریت تقسیم کنید و مدل را در طول فرآیند هدایت کنید.
- فرمت خروجی را مشخص کنید : در درخواست خود، بخواهید خروجی به فرمتی که میخواهید باشد، مانند markdown، JSON، HTML و موارد دیگر.
- تصویر خود را در ابتدا برای درخواستهای تک تصویری قرار دهید : در حالی که Gemini میتواند ورودیهای تصویر و متن را به هر ترتیبی مدیریت کند، برای درخواستهایی که حاوی یک تصویر واحد هستند، اگر آن تصویر (یا ویدیو) قبل از درخواست متن قرار داده شود، ممکن است عملکرد بهتری داشته باشد. با این حال، برای اعلانهایی که نیاز دارند تصاویر به شدت با متنها در هم آمیخته شوند تا منطقی باشند، از هر ترتیبی که طبیعیتر است استفاده کنید.
عیب یابی درخواست چند وجهی شما
- اگر مدل اطلاعاتی را از قسمت مربوط به تصویر نمیکشد: رها کردن به شما نشان میدهد که میخواهید اعلان اطلاعات را از کدام جنبههای تصویر بگیرد.
- اگر خروجی مدل خیلی عمومی است (به اندازه کافی برای ورودی تصویر/فیلم تنظیم نشده است): در ابتدای دستور، سعی کنید قبل از ارائه دستورالعمل کار، از مدل بخواهید تصویر(ها) یا ویدیو را توصیف کند، یا سعی کنید از مدل بخواهید به آنچه در تصویر است اشاره کند.
- برای عیب یابی اینکه کدام قسمت شکست خورده است: از مدل بخواهید تصویر را توصیف کند، یا از مدل بخواهید استدلال خود را توضیح دهد تا درک اولیه مدل را بسنجد.
- اگر درخواست شما منجر به محتوای توهمآمیز میشود: سعی کنید تنظیمات دما را شمارهگیری کنید یا از مدل بخواهید توضیحات کوتاهتری ارائه دهد تا احتمال اینکه جزئیات بیشتر را تعمیم ندهد.
- تنظیم پارامترهای نمونه گیری: برای تنظیم خلاقیت مدل، تنظیمات مختلف دما و انتخاب های top-k را آزمایش کنید.
در دستورالعمل های خود مشخص باشید
دستورات زمانی بیشترین موفقیت را دارند که واضح و با جزئیات باشند. اگر خروجی خاصی در ذهن دارید، بهتر است آن نیاز را در اعلان قرار دهید تا مطمئن شوید که خروجی مورد نظرتان را دریافت می کنید.
برای این تصویر از تابلوی فرودگاه، درخواست از مدل برای "توصیف این تصویر" می تواند یک توصیف کلی ایجاد کند. اگر به مدل برای تجزیه زمان و شهر از تصویر نیاز دارید، میتوانید آن درخواست را مستقیماً در درخواست خود وارد کنید.
اعلان | پاسخ مدل |
---|---|
![]() این تصویر را توصیف کنید. | تصویر تابلوی ورود و خروج فرودگاه را نشان می دهد. |
درخواست به روز شد | پاسخ بهبود یافته |
---|---|
![]() زمان و شهر را از تابلوی فرودگاه نشان داده شده در این تصویر در لیستی تجزیه کنید. |
چند مثال اضافه کنید
مدل Gemini می تواند ورودی های متعددی را بپذیرد که می تواند از آنها به عنوان مثال برای درک خروجی مورد نظر شما استفاده کند. افزودن این مثالها میتواند به مدل کمک کند تا الگوها را شناسایی کند و رابطه بین تصاویر داده شده و پاسخها را به مثال جدید اعمال کند. به این یادگیری «چند شات» نیز می گویند.
در مثال زیر، خروجی اولیه به صورت جمله نوشته شده است و همچنین شامل کشور (برزیل) است. فرض کنید خروجی را در قالب یا سبک دیگری میخواهید و فقط شهر را میخواهید، نه کشور را. افزودن چند نمونه به اعلان شما می تواند مدل را به گونه ای که شما می خواهید پاسخ دهد.
اعلان | پاسخ مدل |
---|---|
![]() شهر را به همراه نقطه عطف تعیین کنید. | نقطه عطفی مجسمه مسیح نجات دهنده در ریودوژانیرو، برزیل است. |
درخواست به روز شد | پاسخ بهبود یافته |
---|---|
شهر را به همراه نقطه عطف تعیین کنید. ![]() | شهر: رم، نقطه عطف: کولوسئوم. |
![]() | شهر: پکن، نقطه عطف: شهر ممنوعه |
![]() | شهر: ریودوژانیرو، نقطه عطف: مجسمه مسیح نجات دهنده |
آن را مرحله به مرحله تجزیه کنید
برای کارهای پیچیده مانند کارهایی که به درک بصری و استدلال نیاز دارند، تقسیم کار به مراحل کوچکتر و ساده تر می تواند مفید باشد. از طرف دیگر، اگر مستقیماً از مدل بخواهید در درخواست شما "گام به گام فکر کند" نیز می تواند موثر باشد.
اعلان | پاسخ مدل |
---|---|
![]() کی دستمال توالت تمام می شود؟ | به زودی، فقط 3 رول باقی مانده است. |
درخواست به روز شد | پاسخ بهبود یافته |
---|---|
![]()
|
|
مسائل ریاضی یا انواع دیگر مسائل کلمه کاندیدای عالی برای درخواست از مدل برای فکر کردن مرحله به مرحله هستند.
اعلان | پاسخ |
---|---|
![]() ترم 4 در دنباله چیست؟ | -135 |
پاسخ مدل نادرست است. برخی از راههای بهبود این امر این است که از مدل بخواهید قبل از پاسخ دادن به درخواست، مسئله را تجزیه کند.
اعلان | پاسخ |
---|---|
![]() ابتدا فرمول موجود در تصویر را تجزیه کنید. سپس بر اساس فرمول، به عبارت "چهارمین جمله در دنباله چیست؟" پاسخ دهید. | برای گسترش نتیجه کلیک کنید\( b(n) = b(n-1) * (-3) \) \( b(1) = 15 \)
\( b(4) = b(4-1) * (-3) \) \( b(4) = b(3) * (-3) \) \( b(3) = b(3-1) * (-3) \) \( b(3) = b(2) * (-3) \) \( b(2) = b(2-1) * (-3) \) \( b(2) = b(1) * (-3) \) \( b(2) = 15 * (-3) \) \( b(2) = -45 \) \( b(3) = b(2) * (-3) \) \( b(3) = -45 * (-3) \) \( b(3) = 135 \) \( b(4) = b(3) * (-3) \) \( b(4) = 135 * (-3) \) \( b(4) = -405 \) بنابراین، جمله 4 در دنباله -405 است. |
این پاسخ مدل صحیح است - اکنون برای سادهتر کردن پاسخ، میتوانید از مدل بخواهید گام به گام فکر کند.
درخواست به روز شد | پاسخ بهبود یافته |
---|---|
![]() ترم 4 در دنباله چیست؟ قدم به قدم فکر کنید. | ترم اول 15 است. جمله دوم b(1) * (-3) = 15 * (-3) = -45 است. جمله سوم b(2) * (-3) = -45 * (-3) = 135 است. جمله چهارم b(3) * (-3) = 135 * (-3) = -405 است. |
فرمت خروجی را مشخص کنید
یک مشکل رایج نیاز به خروجی مدل در یک فرمت خاص است (به عنوان مثال markdown، JSON، HTML)، به خصوص اگر خروجی مدل باید توسط یک کار پایین دستی وارد شود. می توانید با دستور دادن به مدل برای انجام این کار در اعلان، خروجی را در آن فرمت تولید کنید. در زیر دو نمونه آورده شده است:
اعلان | پاسخ مدل |
---|---|
![]() جدول موجود در این تصویر را با فرمت علامت گذاری تجزیه کنید | | موضوع | وضعیت | زمان | تاریخ شروع | سررسید در | | ------- | ------ | ---- | --------- | ------ | | ریاضی | انجام شد | 1.5 ساعت | 2023/11/29 | 12/1/2023 | | جغرافیا | انجام شد | 30 دقیقه | 2023/12/2 | 2023/12/4 | | فیزیک | در حال انجام | 2 ساعت | 2023/12/3 | 2023/12/5 | | زیست شناسی | شروع نشده | 6 ساعت | 1395/11/2 | 2023/12/6 | |
اعلان | پاسخ مدل |
---|---|
![]() لیستی از تمام ویژگی های زیر ارائه دهید: مواد تشکیل دهنده، نوع غذا، گیاهی یا غیر گیاهی، با فرمت JSON | ``json`` { "مواد تشکیل دهنده": [ "برنج"، "میگو"، "صدف ها"، "صدف"، "نخود فرنگی"، "گوجه فرنگی"، "پیاز"، "سیر"، "روغن زیتون"، "پاپریکا"، "نمک"، "فلفل" ]، "نوع آشپزی": "اسپانیایی"، «گیاهی»: نادرست |
ابتدا تصویر خود را برای درخواست های تک تصویری قرار دهید
در حالی که Gemini می تواند تصویر و متن را به هر ترتیبی در یک اعلان تفسیر کند، قرار دادن یک تصویر واحد قبل از اعلان متن ممکن است به نتایج بهتری منجر شود. در نمونه های زیر، متوجه خواهید شد که تصویر در ابتدا قبل از متن در هر فرمان قرار می گیرد.
عیب یابی درخواست چند وجهی شما
اگر پاسخ مفیدی دریافت نکردید، ممکن است لازم باشد درخواست خود را عیب یابی کنید. در اینجا چند استراتژی وجود دارد که می توانید امتحان کنید.
اگر مدل اطلاعاتی از قسمت مربوطه تصویر نمی کشد
برای دریافت پاسخ دقیقتر، میتوانید به این نکته اشاره کنید که میخواهید اعلان از کدام جنبههای تصویر اطلاعاتی را برای اطلاع از پاسخ آن بگیرد.
اعلان | پاسخ مدل |
---|---|
![]() این پوشک ها برای نوزاد چند روز دوام می آورند؟ | پوشک ها قبل از تمام شدن 198 روز دوام خواهند داشت. |
درخواست به روز شد | پاسخ بهبود یافته |
---|---|
![]() این پوشک ها چقدر طول می کشد تا من تمام شود؟ برای تعیین سن کودک از وزن نشان داده شده روی جعبه استفاده کنید و از تعداد کل پوشک های داخل جعبه استفاده کنید. تعداد کل را بر تعداد پوشک کودک در روز تقسیم کنید. | جعبه شامل 198 پوشک است. در جعبه نوشته شده است که پوشک برای کودکی با وزن 22 تا 37 پوند است. متوسط کودکان در این محدوده وزنی احتمالاً بین 1 تا 2 سال سن دارند. یک کودک 2 ساله به طور معمول روزانه 6 پوشک می زند، بنابراین، پوشک حدود 33 روز دوام می آورد (198/6). |
اگر خروجی مدل خیلی عمومی باشد و به اندازه کافی برای ورودی تصویر مناسب نباشد
برای کمک به مدل در تنظیم پاسخ خود به تصویر(ها)، سعی کنید قبل از انجام وظیفه استدلالی از آن بخواهید که تصاویر را توصیف کند.
اعلان | پاسخ مدل |
---|---|
![]() ![]() ![]() ![]() وجه اشتراک این تصاویر چیست؟ | هر چهار تصویر نمونه هایی از عکاسی منظره هستند. |
درخواست به روز شد | پاسخ بهبود یافته |
---|---|
![]() ![]() ![]() ![]() ابتدا آنچه در هر تصویر وجود دارد را با جزئیات شرح دهید. چه وجه اشتراکی بین این تصاویر وجود دارد؟ | تصویر اول شخصی را در حال بستن چمدان نشان می دهد. تصویر دوم یک راهرو خالی در یک مرکز خرید را نشان می دهد. تصویر سوم یک رول دستمال توالت را نشان می دهد. تصویر چهارم یک دریای تاریک و طوفانی را نشان می دهد. وجه اشتراک این تصاویر این است که همگی نمونه هایی از فضاهای حاشیه ای هستند. فضاهای لیمینال مکان ها یا موقعیت هایی هستند که بین دو مکان یا موقعیت دیگر قرار دارند. آنها اغلب با احساس عدم اطمینان یا ابهام مشخص می شوند. تصویر اول فرد را بین حضور در خانه و سفر نشان می دهد. تصویر دوم راهروی بین دو فروشگاه را نشان می دهد. تصویر سوم مربوط به دستمال توالت است که می تواند نمایانگر حمام باشد. حمام یک فضای انتقالی بین قلمرو خصوصی و عمومی است. جایی است که ما خود را برای ورود یا خروج از دنیای بیرون آماده می کنیم. تصویر چهارم دریا را در بین آرام و طوفانی نشان می دهد. فضاهای لیمینال می توانند هم هیجان انگیز و هم ناراحت کننده باشند. آنها می توانند مکانی برای شروع جدید یا مکانی برای پایان باشند. آنها می توانند محل تأمل یا مکان عمل باشند. |
همچنین میتوانید صریحاً از مدل بخواهید به آنچه در تصویر است اشاره کند.
درخواست به روز شد | پاسخ بهبود یافته |
---|---|
![]() ![]() ![]() ![]() وجه اشتراک این تصاویر چیست؟ در پاسخ خود به آنچه در تصاویر است مراجعه کنید. | تمامی تصاویر مربوط به سفر است. تصویر اول شخصی را در حال بستن چمدان نشان می دهد، تصویر دوم راهروی خالی در یک مرکز خرید، تصویر سوم دسته ای از دستمال توالت و تصویر چهارم دریای تاریک و طوفانی را نشان می دهد. این تصاویر همگی مربوط به سفر هستند زیرا همه چیزهایی هستند که افراد در سفر به آنها نیاز دارند یا از آنها استفاده می کنند. تصویر اول شخصی را در حال بستن چمدان نشان می دهد، کاری که مردم هنگام رفتن به سفر انجام می دهند. تصویر دوم یک راهرو خالی در یک مرکز خرید را نشان می دهد، جایی که مردم اغلب برای خرید وسایل سفر خود به آنجا می روند. تصویر سوم یک دسته کاغذ توالت را نشان می دهد، چیزی که مردم اغلب در سفر از آن استفاده می کنند. تصویر چهارم، دریای تاریک و طوفانی را نشان می دهد، چیزی که مردم اغلب هنگام سفر با آن مواجه می شوند. |
همین نکات برای خروجی خلاقانه از تصاویر کار می کنند. در مثال زیر با خرگوش، درخواست صریح از مدل برای گنجاندن جنبههایی از تصویر میتواند خروجی را بهبود بخشد.
اعلان | پاسخ مدل |
---|---|
![]() میشه یه شعر در مورد این عکس برام بنویسی؟ | خرگوش کوچولو، خیلی نرم و قهوه ای، تو چمن ها را می خوری، آنقدر سبز و شیرین، |
درخواست به روز شد | پاسخ بهبود یافته |
---|---|
![]() می توانید یک شعر توصیفی و دراماتیک در مورد این تصویر برای من بنویسید و مکان آن را درج کنید؟ | اسم حیوان دست اموز کوچک روی سبز، آیا آبی اقیانوس است، خرگوش کوچولو، راستش را بگو، شاید این وسعت همه چیز باشد، خرگوش کوچولو، من تعجب می کنم که چه خوابی می بینید، هر چه که باشد، خرگوش کوچولو، |
عیب یابی کدام قسمت از درخواست انجام نشد
تشخیص اینکه آیا یک اعلان شکست خورده است زیرا مدل در ابتدا تصویر را درک نکرده است یا اینکه آیا تصویر را درک کرده است اما مراحل استدلال صحیح را بعد از آن انجام نداده است. برای رفع ابهام بین این دلایل، از مدل بخواهید آنچه را که در تصویر است توضیح دهد.
در مثال زیر، اگر مدل با میان وعده ای پاسخ داد که در هنگام جفت شدن با چای شگفت انگیز به نظر می رسد (مثلاً پاپ کورن)، ابتدا می توانید عیب یابی کنید تا مشخص شود آیا مدل به درستی تشخیص داده است که تصویر حاوی چای است یا خیر.
اعلان | درخواست عیب یابی |
---|---|
![]() چه میان وعده ای می توانم در 1 دقیقه درست کنم که با آن خوب باشد؟ | ![]() آنچه در این تصویر وجود دارد را توصیف کنید. |
استراتژی دیگر این است که از مدل بخواهیم استدلال خود را توضیح دهد. این می تواند به شما کمک کند تا مشخص کنید کدام قسمت از استدلال شکسته است، در صورت وجود.
اعلان | درخواست عیب یابی |
---|---|
![]() چه میان وعده ای می توانم در 1 دقیقه درست کنم که با آن خوب باشد؟ | ![]() چه میان وعده ای می توانم در 1 دقیقه درست کنم که با آن خوب باشد؟ لطفا توضیح دهید چرا |
بعدش چی
- سعی کنید درخواستهای چندوجهی خود را با استفاده از Google AI Studio بنویسید.
- برای اطلاعات در مورد استفاده از Gemini Files API برای آپلود فایلهای رسانهای و گنجاندن آنها در فرمانهای خود، به راهنمای پردازش سند چشمانداز ، صوتی و سند مراجعه کنید.
- برای راهنمایی بیشتر در مورد طراحی سریع، مانند تنظیم پارامترهای نمونه برداری، به صفحه استراتژی های اعلان مراجعه کنید.