1. ข้อมูลเบื้องต้น 👋

ในโค้ดแล็บนี้ คุณจะได้เรียนรู้ทุกเรื่องที่จำเป็นในฐานะนักพัฒนาแอปเกี่ยวกับระบบนิเวศของ Gemini โดยเฉพาะอย่างยิ่ง คุณจะได้เรียนรู้เกี่ยวกับโมเดล Gemini ต่างๆ เครื่องมือต่างๆ ที่ขับเคลื่อนโดย Gemini และ SDK ของ Gen AI ของ Google เพื่อผสานรวมกับ Gemini นอกจากนี้ คุณยังจะได้สำรวจฟีเจอร์ต่างๆ ของ Gemini เช่น บริบทแบบยาว โหมดการคิด ความเข้าใจเชิงพื้นที่, Live API, เอาต์พุตรูปภาพและเสียงดั้งเดิม และอื่นๆ
เมื่อสิ้นสุดโค้ดแล็บนี้ คุณควรมีความเข้าใจที่ชัดเจนเกี่ยวกับระบบนิเวศของ Gemini
💡สิ่งที่คุณจะได้เรียนรู้
- โมเดล Gemini ที่แตกต่างกัน
- เครื่องมือที่ขับเคลื่อนโดยโมเดล Gemini
- วิธีผสานรวมกับ Gemini โดยใช้ Google Gen AI SDK
- หน้าต่างบริบทแบบยาวของ Gemini
- โหมดการคิดของ Gemini
- เครื่องมือในตัวต่างๆ เช่น Google Search, Google Maps
- วิธีโต้ตอบกับเอเจนต์การวิจัยด้วย Interactions API
- การสร้างรูปภาพและการอ่านออกเสียงข้อความ
- การทำความเข้าใจเชิงพื้นที่ของ Gemini
- Live API สำหรับการโต้ตอบด้วยเสียงและวิดีโอแบบเรียลไทม์
⚠️ สิ่งที่คุณต้องมี
- คีย์ API สำหรับตัวอย่าง Google AI Studio
- โปรเจ็กต์ Google Cloud ที่เปิดใช้การเรียกเก็บเงินสำหรับตัวอย่าง Vertex AI
- สภาพแวดล้อมการพัฒนาในเครื่องหรือ Cloud Shell Editor ใน Google Cloud
2. ครอบครัว Gemini 🫂
Gemini คือโมเดล AI ของ Google ที่ทำให้ทุกไอเดียเป็นจริงได้ โมเดลนี้เหมาะอย่างยิ่งสำหรับการทำความเข้าใจข้อมูลหลายรูปแบบ การเขียนโค้ดแบบเป็น Agent และการเขียนโค้ดที่สร้างบรรยากาศ ซึ่งทั้งหมดนี้สร้างขึ้นบนพื้นฐานของการให้เหตุผลที่ล้ำสมัย คุณดูวิดีโอนี้เพื่อดูภาพรวมแบบเร็วๆ ของโมเดล Gemini ได้
Gemini ไม่ใช่แค่โมเดล นอกจากนี้ยังเป็นแบรนด์ร่มที่ใช้ในผลิตภัณฑ์ของ Google ด้วย
ที่ใช้โมเดล Gemini ผลิตภัณฑ์ Gemini มีตั้งแต่แอป Gemini และ NotebookLM ที่มุ่งเน้นผู้บริโภค ไปจนถึง AI Studio ที่มุ่งเน้นนักพัฒนาซอฟต์แวร์ และ Vertex AI ของ Google Cloud ที่มุ่งเน้นองค์กร นอกจากนี้ ยังมีเครื่องมือสำหรับนักพัฒนาแอป เช่น Gemini CLI และ Google Antigravity ที่ทำงานด้วย Gemini

3. เครื่องมือที่ขับเคลื่อนโดย Gemini 🧰
มาดูเครื่องมือที่ขับเคลื่อนโดย Gemini กันคร่าวๆ
แอป Gemini 💬
แอป Gemini ( gemini.google.com) เป็นแอปพลิเคชันสำหรับผู้บริโภคที่ใช้การแชท ซึ่งเป็นวิธีที่ง่ายที่สุดในการโต้ตอบกับ Gemini โดยมีเครื่องมือสำหรับ Deep Research, การสร้างรูปภาพ, วิดีโอ, เพลง และอื่นๆ นอกจากนี้ ยังมีโมเดล Gemini ล่าสุดในเวอร์ชันต่างๆ (รวดเร็ว, คิด, Pro) แอป Gemini เหมาะอย่างยิ่งสำหรับการใช้งานในชีวิตประจำวัน

