ดูใน ai.google.dev | เรียกใช้ใน Google Colab | ดูแหล่งที่มาใน GitHub |
หากต้องการทดลองใช้ Gemini API อย่างรวดเร็ว ให้ทำดังนี้
ใช้คำสั่ง curl
เพื่อเรียกใช้เมธอดใน REST API ตัวอย่างใน
ที่แสดงการเรียกใช้สำหรับเมธอด API แต่ละเมธอด
Colab
ใช้โค้ด Python เพื่อตั้งค่าตัวแปรสภาพแวดล้อมและแสดงรูปภาพ
ไม่จำเป็นต้องใช้ Colab เพื่อทำงานร่วมกับ REST API คุณควรสามารถเรียกใช้
ตัวอย่าง curl
นอก Colab โดยไม่มีการแก้ไข ตราบใดที่คุณมี
ตั้งค่า API_KEY
ตามที่อธิบายในส่วนถัดไป
คุณต้องระบุชื่อโมเดลที่เกี่ยวข้องและ API สำหรับคำสั่ง curl
แต่ละรายการ
ตั้งค่าคีย์ API
หากต้องการใช้ Gemini API คุณจะต้องมีคีย์ API สร้างคีย์ใน Google AI Studio หากยังไม่มี
ใน Colab ให้เพิ่มคีย์ลงในเครื่องมือจัดการความลับใต้ "🔑" ในแผงด้านซ้าย ตั้งชื่อว่า GOOGLE_API_KEY
จากนั้นคุณจะเพิ่มตัวแปรนี้เป็นตัวแปรสภาพแวดล้อมเพื่อส่งคีย์ในการเรียก curl ได้
ที่เทอร์มินัล คุณเรียกใช้ GOOGLE_API_KEY="Your API Key"
ได้
import os
from google.colab import userdata
os.environ['GOOGLE_API_KEY'] = userdata.get('GOOGLE_API_KEY')
Gemini และ API ที่ใช้ Content
การป้อนข้อความเท่านั้น
ใช้เมธอด generateContent
เพื่อสร้างการตอบสนองจากโมเดลที่ได้รับข้อความอินพุต หากอินพุต
มีเฉพาะข้อความ ใช้โมเดล Gemini 1.5 หรือโมเดล Gemini 1.0 Pro
curl https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash:generateContent?key=$GOOGLE_API_KEY \
-H 'Content-Type: application/json' \
-X POST \
-d '{
"contents": [{
"parts":[{
"text": "Write a story about a magic backpack."}]}]}' 2> /dev/null
{ "candidates": [ { "content": { "parts": [ { "text": "In the quaint town of Willow Creek, nestled amidst rolling hills and whispering willows, there lived an ordinary boy named Ethan. Ethan's life took an extraordinary turn the day he stumbled upon an enigmatic backpack hidden in the depths of his attic.\n\nCuriosity ignited within Ethan as he lifted the worn leather straps and unzipped its mysterious contents. Inside lay a shimmering array of vibrant objects and peculiar trinkets. There was a glowing orb that pulsated with an ethereal glow, a feather that seemed to have a life of its own, and a small, enigmatic key.\n\nAs Ethan explored each item, he realized they possessed astonishing abilities. The orb illuminated his path, casting a warm glow in the darkest of nights. The feather granted him the power of flight, allowing him to soar through the skies with newfound freedom. And the key opened a portal to a hidden world, a realm of endless wonder.\n\nArmed with his magical backpack, Ethan embarked on countless adventures. He flew over the towering mountains of Willow Creek, exploring their hidden secrets. He navigated the treacherous depths of the Enchanted Forest, where he encountered mythical creatures and ancient spirits. And he ventured into distant, unknown lands, uncovering lost civilizations and forgotten treasures.\n\nWith each adventure, Ethan's knowledge and abilities grew. He learned to harness the power of his backpack wisely, using its magic to help others and protect the world from evil forces. The backpack became an extension of himself, a symbol of hope and wonder in the face of adversity.\n\nAs the years went by, Ethan's reputation as the boy with the magic backpack spread far and wide. People from all walks of life came to him, seeking his guidance and protection. And Ethan never hesitated to lend a helping hand, using his extraordinary abilities to make the world a better place.\n\nIn the end, the magic backpack became more than just a collection of objects. It was a representation of Ethan's unwavering spirit, his boundless imagination, and his unwavering belief in the power of dreams. And as long as Ethan carried it with him, the magic of Willow Creek would live on, illuminating the darkest corners of the world with hope, wonder, and the limitless possibilities that resided within the heart of a child." } ], "role": "model" }, "finishReason": "STOP", "index": 0, "safetyRatings": [ { "category": "HARM_CATEGORY_SEXUALLY_EXPLICIT", "probability": "NEGLIGIBLE" }, { "category": "HARM_CATEGORY_HATE_SPEECH", "probability": "NEGLIGIBLE" }, { "category": "HARM_CATEGORY_HARASSMENT", "probability": "NEGLIGIBLE" }, { "category": "HARM_CATEGORY_DANGEROUS_CONTENT", "probability": "NEGLIGIBLE" } ] } ], "promptFeedback": { "safetyRatings": [ { "category": "HARM_CATEGORY_SEXUALLY_EXPLICIT", "probability": "NEGLIGIBLE" }, { "category": "HARM_CATEGORY_HATE_SPEECH", "probability": "NEGLIGIBLE" }, { "category": "HARM_CATEGORY_HARASSMENT", "probability": "NEGLIGIBLE" }, { "category": "HARM_CATEGORY_DANGEROUS_CONTENT", "probability": "NEGLIGIBLE" } ] } }
การป้อนข้อความและรูปภาพ
Gemini มีโมเดลต่างๆ ที่จัดการกับการป้อนข้อมูลหลายรูปแบบได้ (รุ่น Gemini 1.5) เพื่อให้คุณสามารถป้อนข้อความได้ทั้ง และรูปภาพ อย่าลืมอ่าน ข้อกำหนดเกี่ยวกับรูปภาพสำหรับพรอมต์
เมื่ออินพุตพรอมต์มีทั้งข้อความและรูปภาพ ให้ใช้โมเดล Gemini 1.5
ข้อมูลโค้ดต่อไปนี้จะช่วยคุณสร้างคำขอและส่งไปยัง REST API
curl -o image.jpg https://storage.googleapis.com/generativeai-downloads/images/scones.jpg
% Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 385k 100 385k 0 0 2053k 0 --:--:-- --:--:-- --:--:-- 2050k
import PIL.Image
img = PIL.Image.open("image.jpg")
img.resize((512, int(img.height*512/img.width)))
echo '{
"contents":[
{
"parts":[
{"text": "What is this picture?"},
{
"inline_data": {
"mime_type":"image/jpeg",
"data": "'$(base64 -w0 image.jpg)'"
}
}
]
}
]
}' > request.json
curl https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash:generateContent?key=${GOOGLE_API_KEY} \
-H 'Content-Type: application/json' \
-d @request.json 2> /dev/null | grep "text"
"text": " The picture shows a table with a white tablecloth. On the table are two cups of coffee, a bowl of blueberries, and a plate of scones. There are also some flowers on the table."
การสนทนาแบบผลัดกันเล่น (แชท)
การใช้ Gemini ช่วยให้คุณสร้างการสนทนาในรูปแบบอิสระในหลายๆ รอบได้
curl https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash:generateContent?key=$GOOGLE_API_KEY \
-H 'Content-Type: application/json' \
-X POST \
-d '{
"contents": [
{"role":"user",
"parts":[{
"text": "Write the first line of a story about a magic backpack."}]},
{"role": "model",
"parts":[{
"text": "In the bustling city of Meadow brook, lived a young girl named Sophie. She was a bright and curious soul with an imaginative mind."}]},
{"role": "user",
"parts":[{
"text": "Can you set it in a quiet village in 1600s France?"}]},
]
}' 2> /dev/null | grep "text"
"text": "In the quaint village of Fleur-de-Lys, nestled amidst the rolling hills of 17th century France, lived a young maiden named Antoinette. She possessed a heart brimming with curiosity and a spirit as vibrant as the wildflowers that bloomed in the meadows.\n\nOne sunny morn, as Antoinette strolled through the cobblestone streets, her gaze fell upon a peculiar sight—a weathered leather backpack resting atop a mossy stone bench. Intrigued, she cautiously approached the bag, her fingers tracing the intricate carvings etched into its surface. As her fingertips grazed the worn leather, a surge of warmth coursed through her body, and the backpack began to emit a soft, ethereal glow."
การกำหนดค่า
ทุกๆ พรอมต์ที่คุณส่งไปยังโมเดลจะมีค่าพารามิเตอร์ที่ควบคุมวิธีสร้างการตอบกลับของโมเดล โมเดลนี้สามารถสร้างผลลัพธ์ที่แตกต่างกันสำหรับค่าพารามิเตอร์ที่แตกต่างกัน ดูข้อมูลเพิ่มเติมเกี่ยวกับพารามิเตอร์โมเดล
นอกจากนี้คุณยังใช้การตั้งค่าความปลอดภัยเพื่อปรับโอกาสที่จะได้รับคำตอบที่อาจถือว่าเป็นอันตรายได้อีกด้วย โดยค่าเริ่มต้น การตั้งค่าความปลอดภัยจะบล็อกเนื้อหาที่มีความเป็นไปได้ปานกลางและ/หรือสูงที่จะเป็นเนื้อหาที่ไม่ปลอดภัยในทุกมิติข้อมูล ดูข้อมูลเพิ่มเติมเกี่ยวกับการตั้งค่าความปลอดภัย
ตัวอย่างต่อไปนี้ระบุค่าสำหรับพารามิเตอร์ทั้งหมดของ
เมธอด generateContent
curl https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash:generateContent?key=$GOOGLE_API_KEY \
-H 'Content-Type: application/json' \
-X POST \
-d '{
"contents": [{
"parts":[
{"text": "Write a story about a magic backpack."}
]
}],
"safetySettings": [
{
"category": "HARM_CATEGORY_DANGEROUS_CONTENT",
"threshold": "BLOCK_ONLY_HIGH"
}
],
"generationConfig": {
"stopSequences": [
"Title"
],
"temperature": 1.0,
"maxOutputTokens": 800,
"topP": 0.8,
"topK": 10
}
}' 2> /dev/null | grep "text"
"text": "Once upon a time, in a small town nestled at the foot of a majestic mountain range, lived a young girl named Lily. Lily was a bright and curious child who loved to explore the world around her. One day, while playing in the forest near her home, she stumbled upon a hidden cave. Intrigued, she stepped inside, and to her amazement, she discovered a dusty old backpack lying in a corner.\n\nCuriosity piqued, Lily reached out and picked up the backpack. As soon as her fingers brushed against the worn leather, she felt a strange tingling sensation coursing through her body. Suddenly, the backpack began to glow, emitting a soft, ethereal light that filled the cave.\n\nWith wide-eyed wonder, Lily opened the backpack to find it filled with an assortment of magical objects. There was a compass that always pointed to the nearest adventure, a magnifying glass that could reveal hidden secrets, a telescope that allowed her to see distant lands, and a book that contained the knowledge of the universe.\n\nOverjoyed with her discovery, Lily took the magic backpack home and began using its contents to explore the world in ways she had never imagined. She followed the compass to discover hidden treasures, used the magnifying glass to uncover the secrets of nature, gazed through the telescope to witness the wonders of the cosmos, and delved into the book to learn about the mysteries of the universe.\n\nAs Lily's adventures continued, she realized that the magic backpack was more than just a collection of enchanted items. It was a symbol of her own limitless potential and the power of her imagination. It taught her that with curiosity, courage, and a touch of magic, anything was possible.\n\nNews of Lily's magical backpack spread throughout the town, and soon, children from all around came to her, eager to learn about its wonders. Lily welcomed them with open arms, sharing her stories and inspiring them to embark on their own adventures.\n\nAnd so, the magic backpack became a beacon of hope and wonder, reminding everyone that the world is full of hidden treasures waiting to be discovered, if only one has the courage to step into the unknown."
สตรีมการสร้างเนื้อหา
เมธอด generateContent
จะแสดงการตอบกลับหลังจากเสร็จสิ้นกระบวนการสร้างทั้งหมด คุณโต้ตอบได้เร็วขึ้นโดยไม่ต้องรอผลลัพธ์ทั้งหมด แต่ใช้ streamGenerateContent
เพื่อแสดงผลลัพธ์บางส่วนแทน
!curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash:streamGenerateContent?alt=sse&key=${GOOGLE_API_KEY}" \
-H 'Content-Type: application/json' \
--no-buffer \
-d '{ "contents":[{"parts":[{"text": "Write long a story about a magic backpack."}]}]}' \
2> /dev/null
data: {"candidates": [{"content": {"parts": [{"text": "In the quaint little town of Willow Creek, nestled among rolling hills and whispering willows"}],"role": "model"},"finishReason": "STOP","index": 0,"safetyRatings": [{"category": "HARM_CATEGORY_SEXUALLY_EXPLICIT","probability": "NEGLIGIBLE"},{"category": "HARM_CATEGORY_HATE_SPEECH","probability": "NEGLIGIBLE"},{"category": "HARM_CATEGORY_HARASSMENT","probability": "NEGLIGIBLE"},{"category": "HARM_CATEGORY_DANGEROUS_CONTENT","probability": "NEGLIGIBLE"}]}],"promptFeedback": {"safetyRatings": [{"category": "HARM_CATEGORY_SEXUALLY_EXPLICIT","probability": "NEGLIGIBLE"},{"category": "HARM_CATEGORY_HATE_SPEECH","probability": "NEGLIGIBLE"},{"category": "HARM_CATEGORY_HARASSMENT","probability": "NEGLIGIBLE"},{"category": "HARM_CATEGORY_DANGEROUS_CONTENT","probability": "NEGLIGIBLE"}]} } data: {"candidates": [{"content": {"parts": [{"text": ", there existed an extraordinary backpack that possessed an astonishing secret. Its unassuming canvas exterior and worn leather straps held a hidden realm brimming with wonder and endless possibilities."}],"role": "model"},"finishReason": "STOP","index": 0,"safetyRatings": [{"category": "HARM_CATEGORY_SEXUALLY_EXPLICIT","probability": "NEGLIGIBLE"},{"category": "HARM_CATEGORY_HATE_SPEECH","probability": "NEGLIGIBLE"},{"category": "HARM_CATEGORY_HARASSMENT","probability": "NEGLIGIBLE"},{"category": "HARM_CATEGORY_DANGEROUS_CONTENT","probability": "NEGLIGIBLE"}]}]} data: {"candidates": [{"content": {"parts": [{"text": "\n\nYoung Oliver, a curious and imaginative boy, stumbled upon this magical backpack in the dusty attic of his grandmother's house. Intrigued by its enigmatic aura, he unzipped it cautiously, revealing a seemingly ordinary interior. But as his fingers brushed against the lining, an ethereal glow emanated from within.\n\n"}],"role": "model"},"finishReason": "STOP","index": 0,"safetyRatings": [{"category": "HARM_CATEGORY_SEXUALLY_EXPLICIT","probability": "NEGLIGIBLE"},{"category": "HARM_CATEGORY_HATE_SPEECH","probability": "NEGLIGIBLE"},{"category": "HARM_CATEGORY_HARASSMENT","probability": "NEGLIGIBLE"},{"category": "HARM_CATEGORY_DANGEROUS_CONTENT","probability": "NEGLIGIBLE"}]}]} data: {"candidates": [{"content": {"parts": [{"text": "With a gasp of surprise, Oliver watched as the backpack transformed before his very eyes. Its fabric shimmered and flowed like liquid silver, morphing into a portal that connected him to a hidden dimension. Step by step, he ventured into this enchanted realm, his heart pounding with a mixture of trepidation and exhilaration.\n\nThe backpack's interior was a vast and wondrous labyrinth filled with towering bookshelves, bubbling potions, and ethereal artifacts. Each turn offered a new discovery: a self-playing piano, a talking mirror that whispered ancient wisdom, and a compass that pointed to the furthest reaches of the imagination.\n\nOliver soon realized"}],"role": "model"},"finishReason": "STOP","index": 0,"safetyRatings": [{"category": "HARM_CATEGORY_SEXUALLY_EXPLICIT","probability": "NEGLIGIBLE"},{"category": "HARM_CATEGORY_HATE_SPEECH","probability": "NEGLIGIBLE"},{"category": "HARM_CATEGORY_HARASSMENT","probability": "NEGLIGIBLE"},{"category": "HARM_CATEGORY_DANGEROUS_CONTENT","probability": "NEGLIGIBLE"}]}]} data: {"candidates": [{"content": {"parts": [{"text": " that this backpack was no mere container but a sentient being, capable of aiding him in his quests and expanding his horizons. It granted him the gift of tongues, allowing him to speak with animals and creatures from distant lands. It gifted him a quill that wrote stories that danced off the page, bringing his wildest dreams to life.\n\nTogether, Oliver and the backpack embarked on extraordinary adventures. They soared through the skies on the back of a majestic griffon, traversed treacherous terrains with the aid of a shape-shifting fox, and solved mysteries that had long baffled the wisest minds in Willow Creek.\n\nAs the days turned into weeks, Oliver's imagination flourished beyond measure. He painted vibrant landscapes with words, composed symphonies that echoed through the hidden realm, and invented gadgets that defied the laws of physics. The backpack became an extension of his boundless creativity, nurturing his wonder and fueling his aspirations.\n\nNews of Oliver's extraordinary backpack spread throughout the town and beyond. People flocked from far and wide to witness its marvels. Scholars sought its wisdom, artists sought its inspiration, and children dreamed of experiencing its boundless adventures.\n\nHowever, not all who approached the backpack with pure intentions. One fateful day, a greedy sorcerer named Maldred attempted to seize its power for himself. But"}],"role": "model"},"finishReason": "STOP","index": 0,"safetyRatings": [{"category": "HARM_CATEGORY_SEXUALLY_EXPLICIT","probability": "NEGLIGIBLE"},{"category": "HARM_CATEGORY_HATE_SPEECH","probability": "NEGLIGIBLE"},{"category": "HARM_CATEGORY_HARASSMENT","probability": "NEGLIGIBLE"},{"category": "HARM_CATEGORY_DANGEROUS_CONTENT","probability": "NEGLIGIBLE"}]}]} data: {"candidates": [{"content": {"parts": [{"text": " the backpack, sensing his malevolent nature, resisted his grasp and summoned a legion of fantastical creatures to its defense.\n\nIn a fierce battle that shook the very fabric of the hidden realm, Oliver and the backpack allied with brave heroes and wise wizards to defeat Maldred and his wicked forces. The town of Willow Creek was forever grateful, and the backpack became a symbol of hope and imagination for all who knew of its existence.\n\nAs the years passed, Oliver grew into a wise and compassionate leader, using the magic backpack to spread joy, inspire creativity, and unlock the potential of those around him. The hidden realm within its depths became a sanctuary for dreamers, inventors, and anyone who dared to embrace the wonders of the unknown.\n\nAnd so, the tale of the magic backpack was passed down through generations, a timeless testament to the power of imagination and the boundless possibilities that lie when wonder and curiosity ignite the human spirit."}],"role": "model"},"finishReason": "STOP","index": 0,"safetyRatings": [{"category": "HARM_CATEGORY_SEXUALLY_EXPLICIT","probability": "NEGLIGIBLE"},{"category": "HARM_CATEGORY_HATE_SPEECH","probability": "NEGLIGIBLE"},{"category": "HARM_CATEGORY_HARASSMENT","probability": "NEGLIGIBLE"},{"category": "HARM_CATEGORY_DANGEROUS_CONTENT","probability": "NEGLIGIBLE"}]}]}
นับโทเค็น
เมื่อใช้พรอมต์ที่ยาว การนับโทเค็นก่อนส่งเนื้อหาไปยังโมเดลอาจเป็นประโยชน์
curl https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash:countTokens?key=$GOOGLE_API_KEY \
-H 'Content-Type: application/json' \
-X POST \
-d '{
"contents": [{
"parts":[{
"text": "Write a story about a magic backpack."}]}]}' > response.json
% Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 100 127 0 23 100 104 105 477 --:--:-- --:--:-- --:--:-- 585
cat response.json
{ "totalTokens": 8 }
การฝัง
การฝังเป็นเทคนิคที่ใช้ในการแสดงข้อมูลเป็นรายการของจำนวนทศนิยมในอาร์เรย์ Gemini ช่วยให้คุณสามารถแสดงข้อความ (คำ ประโยค และบล็อกข้อความ) ในรูปแบบเวกเตอร์ ช่วยให้เปรียบเทียบและความแตกต่างของการฝังได้ง่ายขึ้น ตัวอย่างเช่น ข้อความ 2 ข้อความที่มีเรื่องหรือความรู้สึกคล้ายกันควรมีการฝังที่คล้ายกัน ซึ่งสามารถระบุได้ผ่านเทคนิคการเปรียบเทียบทางคณิตศาสตร์ เช่น ความคล้ายคลึงของโคไซน์
ใช้โมเดล embedding-001
กับ embedContents
หรือ batchEmbedContents
:
curl https://generativelanguage.googleapis.com/v1beta/models/embedding-001:embedContent?key=$GOOGLE_API_KEY \
-H 'Content-Type: application/json' \
-X POST \
-d '{
"model": "models/embedding-001",
"content": {
"parts":[{
"text": "Write a story about a magic backpack."}]} }' 2> /dev/null | head
{ "embedding": { "values": [ 0.008624583, -0.030451821, -0.042496547, -0.029230341, 0.05486475, 0.006694871, 0.004025645,
curl https://generativelanguage.googleapis.com/v1beta/models/embedding-001:batchEmbedContents?key=$GOOGLE_API_KEY \
-H 'Content-Type: application/json' \
-X POST \
-d '{
"requests": [{
"model": "models/embedding-001",
"content": {
"parts":[{
"text": "Write a story about a magic backpack."}]} }]}' 2> /dev/null | head
{ "embeddings": [ { "values": [ 0.008624583, -0.030451821, -0.042496547, -0.029230341, 0.05486475, 0.006694871,
ข้อมูลรุ่น
รับโมเดล
หากคุณGET
URL ของโมเดล API จะใช้เมธอด get
เพื่อแสดงข้อมูลเกี่ยวกับโมเดลนั้น เช่น เวอร์ชัน ชื่อที่แสดง ขีดจำกัดของโทเค็นอินพุต ฯลฯ
curl https://generativelanguage.googleapis.com/v1beta/models/gemini-pro?key=$GOOGLE_API_KEY
{ "name": "models/gemini-pro", "version": "001", "displayName": "Gemini Pro", "description": "The best model for scaling across a wide range of tasks", "inputTokenLimit": 30720, "outputTokenLimit": 2048, "supportedGenerationMethods": [ "generateContent", "countTokens" ], "temperature": 0.9, "topP": 1, "topK": 1 }
แสดงรายการโมเดล
หากคุณGET
ไดเรกทอรี models
ระบบจะใช้เมธอด list
เพื่อแสดงโมเดลทั้งหมดที่มีผ่าน API ซึ่งรวมถึงโมเดลครอบครัว Gemini และ PaLM
curl https://generativelanguage.googleapis.com/v1beta/models?key=$GOOGLE_API_KEY
{ "models": [ { "name": "models/chat-bison-001", "version": "001", "displayName": "Chat Bison", "description": "Chat-optimized generative language model.", "inputTokenLimit": 4096, "outputTokenLimit": 1024, "supportedGenerationMethods": [ "generateMessage", "countMessageTokens" ], "temperature": 0.25, "topP": 0.95, "topK": 40 }, { "name": "models/text-bison-001", "version": "001", "displayName": "Text Bison", "description": "Model targeted for text generation.", "inputTokenLimit": 8196, "outputTokenLimit": 1024, "supportedGenerationMethods": [ "generateText", "countTextTokens", "createTunedTextModel" ], "temperature": 0.7, "topP": 0.95, "topK": 40 }, { "name": "models/embedding-gecko-001", "version": "001", "displayName": "Embedding Gecko", "description": "Obtain a distributed representation of a text.", "inputTokenLimit": 1024, "outputTokenLimit": 1, "supportedGenerationMethods": [ "embedText", "countTextTokens" ] }, { "name": "models/embedding-gecko-002", "version": "002", "displayName": "Embedding Gecko 002", "description": "Obtain a distributed representation of a text.", "inputTokenLimit": 2048, "outputTokenLimit": 1, "supportedGenerationMethods": [ "embedText", "countTextTokens" ] }, { "name": "models/gemini-pro", "version": "001", "displayName": "Gemini Pro", "description": "The best model for scaling across a wide range of tasks", "inputTokenLimit": 30720, "outputTokenLimit": 2048, "supportedGenerationMethods": [ "generateContent", "countTokens" ], "temperature": 0.9, "topP": 1, "topK": 1 }, { "name": "models/gemini-pro", "version": "001", "displayName": "Gemini 1.0 Pro", "description": "The best model for scaling across a wide range of tasks", "inputTokenLimit": 12288, "outputTokenLimit": 4096, "supportedGenerationMethods": [ "generateContent", "countTokens" ], "temperature": 0.4, "topP": 1, "topK": 32 }, { "name": "models/gemini-ultra", "version": "001", "displayName": "Gemini Ultra", "description": "The most capable model for highly complex tasks", "inputTokenLimit": 30720, "outputTokenLimit": 2048, "supportedGenerationMethods": [ "generateContent", "countTokens" ], "temperature": 0.9, "topP": 1, "topK": 32 }, { "name": "models/embedding-001", "version": "001", "displayName": "Embedding 001", "description": "Obtain a distributed representation of a text.", "inputTokenLimit": 2048, "outputTokenLimit": 1, "supportedGenerationMethods": [ "embedContent", "countTextTokens" ] }, { "name": "models/aqa", "version": "001", "displayName": "Model that performs Attributed Question Answering.", "description": "Model trained to return answers to questions that are grounded in provided sources, along with estimating answerable probability.", "inputTokenLimit": 7168, "outputTokenLimit": 1024, "supportedGenerationMethods": [ "generateAnswer" ], "temperature": 0.2, "topP": 1, "topK": 40 } ] }