مدلهای Gemini از ابتدا بهصورت چندوجهی ساخته شدهاند و طیف گستردهای از وظایف پردازش تصویر و دید رایانهای را باز میکنند، ازجمله اما نه محدود به شرح تصویر، طبقهبندی، و پاسخ به پرسشهای تصویری بدون نیاز به آموزش مدلهای تخصصی یادگیری ماشین.
مدلهای Gemini علاوهبر قابلیتهای چندوجهی عمومی، برای موارد استفاده خاصی مانند تشخیص اشیا، ازطریق آموزش بیشتر، دقت بهبودیافته ارائه میدهند.
درحال ارسال تصاویر به Gemini
بااستفاده از دو روش میتوانید تصاویر را بهعنوان ورودی به Gemini ارائه دهید:
- گذراندن دادههای تصویر درونخطی: برای فایلهای کوچکتر (اندازه کل درخواست کمتر از ۲۰ مگابایت، ازجمله پیاموارهها) ایدهآل است.
- بارگذاری تصاویر بااستفاده از File API: برای فایلهای بزرگتر یا برای استفاده مجدد از تصاویر در چندین درخواست توصیه میشود.
گذراندن دادههای تصویر بهخط
میتوانید دادههای تصویر درونخطی را در
درخواست به generateContent ارسال کنید. میتوانید دادههای تصویر را بهصورت رشتههای کدبندیشده با Base64 یا با خواندن مستقیم فایلهای محلی (بسته به زبان) ارائه دهید.
مثال زیر نحوه خواندن تصویر از فایل محلی و ارسال آن به
generateContent API برای پردازش را نشان میدهد.
Python
from google import genai
from google.genai import types
with open('path/to/small-sample.jpg', 'rb') as f:
image_bytes = f.read()
client = genai.Client()
response = client.models.generate_content(
model='gemini-3.8-flash',
contents=[
types.Part.from_bytes(
data=image_bytes,
mime_type='image/jpeg',
),
'Caption this image.'
]
)
print(response.text)
JavaScript
import { GoogleGenAI } from "@google/genai";
import * as fs from "node:fs";
const ai = new GoogleGenAI({});
const base64ImageFile = fs.readFileSync("path/to/small-sample.jpg", {
encoding: "base64",
});
const contents = [
{
inlineData: {
mimeType: "image/jpeg",
data: base64ImageFile,
},
},
{ text: "Caption this image." },
];
const response = await ai.models.generateContent({
model: "gemini-3.8-flash",
contents: contents,
});
console.log(response.text);
رفتن
bytes, _ := os.ReadFile("path/to/small-sample.jpg")
parts := []*genai.Part{
genai.NewPartFromBytes(bytes, "image/jpeg"),
genai.NewPartFromText("Caption this image."),
}
contents := []*genai.Content{
genai.NewContentFromParts(parts, genai.RoleUser),
}
result, _ := client.Models.GenerateContent(
ctx,
"gemini-3.8-flash",
contents,
nil,
)
fmt.Println(result.Text())
REST
IMG_PATH="/path/to/your/image1.jpg"
if [[ "$(base64 --version 2>&1)" = *"FreeBSD"* ]]; then
B64FLAGS="--input"
else
B64FLAGS="-w0"
fi
curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-3.8-flash:generateContent" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H 'Content-Type: application/json' \
-X POST \
-d '{
"contents": [{
"parts":[
{
"inline_data": {
"mime_type":"image/jpeg",
"data": "'"$(base64 $B64FLAGS $IMG_PATH)"'"
}
},
{"text": "Caption this image."},
]
}]
}' 2> /dev/null
همچنین میتوانید تصویری را از نشانی وب واکشی کنید، آن را به بایت تبدیل کنید، و آن را به
generateContent همانطور که در مثالهای زیر نشان داده شده است ارسال کنید.
Python
from google import genai
from google.genai import types
import requests
image_path = "https://goo.gle/instrument-img"
image_bytes = requests.get(image_path).content
image = types.Part.from_bytes(
data=image_bytes, mime_type="image/jpeg"
)
client = genai.Client()
response = client.models.generate_content(
model="gemini-3.8-flash",
contents=["What is this image?", image],
)
print(response.text)
JavaScript
import { GoogleGenAI } from "@google/genai";
async function main() {
const ai = new GoogleGenAI({});
const imageUrl = "https://goo.gle/instrument-img";
const response = await fetch(imageUrl);
const imageArrayBuffer = await response.arrayBuffer();
const base64ImageData = Buffer.from(imageArrayBuffer).toString('base64');
const result = await ai.models.generateContent({
model: "gemini-3.8-flash",
contents: [
{
inlineData: {
mimeType: 'image/jpeg',
data: base64ImageData,
},
},
{ text: "Caption this image." }
],
});
console.log(result.text);
}
main();
رفتن
package main
import (
"context"
"fmt"
"os"
"io"
"net/http"
"google.golang.org/genai"
)
func main() {
ctx := context.Background()
client, err := genai.NewClient(ctx, nil)
if err != nil {
log.Fatal(err)
}
// Download the image.
imageResp, _ := http.Get("https://goo.gle/instrument-img")
imageBytes, _ := io.ReadAll(imageResp.Body)
parts := []*genai.Part{
genai.NewPartFromBytes(imageBytes, "image/jpeg"),
genai.NewPartFromText("Caption this image."),
}
contents := []*genai.Content{
genai.NewContentFromParts(parts, genai.RoleUser),
}
result, _ := client.Models.GenerateContent(
ctx,
"gemini-3.8-flash",
contents,
nil,
)
fmt.Println(result.Text())
}
REST
IMG_URL="https://goo.gle/instrument-img"
MIME_TYPE=$(curl -sIL "$IMG_URL" | grep -i '^content-type:' | awk -F ': ' '{print $2}' | sed 's/\r$//' | head -n 1)
if [[ -z "$MIME_TYPE" || ! "$MIME_TYPE" == image/* ]]; then
MIME_TYPE="image/jpeg"
fi
# Check for macOS
if [[ "$(uname)" == "Darwin" ]]; then
IMAGE_B64=$(curl -sL "$IMG_URL" | base64 -b 0)
elif [[ "$(base64 --version 2>&1)" = *"FreeBSD"* ]]; then
IMAGE_B64=$(curl -sL "$IMG_URL" | base64)
else
IMAGE_B64=$(curl -sL "$IMG_URL" | base64 -w0)
fi
curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-3.8-flash:generateContent" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H 'Content-Type: application/json' \
-X POST \
-d '{
"contents": [{
"parts":[
{
"inline_data": {
"mime_type":"'"$MIME_TYPE"'",
"data": "'"$IMAGE_B64"'"
}
},
{"text": "Caption this image."}
]
}]
}' 2> /dev/null
بارگذاری تصاویر بااستفاده از File API
برای فایلهای بزرگ یا برای اینکه بتوانید از فایل تصویر یکسانی بهطور مکرر استفاده کنید، از
Files API استفاده کنید. کد زیر فایل تصویری را بارگذاری میکند و سپس از فایل در
تماس با generateContent استفاده میکند. برای اطلاعات بیشتر و نمونهها، راهنمای «میانای برنامهسازی کاربردی فایلها» را ببینید.
Python
from google import genai
client = genai.Client()
my_file = client.files.upload(file="path/to/sample.jpg")
response = client.models.generate_content(
model="gemini-3.8-flash",
contents=[my_file, "Caption this image."],
)
print(response.text)
JavaScript
import {
GoogleGenAI,
createUserContent,
createPartFromUri,
} from "@google/genai";
const ai = new GoogleGenAI({});
async function main() {
const myfile = await ai.files.upload({
file: "path/to/sample.jpg",
config: { mimeType: "image/jpeg" },
});
const response = await ai.models.generateContent({
model: "gemini-3.8-flash",
contents: createUserContent([
createPartFromUri(myfile.uri, myfile.mimeType),
"Caption this image.",
]),
});
console.log(response.text);
}
await main();
رفتن
package main
import (
"context"
"fmt"
"os"
"google.golang.org/genai"
)
func main() {
ctx := context.Background()
client, err := genai.NewClient(ctx, nil)
if err != nil {
log.Fatal(err)
}
uploadedFile, _ := client.Files.UploadFromPath(ctx, "path/to/sample.jpg", nil)
parts := []*genai.Part{
genai.NewPartFromText("Caption this image."),
genai.NewPartFromURI(uploadedFile.URI, uploadedFile.MIMEType),
}
contents := []*genai.Content{
genai.NewContentFromParts(parts, genai.RoleUser),
}
result, _ := client.Models.GenerateContent(
ctx,
"gemini-3.8-flash",
contents,
nil,
)
fmt.Println(result.Text())
}
REST
IMAGE_PATH="path/to/sample.jpg"
MIME_TYPE=$(file -b --mime-type "${IMAGE_PATH}")
NUM_BYTES=$(wc -c < "${IMAGE_PATH}")
DISPLAY_NAME=IMAGE
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 "https://generativelanguage.googleapis.com/upload/v1beta/files" \
-H "x-goog-api-key: $GEMINI_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 "x-goog-api-key: $GEMINI_API_KEY" \
-H "Content-Length: ${NUM_BYTES}" \
-H "X-Goog-Upload-Offset: 0" \
-H "X-Goog-Upload-Command: upload, finalize" \
--data-binary "@${IMAGE_PATH}" 2> /dev/null > file_info.json
file_uri=$(jq -r ".file.uri" file_info.json)
echo file_uri=$file_uri
# Now generate content using that file
curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-3.8-flash:generateContent" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H 'Content-Type: application/json' \
-X POST \
-d '{
"contents": [{
"parts":[
{"file_data":{"mime_type": "'"${MIME_TYPE}"'", "file_uri": "'"${file_uri}"'"}},
{"text": "Caption this image."}]
}]
}' 2> /dev/null > response.json
cat response.json
echo
jq ".candidates[].content.parts[].text" response.json
پیامواره با چند تصویر
با افزودن چندین عنصر تصویر
Part در آرایه contents، میتوانید چندین تصویر در یک پیامواره ارائه دهید. اینها میتواند ترکیبی از دادههای درونخطی
(فایلهای محلی یا نشانیهای وب) و مرجعهای «میانای برنامهسازی کاربردی فایل» باشد.
Python
from google import genai
from google.genai import types
client = genai.Client()
# Upload the first image
image1_path = "path/to/image1.jpg"
uploaded_file = client.files.upload(file=image1_path)
# Prepare the second image as inline data
image2_path = "path/to/image2.png"
with open(image2_path, 'rb') as f:
img2_bytes = f.read()
# Create the prompt with text and multiple images
response = client.models.generate_content(
model="gemini-3.8-flash",
contents=[
"What is different between these two images?",
uploaded_file, # Use the uploaded file reference
types.Part.from_bytes(
data=img2_bytes,
mime_type='image/png'
)
]
)
print(response.text)
JavaScript
import {
GoogleGenAI,
createUserContent,
createPartFromUri,
} from "@google/genai";
import * as fs from "node:fs";
const ai = new GoogleGenAI({});
async function main() {
// Upload the first image
const image1_path = "path/to/image1.jpg";
const uploadedFile = await ai.files.upload({
file: image1_path,
config: { mimeType: "image/jpeg" },
});
// Prepare the second image as inline data
const image2_path = "path/to/image2.png";
const base64Image2File = fs.readFileSync(image2_path, {
encoding: "base64",
});
// Create the prompt with text and multiple images
const response = await ai.models.generateContent({
model: "gemini-3.8-flash",
contents: createUserContent([
"What is different between these two images?",
createPartFromUri(uploadedFile.uri, uploadedFile.mimeType),
{
inlineData: {
mimeType: "image/png",
data: base64Image2File,
},
},
]),
});
console.log(response.text);
}
await main();
رفتن
// Upload the first image
image1Path := "path/to/image1.jpg"
uploadedFile, _ := client.Files.UploadFromPath(ctx, image1Path, nil)
// Prepare the second image as inline data
image2Path := "path/to/image2.jpeg"
imgBytes, _ := os.ReadFile(image2Path)
parts := []*genai.Part{
genai.NewPartFromText("What is different between these two images?"),
genai.NewPartFromBytes(imgBytes, "image/jpeg"),
genai.NewPartFromURI(uploadedFile.URI, uploadedFile.MIMEType),
}
contents := []*genai.Content{
genai.NewContentFromParts(parts, genai.RoleUser),
}
result, _ := client.Models.GenerateContent(
ctx,
"gemini-3.8-flash",
contents,
nil,
)
fmt.Println(result.Text())
REST
# Upload the first image
IMAGE1_PATH="path/to/image1.jpg"
MIME1_TYPE=$(file -b --mime-type "${IMAGE1_PATH}")
NUM1_BYTES=$(wc -c < "${IMAGE1_PATH}")
DISPLAY_NAME1=IMAGE1
tmp_header_file1=upload-header1.tmp
curl "https://generativelanguage.googleapis.com/upload/v1beta/files" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-D upload-header1.tmp \
-H "X-Goog-Upload-Protocol: resumable" \
-H "X-Goog-Upload-Command: start" \
-H "X-Goog-Upload-Header-Content-Length: ${NUM1_BYTES}" \
-H "X-Goog-Upload-Header-Content-Type: ${MIME1_TYPE}" \
-H "Content-Type: application/json" \
-d "{'file': {'display_name': '${DISPLAY_NAME1}'}}" 2> /dev/null
upload_url1=$(grep -i "x-goog-upload-url: " "${tmp_header_file1}" | cut -d" " -f2 | tr -d "\r")
rm "${tmp_header_file1}"
curl "${upload_url1}" \
-H "Content-Length: ${NUM1_BYTES}" \
-H "X-Goog-Upload-Offset: 0" \
-H "X-Goog-Upload-Command: upload, finalize" \
--data-binary "@${IMAGE1_PATH}" 2> /dev/null > file_info1.json
file1_uri=$(jq ".file.uri" file_info1.json)
echo file1_uri=$file1_uri
# Prepare the second image (inline)
IMAGE2_PATH="path/to/image2.png"
MIME2_TYPE=$(file -b --mime-type "${IMAGE2_PATH}")
if [[ "$(base64 --version 2>&1)" = *"FreeBSD"* ]]; then
B64FLAGS="--input"
else
B64FLAGS="-w0"
fi
IMAGE2_BASE64=$(base64 $B64FLAGS $IMAGE2_PATH)
# Now generate content using both images
curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-3.8-flash:generateContent" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H 'Content-Type: application/json' \
-X POST \
-d '{
"contents": [{
"parts":[
{"text": "What is different between these two images?"},
{"file_data":{"mime_type": "'"${MIME1_TYPE}"'", "file_uri": '$file1_uri'}},
{
"inline_data": {
"mime_type":"'"${MIME2_TYPE}"'",
"data": "'"$IMAGE2_BASE64"'"
}
}
]
}]
}' 2> /dev/null > response.json
cat response.json
echo
jq ".candidates[].content.parts[].text" response.json
تشخیص اشیا
مدلها برای شناسایی اشیا در تصویر و دریافت مختصات چارگوش محدودکننده آنها آموزش داده میشوند. مختصات، نسبت به ابعاد تصویر، به [۰، ۱۰۰۰] مقیاسبندی میشود. باید این مختصات را براساس اندازه تصویر اصلیتان کوچک کنید.
Python
from google import genai
from google.genai import types
from PIL import Image
import json
client = genai.Client()
prompt = "Detect the all of the prominent items in the image. The box_2d should be [ymin, xmin, ymax, xmax] normalized to 0-1000."
image = Image.open("/path/to/image.png")
config = types.GenerateContentConfig(
response_mime_type="application/json"
)
response = client.models.generate_content(model="gemini-3.8-flash",
contents=[image, prompt],
config=config
)
width, height = image.size
bounding_boxes = json.loads(response.text)
converted_bounding_boxes = []
for bounding_box in bounding_boxes:
abs_y1 = int(bounding_box["box_2d"][0]/1000 * height)
abs_x1 = int(bounding_box["box_2d"][1]/1000 * width)
abs_y2 = int(bounding_box["box_2d"][2]/1000 * height)
abs_x2 = int(bounding_box["box_2d"][3]/1000 * width)
converted_bounding_boxes.append([abs_x1, abs_y1, abs_x2, abs_y2])
print("Image size: ", width, height)
print("Bounding boxes:", converted_bounding_boxes)
JavaScript
import { GoogleGenAI } from "@google/genai";
import * as fs from "node:fs";
const ai = new GoogleGenAI({});
const base64ImageFile = fs.readFileSync("/path/to/image.png", {
encoding: "base64",
});
const response = await ai.models.generateContent({
model: "gemini-3.8-flash",
contents: [
{
inlineData: {
mimeType: "image/png",
data: base64ImageFile,
},
},
"Detect the all of the prominent items in the image. The box_2d should be [ymin, xmin, ymax, xmax] normalized to 0-1000."
],
config: {
responseMimeType: "application/json",
},
});
const boundingBoxes = JSON.parse(response.text);
console.log(boundingBoxes);
// To convert normalized coordinates to absolute pixels:
// const absY1 = (boundingBoxes[0].box_2d[0] / 1000) * imageHeight;
// const absX1 = (boundingBoxes[0].box_2d[1] / 1000) * imageWidth;
رفتن
package main
import (
"context"
"encoding/json"
"fmt"
"image"
_ "image/png" // Register PNG decoder
"log"
"os"
"google.golang.org/genai"
)
type BoundingBox struct {
Box2D []int `json:"box_2d"`
Label string `json:"label"`
}
func main() {
ctx := context.Background()
client, err := genai.NewClient(ctx, nil)
if err != nil {
log.Fatal(err)
}
imagePath := "/path/to/image.png"
// Open the image to get dimensions
file, err := os.Open(imagePath)
if err != nil {
log.Fatal(err)
}
defer file.Close()
imgConfig, _, err := image.DecodeConfig(file)
if err != nil {
log.Fatal(err)
}
width := imgConfig.Width
height := imgConfig.Height
// Read image bytes
imageBytes, err := os.ReadFile(imagePath)
if err != nil {
log.Fatal(err)
}
prompt := "Detect the all of the prominent items in the image. The box_2d should be [ymin, xmin, ymax, xmax] normalized to 0-1000."
parts := []*genai.Part{
genai.NewPartFromBytes(imageBytes, "image/png"),
genai.NewPartFromText(prompt),
}
contents := []*genai.Content{
genai.NewContentFromParts(parts, genai.RoleUser),
}
config := &genai.GenerateContentConfig{
ResponseMIMEType: "application/json",
}
result, err := client.Models.GenerateContent(
ctx,
"gemini-3.8-flash",
contents,
config,
)
if err != nil {
log.Fatal(err)
}
var boundingBoxes []BoundingBox
err = json.Unmarshal([]byte(result.Text()), &boundingBoxes)
if err != nil {
log.Fatal(err)
}
fmt.Printf("Image size: %d %d\n", width, height)
fmt.Println("Bounding boxes:")
for _, box := range boundingBoxes {
if len(box.Box2D) == 4 {
absY1 := int(float64(box.Box2D[0]) / 1000.0 * float64(height))
absX1 := int(float64(box.Box2D[1]) / 1000.0 * float64(width))
absY2 := int(float64(box.Box2D[2]) / 1000.0 * float64(height))
absX2 := int(float64(box.Box2D[3]) / 1000.0 * float64(width))
fmt.Printf("- %s: [%d, %d, %d, %d]\n", box.Label, absX1, absY1, absX2, absY2)
}
}
}
REST
IMG_PATH="/path/to/image.png"
if [[ "$(base64 --version 2>&1)" = *"FreeBSD"* ]]; then
B64FLAGS="--input"
else
B64FLAGS="-w0"
fi
curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-3.8-flash:generateContent" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H 'Content-Type: application/json' \
-X POST \
-d '{
"contents": [{
"parts":[
{
"inline_data": {
"mime_type":"image/png",
"data": "'"$(base64 $B64FLAGS $IMG_PATH)"'"
}
},
{"text": "Detect the all of the prominent items in the image. The box_2d should be [ymin, xmin, ymax, xmax] normalized to 0-1000."}
]
}],
"generationConfig": {
"responseMimeType": "application/json"
}
}' 2> /dev/null
برای نمونههای بیشتر، دفترچههای زیر را در کتاب آشپزی Gemini بررسی کنید:
قالبهای تصویر پشتیبانیشده
Gemini از انواع MIME قالب تصویر زیر پشتیبانی میکند:
- PNG -
image/png - JPEG -
image/jpeg - WEBP -
image/webp - HEIC -
image/heic - HEIF -
image/heif
برای آشنایی با روشهای دیگر ورودی فایل، راهنمای روشهای ورودی فایل را ببینید.
قابلیتها
همه نسخههای مدل Gemini چندوجهی هستند و میتوانند در طیف گستردهای از پردازش تصویر و وظایف دیداری رایانه ازجمله اما نه محدود به شرح تصویر، پرسش و پاسخ تصویری، طبقهبندی تصویر، و تشخیص شیء استفاده شوند.
بسته به کیفیت و عملکرد موردنیازتان، Gemini میتواند نیاز به استفاده از مدلهای تخصصی ML را کاهش دهد.
جدیدترین نسخههای مدل بهطور ویژه آموزش داده شدهاند تا دقت تکلیفهای تخصصی را علاوهبر تواناییهای عمومی، مثل تشخیص اشیا بهبود دهند.
محدودیتها و اطلاعات فنی کلیدی
محدودیت فایل
مدلهای Gemini از حداکثر ۳٬۶۰۰ فایل تصویر در هر درخواست پشتیبانی میکنند.
محاسبه دادهواحد
- ۲۵۸ کد اگر هر دو بُعد <= ۳۸۴ پیکسل باشد. تصاویر بزرگتر به کاشیهای ۷۶۸x۷۶۸ پیکسلی تقسیم میشوند که هر کاشی ۲۵۸ توکن هزینه دارد.
فرمول تقریبی برای محاسبه تعداد کاشیها به این صورت است:
- اندازه واحد برش را که تقریباً این است محاسبه کنید: floor(min(width, height) / 1.5).
- هر بُعد را بر اندازه واحد برش تقسیم کنید و آنها را در هم ضرب کنید تا تعداد کاشیها بهدست آید.
برای مثال، برای تصویری با ابعاد ۹۶۰x۵۴۰، اندازه واحد برش ۳۶۰ خواهد بود. هر بُعد را بر ۳۶۰ تقسیم کنید و تعداد کاشیها ۳ * ۲ = ۶ است.
وضوح رسانه
Gemini 3 با پارامتر media_resolution کنترل دقیقتری بر پردازش دید چندحالته ارائه میدهد. پارامتر media_resolution تعیین میکند
حداکثر تعداد نشانهای اختصاصدادهشده به هر تصویر ورودی یا قاب ویدیو چقدر باشد.
وضوح بالاتر توانایی مدل را در
خواندن نوشتار ریز یا شناسایی جزئیات کوچک بهبود میبخشد، اما استفاده از نشان و تأخیر را افزایش میدهد.
برای جزئیات بیشتر درباره پارامتر و نحوه تأثیر آن بر محاسبات کد، راهنمای وضوح رسانه را ببینید.
نکات و روالهای مطلوب
- تأیید کنید که تصاویر بهدرستی چرخانده شدهاند.
- از تصاویر واضح و بدون محوشدگی استفاده کنید.
- وقتی از یک تصویر با نوشتار استفاده میکنید، پیامواره نوشتاری را بعداز بخش تصویر در آرایه
contentsقرار دهید.
قدم بعدی چیست
این راهنما نحوه بارگذاری فایلهای تصویری و تولید بروندادهای نوشتاری از ورودیهای تصویری را به شما نشان میدهد. برای کسب اطلاعات بیشتر، منابع زیر را ببینید:
- Files API: درباره بارگذاری و مدیریت فایلها برای استفاده با Gemini بیشتر بدانید.
- دستورالعملهای سیستم: دستورالعملهای سیستم به شما امکان میدهد رفتار مدل را براساس نیازهای خاص و موارد استفاده خود هدایت کنید.
- استراتژیهای پیامواره فایل: Gemini API از پیامواره با دادههای نوشتاری، تصویری، صوتی، و ویدیویی پشتیبانی میکند که به آن پیامواره چندوجهی نیز گفته میشود.
- راهنمایی ایمنی: گاهیاوقات مدلهای هوش مصنوعی زایا بروندادهای غیرمنتظرهای تولید میکنند، مثل بروندادهای نادرست، جانبدارانه، یا توهینآمیز. پردازش پسینی و ارزیابی انسانی برای محدود کردن خطر آسیب ناشی از چنین بروندادهایی ضروری است.