NotebookLM 📓
NotebookLM ( notebooklm.google.com) เป็นพาร์ทเนอร์ด้านการวิจัยที่ทำงานด้วยระบบ AI อัปโหลด PDF, เว็บไซต์, วิดีโอ YouTube, ไฟล์เสียง, Google เอกสาร, Google สไลด์ และอื่นๆ แล้ว NotebookLM จะสรุปและสร้างความเชื่อมโยงที่น่าสนใจระหว่างหัวข้อต่างๆ ให้ ซึ่งทั้งหมดนี้ทำงานโดยความสามารถด้านความเข้าใจหลายรูปแบบของ Gemini เวอร์ชันล่าสุด นอกจากนี้ยังสร้างภาพรวมแบบเสียง ภาพรวมแบบวิดีโอ อินโฟกราฟิก และอื่นๆ ที่น่าสนใจและดึงดูดใจจากแหล่งข้อมูลที่คุณอัปโหลด

Google AI Studio 🎨
Google AI Studio ( ai.dev) เป็นวิธีที่เร็วที่สุดในการเริ่มต้นสร้างด้วย Gemini แผงสนามเด็กเล่นใน Google AI Studio ช่วยให้คุณทดลองใช้โมเดลต่างๆ เพื่อสร้างข้อความ รูปภาพ วิดีโอ รวมถึงลองใช้เสียงและวิดีโอแบบเรียลไทม์ด้วย Gemini Live API แผงสร้างใน Google AI Studio ช่วยให้คุณเขียนโค้ดเว็บแอปพลิเคชันและทำให้ใช้งานได้ใน Cloud Run บน Google Cloud รวมถึงพุชโค้ดไปยัง GitHub

Vertex AI Studio ☁️
Vertex AI เป็นแพลตฟอร์มการพัฒนา AI แบบรวมที่มีการจัดการเต็มรูปแบบสำหรับการสร้างและใช้ Generative AI ใน Google Cloud Vertex AI Studio ( console.cloud.google.com/vertex-ai/studio) ช่วยให้คุณทดสอบ ปรับแต่ง และติดตั้งใช้งานแอปพลิเคชัน Generative AI ที่พร้อมใช้งานในองค์กร

Gemini CLI ⚙️
Gemini CLI ( geminicli.com) เป็น AI Agent แบบโอเพนซอร์สที่นำความสามารถของ Gemini มาไว้ในเทอร์มินัลของคุณโดยตรง โดยออกแบบมาให้เป็นเครื่องมือที่ทรงพลัง ขยายได้ และใช้เทอร์มินัลเป็นหลักสำหรับนักพัฒนาซอฟต์แวร์ วิศวกร SRE และอื่นๆ Gemini CLI จะผสานรวมกับสภาพแวดล้อมในเครื่องของคุณ โดยสามารถอ่านและแก้ไขไฟล์ เรียกใช้คำสั่งเชลล์ และค้นหาเว็บได้ทั้งหมดในขณะที่ยังคงบริบทของโปรเจ็กต์ไว้

Google Antigravity 🚀
Google Antigravity ( antigravity.google) เป็นแพลตฟอร์มการพัฒนาด้าน Agentic AI ที่พัฒนา IDE ไปสู่ยุค Agent-First Antigravity ช่วยให้นักพัฒนาแอปทำงานในระดับที่สูงขึ้นและมุ่งเน้นงานมากขึ้น โดยจัดการ Agent ในพื้นที่ทํางานต่างๆ ขณะที่ยังคงประสบการณ์การใช้งาน IDE ของ AI ที่คุ้นเคยไว้ที่แกนหลัก
Antigravity จะแยก Agent ออกเป็นพื้นผิวของตัวเองและจัดหาเครื่องมือที่จำเป็นต่อการทำงานอัตโนมัติในเครื่องมือแก้ไข เทอร์มินัล และเบราว์เซอร์ โดยเน้นการยืนยันและการสื่อสารระดับสูงผ่านงานและอาร์ติแฟกต์ ความสามารถนี้ช่วยให้ตัวแทนวางแผนและดำเนินการกับงานซอฟต์แวร์ที่ซับซ้อนแบบครบวงจรได้มากขึ้น ซึ่งจะช่วยยกระดับการพัฒนาทุกด้าน ตั้งแต่การสร้างฟีเจอร์ การทำซ้ำ UI และการแก้ไขข้อบกพร่อง ไปจนถึงการวิจัยและการสร้างรายงาน

คุณสามารถดาวน์โหลดและลองใช้เครื่องมือเหล่านี้ได้ ต่อไปนี้เป็นคำแนะนำทั่วไปเกี่ยวกับเครื่องมือที่ควรใช้ในแต่ละกรณี
- หากเพิ่งเริ่มต้น คุณอาจใช้แอป Gemini เพื่อถามคำถามหรือสร้างโค้ดพื้นฐาน
- หากคุณกำลังเขียนโค้ดเว็บแอปพลิเคชัน Google AI Studio น่าจะเป็นเครื่องมือที่คุณเลือก
- หากต้องการสร้างแอปพลิเคชันที่ซับซ้อนโดยใช้บริบทจากสภาพแวดล้อมการพัฒนาในเครื่อง คุณจะต้องเลือก Gemini CLI หรือ Google Antigravity
- หากต้องการติดตั้งใช้งานหรือใช้ Google Cloud อยู่แล้ว และต้องการการสนับสนุนและฟีเจอร์ระดับองค์กร คุณควรเลือก Vertex AI และ Vertex AI Studio
แน่นอนว่าคุณสามารถใช้เครื่องมือเหล่านี้ร่วมกันได้ ตัวอย่างเช่น เริ่มต้นด้วยการเขียนโค้ดด้วย Vibe ใน AI Studio เพื่อพุชไปยัง GitHub จากนั้นใช้ Antigravity เพื่อเขียนโค้ดต่อและทำให้ใช้งานได้ใน Google Cloud
4. โมเดลต่างๆ ของ Gemini 🧠
โมเดล Gemini ได้รับการปรับปรุงอย่างต่อเนื่องโดยจะมีเวอร์ชันใหม่ทุกๆ 2-3 เดือน ปัจจุบัน (กุมภาพันธ์ 2026) โมเดลแนะนำใน Vertex AI บน Google Cloud มีดังนี้

