Ky udhëzues shpjegon mënyrat e ndryshme se si mund të përfshini skedarë mediatikë si imazhe, audio, video dhe dokumente kur bëni kërkesa te Gemini API. Metodat e reja mbështeten në të gjitha pikat fundore të Gemini API, duke përfshirë Batch, Interactions dhe Live API. Zgjedhja e metodës së duhur varet nga madhësia e skedarit tuaj, vendi ku ruhen të dhënat tuaja dhe sa shpesh planifikoni ta përdorni skedarin.
Mënyra më e thjeshtë për të përfshirë një skedar si të dhënë hyrëse është të lexoni një skedar lokal dhe ta përfshini atë në një njoftim. Shembulli i mëposhtëm tregon se si të lexoni një skedar lokal PDF. PDF-të janë të kufizuara në 50MB për këtë metodë. Shihni tabelën krahasuese të metodës së hyrjes për një listë të plotë të llojeve dhe kufizimeve të hyrjes së skedarëve.
Python
from google import genai
import pathlib
import base64
client = genai.Client()
filepath = pathlib.Path('my_local_file.pdf')
prompt = "Summarize this document"
interaction = client.interactions.create(
model="gemini-3.7-flash",
input=[
{"type": "text", "text": prompt},
{"type": "document", "data": base64.b64encode(filepath.read_bytes()).decode('utf-8'), "mime_type": "application/pdf"}
]
)
print(interaction.output_text)
JavaScript
import { GoogleGenAI } from "@google/genai";
import * as fs from 'node:fs';
const client = new GoogleGenAI({});
const prompt = "Summarize this document";
async function main() {
const filePath = 'my_local_file.pdf';
const interaction = await client.interactions.create({
model: "gemini-3.7-flash",
input: [
{ type: "text", text: prompt },
{
type: "document",
data: fs.readFileSync(filePath).toString("base64"),
mime_type: "application/pdf"
}
]
});
console.log(interaction.output_text);
}
main();
PUSHTIM
# Encode the local file to base64
B64_CONTENT=$(base64 -w 0 my_local_file.pdf)
curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H 'Content-Type: application/json' \
-d '{
"model": "gemini-3.7-flash",
"input": [
{"type": "text", "text": "Summarize this document"},
{
"type": "document",
"data": "'${B64_CONTENT}'",
"mime_type": "application/pdf"
}
]
}'
Krahasimi i metodës së hyrjes
Tabela e mëposhtme krahason secilën metodë të futjes me kufizimet e skedarëve dhe rastet më të mira të përdorimit. Vini re se kufiri i madhësisë së skedarit mund të ndryshojë në varësi të llojit të skedarit dhe modelit ose tokenizuesit të përdorur për të përpunuar skedarin.
| Metoda | Më e mira për | Madhësia maksimale e skedarit | Këmbëngulje |
|---|---|---|---|
| Të dhëna të integruara | Testim i shpejtë, skedarë të vegjël, aplikacione në kohë reale. | 100 MB për kërkesë ose ngarkesë ( 50 MB për PDF-të ) | Asnjë (dërgohet me çdo kërkesë) |
| Ngarkimi i API-t të skedarëve | Skedarë të mëdhenj, skedarë të përdorur shumë herë. | 2 GB për skedar, deri në 20 GB për projekt | 48 Orë |
| Regjistrimi i URI-t GCS të API-t të skedarit | Skedarë të mëdhenj tashmë në Google Cloud Storage, skedarë të përdorur shumë herë. | 2 GB për skedar, pa kufizime të përgjithshme të ruajtjes | Asnjë (merret sipas kërkesës). Regjistrimi i vetëm mund të japë akses deri në 30 ditë. |
| URL-të e jashtme | Të dhëna publike ose të dhëna në "cloud buckets" (AWS, Azure, GCS) pa i ringarkuar. | 100 MB për kërkesë/ngarkesë | Asnjë (e marrë sipas kërkesës) |
Të dhëna të integruara
Për skedarë më të vegjël (nën 100MB ose 50MB për PDF), mund t'i kaloni të dhënat direkt në ngarkesën e kërkesës. Kjo është metoda më e thjeshtë për teste të shpejta ose aplikacione që trajtojnë të dhëna kalimtare në kohë reale. Mund të ofroni të dhëna si vargje të koduara me base64 ose duke lexuar skedarë lokalë direkt.
Për një shembull të leximit nga një skedar lokal, shihni shembullin në fillim të kësaj faqeje.
Merrni nga një URL
Gjithashtu mund të merrni një skedar nga një URL, ta konvertoni atë në bajt dhe ta përfshini atë në të dhënat hyrëse.
Python
from google import genai
import httpx
client = genai.Client()
doc_url = "https://discovery.ucl.ac.uk/id/eprint/10089234/1/343019_3_art_0_py4t4l_convrt.pdf"
doc_data = httpx.get(doc_url).content
prompt = "Summarize this document"
interaction = client.interactions.create(
model="gemini-3.7-flash",
input=[
{"type": "document", "data": base64.b64encode(doc_data).decode('utf-8'), "mime_type": "application/pdf"},
{"type": "text", "text": prompt}
]
)
print(interaction.output_text)
JavaScript
import { GoogleGenAI } from "@google/genai";
const client = new GoogleGenAI({});
const docUrl = 'https://discovery.ucl.ac.uk/id/eprint/10089234/1/343019_3_art_0_py4t4l_convrt.pdf'