นอกจากนี้ยังมีโมเดล Gemini ที่พร้อมให้บริการแก่บุคคลทั่วไป, โมเดล Gemini เวอร์ชันตัวอย่าง, โมเดล Gemma แบบโอเพนซอร์ส, โมเดลการฝัง, โมเดล Imagegen, โมเดล Veo และอีกมากมาย
โปรดดูหน้าเอกสารประกอบของโมเดลของ Google เพื่อสำรวจโมเดลหลักๆ ที่มีใน Vertex AI สำหรับกรณีการใช้งานต่างๆ
5. SDK สำหรับ Gen AI ของ Google 📦
หากต้องการผสานรวม Gemini กับแอปพลิเคชัน คุณสามารถใช้ Google Gen AI SDK ได้
ดังที่เราได้กล่าวไปก่อนหน้านี้ คุณสามารถเข้าถึงโมเดล Gemini ผ่าน Google AI Studio หรือ Vertex AI Studio Google Gen AI SDK มีอินเทอร์เฟซแบบรวมสำหรับโมเดล Gemini ผ่านทั้ง Google AI API และ Google Cloud API โดยมีข้อยกเว้นบางประการ โค้ดที่ทำงานบนแพลตฟอร์มหนึ่งจะทำงานบนทั้ง 2 แพลตฟอร์ม

ปัจจุบัน SDK สำหรับ Gen AI ของ Google รองรับ Python, Go, Node, Java และ C#
ตัวอย่างเช่น คุณจะพูดคุยกับ Gemini ใน Google AI ใน Python ได้ดังนี้
client = genai.Client(
api_key=your-gemini-api-key)
response = client.models.generate_content(
model="gemini-3-flash-preview",
contents="Why is the sky blue?")
หากต้องการทำเช่นเดียวกันกับ Gemini ใน Vertex AI คุณเพียงแค่ต้องเปลี่ยนการเริ่มต้นไคลเอ็นต์ ส่วนที่เหลือจะเหมือนกัน
client = genai.Client(
vertexai=True,
project=your-google-cloud-project,
location="us-central1")
response = client.models.generate_content(
model="gemini-3-flash-preview",
contents="Why is the sky blue?")
หากต้องการเรียกใช้ตัวอย่างเหล่านี้ด้วยตนเอง ให้เรียกใช้ main.py ใน github.com/meteatamel/genai-samples/tree/main/vertexai/gemini2/hello-world
6. Interactions API 🔄
Interactions API (เบต้า) เป็นอินเทอร์เฟซแบบรวมใหม่สำหรับการโต้ตอบกับโมเดลและเอเจนต์ของ Gemini โดยเป็นทางเลือกที่ได้รับการปรับปรุงแทน generateContent API ซึ่งช่วยลดความซับซ้อนในการจัดการสถานะ การจัดระเบียบเครื่องมือ และงานที่ใช้เวลานาน
วิธีโต้ตอบพื้นฐานกับ API ใหม่มีดังนี้
interaction = client.interactions.create(
model="gemini-3-flash-preview",
input="Tell me a short joke."
)
print(interaction.outputs[-1].text)
คุณสามารถสนทนาแบบมีสถานะได้โดยส่งรหัสการโต้ตอบจากการโต้ตอบก่อนหน้า
interaction1 = client.interactions.create(
model="gemini-3-flash-preview",
input="Hi, my name is Phil."
)
print(f"Model: {interaction1.outputs[-1].text}")
interaction2 = client.interactions.create(
model="gemini-3-flash-preview",
input="What is my name?",
previous_interaction_id=interaction1.id
)
print(f"Model: {interaction2.outputs[-1].text}")
Interactions API ออกแบบมาเพื่อสร้างและโต้ตอบกับเอเจนต์ รวมถึงรองรับการเรียกใช้ฟังก์ชัน เครื่องมือบิวท์อิน เอาต์พุตที่มีโครงสร้าง และ Model Context Protocol (MCP) หากต้องการดูวิธีใช้กับเอเจนต์ Deep Research โปรดดูขั้นตอนเอเจนต์ 🤖 ด้านล่าง
หากต้องการเรียกใช้ตัวอย่างเหล่านี้ด้วยตนเอง ให้เรียกใช้ main.py ใน github.com/meteatamel/genai-samples/blob/main/vertexai/interactions-api
7. หน้าต่างบริบทแบบยาว 🪟
โมเดล Gemini หลายรุ่นมีหน้าต่างบริบทขนาดใหญ่ถึง 1 ล้านโทเค็นขึ้นไป ในอดีต โมเดลภาษาขนาดใหญ่ (LLM) ถูกจำกัดอย่างมากด้วยปริมาณข้อความ (หรือโทเค็น) ที่ส่งไปยังโมเดลได้ในครั้งเดียว หน้าต่างบริบทแบบยาวของ Gemini ปลดล็อกกรณีการใช้งานใหม่ๆ และกระบวนทัศน์ของนักพัฒนาแอปมากมาย

หากต้องการดูหน้าต่างบริบทแบบยาวในการทำงาน ให้ไปที่แกลเลอรีพรอมต์ของ Vertex AI Studio แล้วเลือกพรอมต์ Extract Video Chapters พรอมต์นี้จะจัดกลุ่มเนื้อหาวิดีโอเป็นส่วนต่างๆ และแสดงข้อมูลสรุปสำหรับแต่ละส่วน
เมื่อเรียกใช้ด้วยวิดีโอที่ให้มา คุณควรได้รับเอาต์พุตที่คล้ายกับเอาต์พุตต่อไปนี้
[
{
"timecode": "00:00",
"chapterSummary": "The video opens with scenic views of Rio de Janeiro, introducing the \"Marvelous City\" and its famous beaches like Ipanema and Copacabana, before pivoting to the existence of the favelas."
},
{
"timecode": "00:20",
"chapterSummary": "The narrator describes the favelas, home to one in five Rio residents, highlighting that while often associated with crime and poverty, this is only a small part of their story."
},
{
"timecode": "00:36",
"chapterSummary": "Google introduces its project to map the favelas, emphasizing that providing addresses to these uncharted areas is a crucial step in giving residents an identity."
},
{
"timecode": "00:43",
"chapterSummary": "The video concludes by focusing on the people of the favelas, inviting viewers to go beyond the map and explore their world through a 360-degree experience."
}
]
ซึ่งทำได้ด้วยหน้าต่างบริบทแบบยาวของ Gemini เท่านั้น
8. โหมดการคิด 🧠
โมเดล Gemini ใช้กระบวนการคิดภายในซึ่งช่วยปรับปรุงการให้เหตุผลสำหรับงานที่ซับซ้อนได้อย่างมาก ระดับการคิด (Gemini 3) และงบประมาณ (Gemini 2.5) จะควบคุมลักษณะการคิด นอกจากนี้ คุณยังเปิดใช้ฟีเจอร์include_thoughtsเพื่อดูความคิดดิบๆ ของโมเดลได้ด้วย
หากต้องการดูโหมดการคิดในการทำงาน ให้เปิด Google AI Studio ( ai.dev) แล้วเริ่มแชทใหม่ ในแผงด้านขวา คุณสามารถตั้งค่าระดับการคิดได้ดังนี้

หากคลิกปุ่ม Get code ที่ด้านขวาบน คุณจะเห็นวิธีตั้งค่าระดับการคิดในโค้ด ซึ่งคล้ายกับตัวอย่างต่อไปนี้
response = client.models.generate_content(
model="gemini-3-pro-preview",
contents="How does AI work?",
config=types.GenerateContentConfig(
thinking_config=types.ThinkingConfig(
thinking_level="low",
include_thoughts=True
)
),
)
ลองใช้พรอมต์และระดับการคิดต่างๆ เพื่อดูพฤติกรรมของโมเดล
9. เครื่องมือ 🧰
Gemini มาพร้อมเครื่องมือในตัวมากมาย เช่น Google Search, Google Maps, การดำเนินการโค้ด, การใช้คอมพิวเตอร์, การค้นหาไฟล์ และอื่นๆ นอกจากนี้ คุณยังกำหนดเครื่องมือที่กำหนดเองด้วยการเรียกใช้ฟังก์ชันได้ด้วย มาดูวิธีใช้เครื่องมือเหล่านี้กันแบบคร่าวๆ
Google Search 🔎
คุณสามารถอ้างอิงคำตอบของโมเดลในผลการค้นหาของ Google Search เพื่อให้ได้คำตอบที่ถูกต้อง ทันสมัย และเกี่ยวข้องมากขึ้น
ใน Vertex AI Studio ( console.cloud.google.com/vertex-ai/studio) หรือ Google AI Studio ( ai.dev) คุณสามารถเริ่มแชทใหม่และตรวจสอบว่าการเชื่อมต่อแหล่งข้อมูลกับ Google Search ปิดอยู่

จากนั้นคุณก็ถามคำถามเกี่ยวกับสภาพอากาศวันนี้ในตำแหน่งของคุณได้ เช่น
How's the weather in London today?
โดยปกติแล้วคุณจะได้รับคำตอบสำหรับวันในอดีตเนื่องจากโมเดลไม่มีสิทธิ์เข้าถึงข้อมูลล่าสุด เช่น
In London today (Friday, May 24, 2025), the weather is a bit of a mixed bag, typical for late May.
ตอนนี้ให้เปิดใช้การอ้างอิงของ Google Search แล้วถามคำถามเดิม คุณควรได้รับข้อมูลสภาพอากาศล่าสุดพร้อมลิงก์ไปยังแหล่งที่มาที่เชื่อถือได้
In London today (Wednesday, February 11, 2026), the weather is cool and mostly cloudy with a chance of light rain.
นี่คือวิธีที่คุณจะใช้ Google Search เป็นพื้นฐานในโค้ด นอกจากนี้ คุณยังคลิกปุ่มโค้ดใน Vertex AI Studio เพื่อดูตัวอย่างการอ้างอิงได้ด้วย โดยทำดังนี้
google_search_tool = Tool(google_search=GoogleSearch())
response = client.models.generate_content(
model="gemini-3-flash-preview",
contents="How's the weather like today in London?",
config=GenerateContentConfig(tools=[google_search_tool])
)
Google Maps 🗺️
นอกจากนี้ คุณยังอ้างอิงคำตอบของโมเดลกับ Google Maps ซึ่งมีสิทธิ์เข้าถึงข้อมูลเกี่ยวกับสถานที่กว่า 250 ล้านแห่งได้ด้วย
หากต้องการดูการทำงานของฟีเจอร์นี้ คุณสามารถเลือก Google Maps แทน Google Search ในส่วนการอ้างอิงของโมเดลในการตั้งค่า Vertex AI Studio แล้วถามคำถามที่ต้องใช้ข้อมูล Maps เช่น
Can you show me some Greek restaurants and their map coordinates near me?
โค้ดสำหรับฟีเจอร์นี้จะมีลักษณะดังนี้
google_maps_tool = Tool(google_maps=GoogleMaps())
response = client.models.generate_content(
model="gemini-3-flash-preview",
contents=""What are the best restaurants near here?",
config=GenerateContentConfig(tools=[google_maps_tool]),
# Optional: Provide location context (this is in Los Angeles)
tool_config=ToolConfig(
retrieval_config=types.RetrievalConfig(
lat_lng=types.LatLng(
latitude=34.050481, longitude=-118.248526))),
)
การรันโค้ด 🧑💻
Gemini สามารถสร้างและรันโค้ด Python ด้วยรายการไลบรารีที่รองรับ (pandas, numpy, PyPDF2 ฯลฯ) ซึ่งมีประโยชน์สำหรับแอปพลิเคชันที่ได้รับประโยชน์จากการให้เหตุผลตามโค้ด (เช่น การแก้สมการ)
หากต้องการลองใช้ฟีเจอร์นี้ ให้เปลี่ยนไปใช้ Google AI Studio เริ่มแชทใหม่ และตรวจสอบว่าCode executionเปิดอยู่ จากนั้นให้ถามคำถามที่เครื่องมือดำเนินการโค้ดอาจมีประโยชน์ เช่น
What is the sum of the first 50 prime numbers?
Gemini ควรสร้างโค้ด Python และเรียกใช้ สุดท้ายแล้ว คำตอบที่ถูกต้องคือ 5117
คุณเรียกใช้เครื่องมือเรียกใช้โค้ดจากโค้ดได้โดยทำดังนี้
code_execution_tool = Tool(code_execution=ToolCodeExecution())
response = client.models.generate_content(
model="gemini-3-flash-preview",
contents="What is the sum of the first 50 prime numbers?",
config=GenerateContentConfig(
tools=[code_execution_tool],
temperature=0))
การใช้คอมพิวเตอร์ 🖥️
โมเดลการใช้คอมพิวเตอร์ของ Gemini (ตัวอย่าง) ช่วยให้คุณสร้างเอเจนต์ควบคุมเบราว์เซอร์เพื่อทำงานอัตโนมัติได้ โดยจะทำงานในลูปต่อไปนี้

หากต้องการดูการทำงานจริง คุณสามารถเรียกใช้ main.py ใน github.com/google-gemini/computer-use-preview
ตัวอย่างเช่น คุณสามารถรับคีย์ API จาก Google AI Studio แล้วขอให้ Gemini ค้นหาเที่ยวบินให้คุณได้โดยทำดังนี้
export GEMINI_API_KEY=your-api-key
python main.py --query "Find me top 5 fights sorted by price with the following constraints:
Flight site to use: www.google.com/travel/flights
From: London
To: Larnaca
One-way or roundtrip: One way
Date to leave: Sometime next week
Date to return: N/A
Travel preferences:
-Direct flights
-No flights before 10am
-Carry-on luggage"
คุณควรเห็น Gemini เปิดเบราว์เซอร์ที่ไม่ระบุตัวตนและเริ่มค้นหาเที่ยวบินให้คุณ
การค้นหาไฟล์ 📁
เครื่องมือค้นหาไฟล์ช่วยให้การสร้างแบบดึงข้อมูลเพิ่มเติม (RAG) เป็นเรื่องง่าย เพียงอัปโหลดไฟล์ แล้วเครื่องมือจะจัดการรายละเอียด RAG ทั้งหมด ไม่ว่าจะเป็นการแบ่งกลุ่ม การฝัง การดึงข้อมูลให้คุณ
หากต้องการดูการทำงานของเครื่องมือนี้ ให้เรียกใช้ main.py ใน github.com/meteatamel/genai-beyond-basics/blob/main/samples/grounding/file-search-tool
รับคีย์ API จาก Google AI Studio แล้วสร้างที่เก็บการค้นหาไฟล์โดยทำดังนี้
export GEMINI_API_KEY=your-gemini-api-key
python main.py create_store my-file-search-store
วิธีอัปโหลด PDF ไปยัง Store
python main.py upload_to_store fileSearchStores/myfilesearchstore-5a9x71ifjge9 cymbal-starlight-2024.pdf
ถามคำถามเกี่ยวกับ PDF ที่ชี้ไปยังร้านค้า
python main.py generate_content "What's the cargo capacity of Cymbal Starlight?" fileSearchStores/myfilesearchstore-5a9x71ifjge9
คุณควรได้รับการตอบกลับที่อิงตาม PDF ดังนี้
Generating content with file search store: fileSearchStores/myfilesearchstore-5a9x71ifjge9
Response: The Cymbal Starlight 2024 has a cargo capacity of 13.5 cubic feet, which is located in the trunk of the vehicle. It is important to distribute the weight evenly and not overload the trunk, as this could impact the vehicle's handling and stability. The vehicle can also accommodate up to two suitcases in the trunk, and it is recommended to use soft-sided luggage to maximize space and cargo straps to secure it while driving.
Grounding sources: cymbal-starlight-2024.pdf
การเรียกใช้ฟังก์ชัน 📲
หากเครื่องมือในตัวไม่เพียงพอ คุณยังกำหนดเครื่องมือ (ฟังก์ชัน) ของตัวเองใน Gemini ได้ด้วย คุณเพียงแค่ส่งฟังก์ชัน Python เป็นเครื่องมือ (แทนที่จะส่งข้อกำหนด OpenAPI โดยละเอียดของฟังก์ชัน) โมเดลและ SDK จะใช้เป็นเครื่องมือโดยอัตโนมัติ
เช่น คุณอาจมีฟังก์ชันที่แสดงผลละติจูดและลองจิจูดของสถานที่ตั้ง
def location_to_lat_long(location: str):
"""Given a location, returns the latitude and longitude
Args:
location: The location for which to get the weather.
Returns:
The latitude and longitude information in JSON.
"""
logger.info(f"Calling location_to_lat_long({location})")
url = f"https://geocoding-api.open-meteo.com/v1/search?name={location}&count=1"
return api_request(url)
นอกจากนี้ คุณยังใช้ฟังก์ชันเพื่อแสดงข้อมูลสภาพอากาศจากละติจูดและลองจิจูดได้ด้วย
def lat_long_to_weather(latitude: str, longitude: str):
"""Given a latitude and longitude, returns the weather information
Args:
latitude: The latitude of a location
longitude: The longitude of a location
Returns:
The weather information for the location in JSON.
"""
logger.info(f"Calling lat_long_to_weather({latitude}, {longitude})")
url = (f"https://api.open-meteo.com/v1/forecast?latitude={latitude}&longitude={longitude}¤t=temperature_2m,"
f"relative_humidity_2m,surface_pressure,wind_speed_10m,wind_direction_10m&forecast_days=1")
return api_request(url)
ตอนนี้คุณสามารถส่งฟังก์ชันทั้ง 2 นี้เป็นเครื่องมือไปยัง Gemini และอนุญาตให้ใช้เพื่อดึงข้อมูลสภาพอากาศของสถานที่ได้แล้ว
def generate_content_with_function_calls():
client = genai.Client(
vertexai=True,
project=PROJECT_ID,
location=LOCATION)
response = client.models.generate_content(
model=MODEL_ID,
contents=PROMPT,
config=GenerateContentConfig(
system_instruction=[
"You are a helpful weather assistant.",
"Your mission is to provide weather information for different cities."
"Make sure your responses are in plain text format (no markdown) and include all the cities asked.",
],
tools=[location_to_lat_long, lat_long_to_weather],
temperature=0),
)
print(response.text)
#print(response.automatic_function_calling_history)
หากต้องการดูการทำงานของฟีเจอร์นี้ ให้เรียกใช้ main_genaisdk.py ใน github.com/meteatamel/genai-beyond-basics/blob/main/samples/function-calling/weather
10. เอเจนต์ 🤖
Interactions API ของ Gemini ออกแบบมาเพื่อสร้างและโต้ตอบกับเอเจนต์ คุณสามารถใช้เอเจนต์เฉพาะทาง เช่น Gemini Deep Research Agent Agent Deep Research ของ Gemini จะวางแผน ดำเนินการ และสังเคราะห์งานค้นคว้าข้อมูลแบบหลายขั้นตอนโดยอัตโนมัติ โดยจะสำรวจข้อมูลที่ซับซ้อนโดยใช้การค้นหาเว็บและข้อมูลของคุณเองเพื่อสร้างรายงานแบบละเอียดพร้อมอ้างอิง
วิธีใช้เอเจนต์ Deep Research กับ Interaction API มีดังนี้
interaction = client.interactions.create(
input="Research the history of the Google TPUs.",
agent="deep-research-pro-preview-12-2025",
background=True
)
while True:
if interaction.status == "completed":
print("\nFinal Report:\n",
interaction.outputs[-1].text)
break
หากต้องการเรียกใช้ตัวอย่างนี้ด้วยตนเอง คุณสามารถเรียกใช้ main.py ใน github.com/meteatamel/genai-samples/blob/main/vertexai/interactions-api
export GOOGLE_API_KEY=your-api-key
python main.py agent
คุณควรเห็นการค้นคว้าข้อมูลหลังจากผ่านไประยะหนึ่ง
User: Research the history of the Google TPUs with a focus on 2025 and 2026
Status: in_progress
Status: in_progress
Status: in_progress
...
Model Final Report:
# Architectural Convergence and Commercial Expansion: The History of Google TPUs (2015–2026)
## Key Findings
* **Strategic Pivot (2025):** Google transitioned the Tensor Processing Unit (TPU) from a primarily internal differentiator to a commercial merchant-silicon competitor, epitomized by the massive "Ironwood" (TPU v7) deployment and external sales strategy.
* **Technological Leap:** The introduction of TPU v7 "Ironwood" in 2025 marked a paradigm shift, utilizing 3nm process technology to deliver 42.5 exaFLOPS per pod, directly challenging NVIDIA's Blackwell architecture in the high-performance computing (HPC) sector.
...
11. การสร้างรูปภาพ 📷
Nano Banana 🍌 คือชื่อของความสามารถในการสร้างรูปภาพดั้งเดิมของ Gemini Gemini สามารถสร้างและประมวลผลรูปภาพแบบสนทนาด้วยข้อความ รูปภาพ หรือทั้ง 2 อย่างรวมกัน ซึ่งช่วยให้คุณสร้าง แก้ไข และทำซ้ำภาพด้วยการควบคุมที่ไม่เคยมีมาก่อน
Nano Banana หมายถึงโมเดล 2 แบบที่แตกต่างกันซึ่งพร้อมใช้งานใน Gemini API ดังนี้
- Nano Banana: โมเดลรูปภาพ Gemini 2.5 Flash (
gemini-2.5-flash-image) โมเดลนี้ออกแบบมาเพื่อความเร็วและประสิทธิภาพ โดยปรับให้เหมาะกับงานที่มีปริมาณมากและมีความหน่วงต่ำ - Nano Banana Pro: โมเดลตัวอย่างรูปภาพของ Gemini 3 Pro (
gemini-3-pro-image-preview) โมเดลนี้ออกแบบมาเพื่อการผลิตชิ้นงานระดับมืออาชีพ โดยใช้การให้เหตุผลขั้นสูงเพื่อทำตามคำสั่งที่ซับซ้อนและแสดงผลข้อความที่มีความเที่ยงตรงสูง
ต่อไปนี้คือตัวอย่างโค้ดที่คุณส่งรูปภาพที่มีอยู่แล้วและขอให้ Nano Banana แก้ไขรูปภาพได้
from google import genai
from google.genai import types
from PIL import Image
client = genai.Client()
prompt = (
"Create a picture of my cat eating a nano-banana in a "
"fancy restaurant under the Gemini constellation",
)
image = Image.open("/path/to/cat_image.png")
response = client.models.generate_content(
model="gemini-2.5-flash-image",
contents=[prompt, image],
)
for part in response.parts:
if part.text is not None:
print(part.text)
elif part.inline_data is not None:
image = part.as_image()
image.save("generated_image.png")
Nano Banana พร้อมใช้งานในแอป Gemini, AI Studio หรือ Vertex AI Studio วิธีที่ง่ายที่สุดในการลองใช้คือในแอป Gemini โดยในแอป Gemini ( gemini.google.com) ให้เลือก 🍌 Create images ในส่วน Tools จากนั้นอัปโหลดรูปภาพแล้วลองทำอะไรสนุกๆ โดยอาจพูดว่า
Can you transform this picture of mine to a nice beach on a tropical island?

12. การสร้างการอ่านออกเสียงข้อความ 🎶
Gemini สามารถเปลี่ยนอินพุตข้อความเป็นเสียงแบบผู้พูดคนเดียวหรือหลายคนได้โดยใช้ความสามารถในการสร้างข้อความเป็นเสียง (TTS) ของ Gemini คุณควบคุมการสร้าง TTS ได้ ซึ่งหมายความว่าคุณสามารถใช้ภาษาที่เป็นธรรมชาติเพื่อจัดโครงสร้างการโต้ตอบและกำหนดรูปแบบ สำเนียง ความเร็ว และโทนเสียงของเสียงได้
โมเดลที่รองรับ TTS มี 2 โมเดล ได้แก่
ความสามารถของ TTS แตกต่างจากการสร้างคำพูดที่ให้บริการผ่าน Live API ซึ่งออกแบบมาสำหรับเสียงแบบอินเทอร์แอกทีฟที่ไม่มีโครงสร้าง รวมถึงอินพุตและเอาต์พุตแบบมัลติโมดัล แม้ว่า Live API จะโดดเด่นในบริบทการสนทนาแบบไดนามิก แต่ TTS ผ่าน Gemini API ได้รับการปรับแต่งสำหรับสถานการณ์ที่ต้องมีการอ่านข้อความที่แน่นอนพร้อมการควบคุมสไตล์และเสียงอย่างละเอียด เช่น การสร้างพอดแคสต์หรือหนังสือเสียง
ต่อไปนี้คือข้อมูลโค้ดสำหรับ TTS แบบเสียงเดียว
from google import genai
from google.genai import types
import wave
# Set up the wave file to save the output:
def wave_file(filename, pcm, channels=1, rate=24000, sample_width=2):
with wave.open(filename, "wb") as wf:
wf.setnchannels(channels)
wf.setsampwidth(sample_width)
wf.setframerate(rate)
wf.writeframes(pcm)
client = genai.Client()
response = client.models.generate_content(
model="gemini-2.5-flash-preview-tts",
contents="Say cheerfully: Have a wonderful day!",
config=types.GenerateContentConfig(
response_modalities=["AUDIO"],
speech_config=types.SpeechConfig(
voice_config=types.VoiceConfig(
prebuilt_voice_config=types.PrebuiltVoiceConfig(
voice_name='Kore',
)
)
),
)
)
data = response.candidates[0].content.parts[0].inline_data.data
file_name='out.wav'
wave_file(file_name, data) # Saves the file to current directory
ดูตัวอย่างเพิ่มเติมได้ในเอกสารประกอบการสร้างข้อความเป็นการอ่านออกเสียง (TTS)
นอกจากนี้ คุณยังลองสร้างคำพูดในพื้นที่ทดลองของ Google AI Studio ได้ด้วย ลองใช้พรอมต์ต่างๆ ในแอป generate-speech

13. ความเข้าใจเชิงพื้นที่ 🌐
Gemini มีการตรวจจับวัตถุและความเข้าใจเชิงพื้นที่ขั้นสูง
วิธีที่ง่ายที่สุดในการทำความเข้าใจเรื่องนี้คือการดูตัวอย่างการใช้งาน ไปที่แอปเริ่มต้นการทำความเข้าใจเชิงพื้นที่ใน AI Studio เลือกรูปภาพและลองตรวจหาไอเทมบางอย่างในรูปภาพด้วย Gemini
เช่น คุณตรวจหา "เงา" หรือ "ผลไม้" ในรูปภาพต่างๆ ได้

ลองใช้รูปภาพต่างๆ และดูว่า Gemini ตรวจหาและติดป้ายกำกับวัตถุต่างๆ ได้ดีเพียงใด
14. Live API 🎤
Live API ช่วยให้โต้ตอบด้วยเสียงและวิดีโอกับ Gemini ได้แบบเรียลไทม์ที่มีเวลาในการตอบสนองต่ำ โดยจะประมวลผลสตรีมเสียง วิดีโอ หรือข้อความอย่างต่อเนื่องเพื่อส่งคำตอบที่พูดออกมาได้ทันทีและเหมือนมนุษย์ ซึ่งจะสร้างประสบการณ์การสนทนาที่เป็นธรรมชาติสำหรับผู้ใช้

ลองใช้ Live API ใน Google AI Studio หรือ Live API ใน Vertex AI Studio ในทั้ง 2 แอป คุณสามารถแชร์เสียง วิดีโอ และหน้าจอ รวมถึงสนทนากับ Gemini แบบเรียลไทม์ได้

เริ่มแชร์วิดีโอหรือหน้าจอ แล้วถาม Gemini เกี่ยวกับเรื่องทั่วไปด้วยเสียง เช่น
Can you describe what you see on the screen?
คุณจะประหลาดใจกับคำตอบที่ฟังดูเป็นธรรมชาติจาก Gemini
15. บทสรุป
ในโค้ดแล็บนี้ เราได้พูดถึงระบบนิเวศของ Gemini โดยเริ่มจากผลิตภัณฑ์ในตระกูล Gemini และเรียนรู้วิธีผสานรวมโมเดลเข้ากับแอปพลิเคชันของเราโดยใช้ Google Gen AI SDK แบบรวม เราได้สำรวจฟีเจอร์ล้ำสมัยของ Gemini ซึ่งรวมถึงหน้าต่างบริบทแบบยาว, โหมดการคิด, เครื่องมือการอ้างอิงในตัว, Live API และความเข้าใจเชิงพื้นที่ เราขอแนะนำให้คุณศึกษาเอกสารอ้างอิงเพิ่มเติมและทดลองใช้ศักยภาพทั้งหมดของ Gemini ต่อไป