Gemini API ช่วยให้คุณเข้าถึงโมเดล Generative ล่าสุดจาก Google ได้ เมื่อคุณคุ้นเคยกับฟีเจอร์ทั่วไปที่คุณใช้ได้ผ่าน API แล้ว ให้ลองดูบทแนะนำสำหรับภาษาที่คุณเลือกเพื่อเริ่มพัฒนา
รูปแบบ
Gemini คือชุดโมเดล Generative AI แบบหลายโมดัลที่พัฒนาโดย Google โมเดล Gemini ยอมรับข้อความและรูปภาพในพรอมต์ได้โดยขึ้นอยู่กับรูปแบบโมเดลที่คุณเลือก และเอาต์พุตข้อความตอบกลับ
ดูข้อมูลโมเดลโดยละเอียดเพิ่มเติมได้ที่หน้าโมเดล Gemini นอกจากนี้ คุณยังใช้เมธอด list_models
เพื่อแสดงรายการโมเดลทั้งหมดที่มีอยู่ รวมถึงเมธอด get_model
เพื่อรับข้อมูลเมตาสำหรับโมเดลหนึ่งๆ ได้ด้วย
ข้อมูลและการออกแบบพรอมต์
โมเดล Gemini บางรุ่นจะยอมรับทั้งข้อมูลข้อความและไฟล์สื่อเป็นอินพุต ความสามารถนี้ทำให้เกิดความเป็นไปได้อื่นๆ มากมายในการสร้างเนื้อหา การวิเคราะห์ข้อมูล และการแก้ปัญหา มีข้อจำกัดและข้อกำหนดบางอย่างที่ต้องพิจารณา เช่น ขีดจำกัดโทเค็นอินพุตทั่วไปสำหรับโมเดลที่คุณใช้อยู่ ดูข้อมูลเกี่ยวกับขีดจำกัดของโทเค็นสำหรับโมเดลที่เฉพาะเจาะจงได้ที่โมเดล Gemini
พรอมต์ที่ใช้ Gemini API ต้องมีขนาดไม่เกิน 20 MB Gemini API มี File API สำหรับจัดเก็บไฟล์สื่อชั่วคราวเพื่อใช้ในพรอมต์ ซึ่งช่วยให้คุณส่งข้อมูลพรอมต์ที่มีขนาดเกิน 20 MB ได้ ดูข้อมูลเพิ่มเติมเกี่ยวกับการใช้ Files API และรูปแบบไฟล์ที่รองรับการใช้พรอมต์ในหัวข้อการส่งข้อความแจ้งด้วยไฟล์สื่อ
การออกแบบพรอมต์และการป้อนข้อความ
การสร้างพรอมต์ที่มีประสิทธิภาพหรือวิศวกรรมพรอมต์เป็นการผสมผสานระหว่างศิลปะกับวิทยาศาสตร์ ดูข้อมูลเบื้องต้นเกี่ยวกับการส่งข้อความแจ้งเพื่อดูคำแนะนำเกี่ยวกับวิธีสร้างพรอมต์และคู่มือพรอมต์ 101 เพื่อดูวิธีต่างๆ ในการใช้พรอมต์
สร้างเนื้อหา
Gemini API ช่วยให้คุณใช้ข้อมูลทั้งข้อความและรูปภาพสำหรับพรอมต์ได้ ทั้งนี้ขึ้นอยู่กับรูปแบบโมเดลที่ใช้ เช่น คุณสามารถสร้างข้อความจากพรอมต์แบบข้อความเท่านั้นหรือพรอมต์แบบหลายโมดัลโดยใช้โมเดล Gemini 1.5 ส่วนนี้มีตัวอย่างโค้ดพื้นฐานของแต่ละรายการ โปรดดูข้อมูลอ้างอิง API ของ generateContent
สำหรับ��ัวอย่างโดยละเอียดเพิ่มเติมที่ครอบคลุมพารามิเตอร์ทั้งหมด
การป้อนข้อความและรูปภาพ
คุณสามารถส่งพรอมต์ข้อความพร้อมรูปภาพไ��ยังโมเดล Gemini 1.5 เพื่อทำงานที่เกี่ยวข้องกับการมองเห็นได้ เช่น การใส่คำบรรยายให้กับรูปภาพหรือการระบุสิ่งที่อยู่ในรูปภาพนั้น
ตัวอย่างโค้ดต่อไปนี้แสดงการใช้พรอมต์ข้อความและรูปภาพแบบพื้นฐานสำหรับแต่ละภาษาที่รองรับ
Python
model = genai.GenerativeModel('gemini-1.5-flash')
cookie_picture = {
'mime_type': 'image/png',
'data': pathlib.Path('cookie.png').read_bytes()
}
prompt = "Do these look store-bought or homemade?"
response = model.generate_content(
contents=[prompt, cookie_picture]
)
print(response.text)
ดูบทแนะนำ Python เพื่อดูข้อมูลโค้ดที่สมบูรณ์
Go
vmodel := client.GenerativeModel("gemini-1.5-flash")
data, err := os.ReadFile(filepath.Join("path-to-image", imageFile))
if err != nil {
log.Fatal(err)
}
resp, err := vmodel.GenerateContent(ctx, genai.Text("Do these look store-bought or homemade?"), genai.ImageData("jpeg", data))
if err != nil {
log.Fatal(err)
}
ดูตัวอย่างที่สมบูรณ์ได้ในบทแนะนำของ Go
Node.js
const model = genAI.getGenerativeModel({ model: "gemini-1.5-flash" });
const prompt = "Do these look store-bought or homemade?";
const image = {
inlineData: {
data: Buffer.from(fs.readFileSync("cookie.png")).toString("base64"),
mimeType: "image/png",
},
};
const result = await model.generateContent([prompt, image]);
console.log(result.response.text());
โปรดดูตัวอย่างที่สมบูรณ์ในบทแนะนำ Node.js
เว็บไซต์
const model = genAI.getGenerativeModel({ model: "gemini-1.5-flash" });
const prompt = "Do these look store-bought or homemade?";
const image = {
inlineData: {
data: base64EncodedImage /* see JavaScript quickstart for details */,
mimeType: "image/png",
},
};
const result = await model.generateContent([prompt, image]);
console.log(result.response.text());
ดูตัวอย่างทั้งหมดได้ในบทแนะนำบนเว็บ
ลูกดอก (Flutter)
final model = GenerativeModel(model: 'gemini-1.5-flash', apiKey: apiKey);
final prompt = 'Do these look store-bought or homemade?';
final imageBytes = await File('cookie.png').readAsBytes();
final content = [
Content.multi([
TextPart(prompt),
DataPart('image/png', imageBytes),
])
];
final response = await model.generateContent(content);
print(response.text);
ดูตัวอย่างที่สมบูรณ์ได้ที่บทแนะนำ Dart (Flutter)
Swift
let model = GenerativeModel(name: "gemini-1.5-flash", apiKey: "API_KEY")
let cookieImage = UIImage(...)
let prompt = "Do these look store-bought or homemade?"
let response = try await model.generateContent(prompt, cookieImage)
ดูตัวอย่างที่สมบูรณ์ได้ในบทแนะนำ Swift
Android
val generativeModel = GenerativeModel(
modelName = "gemini-1.5-flash",
apiKey = BuildConfig.apiKey
)
val cookieImage: Bitmap = // ...
val inputContent = content() {
image(cookieImage)
text("Do these look store-bought or homemade?")
}
val response = generativeModel.generateContent(inputContent)
print(response.text)
ดูตัวอย่างที่สมบูรณ์ได้ในบทแนะนำสำหรับ Android
cURL
curl https://generativelanguage.googleapis.com/v1/models/gemini-1.5-flash:generateContent?key=${API_KEY} \
-H 'Content-Type: application/json' \
-X POST \
-d @<(echo'{
"contents":[
{ "parts":[
{"text": "Do these look store-bought or homemade?"},
{ "inlineData": {
"mimeType": "image/png",
"data": "'$(base64 -w0 cookie.png)'"
}
}
]
}
]
}')
ดูรายละเอียดเพิ่มเติมในบทแนะนำ REST API
อินพุตข้อความเท่านั้น
Gemini API ยังจัดการการป้อนข้อความเท่านั้นได้อีกด้วย ฟีเจอร์นี้ช่วยให้คุณทำงานด้านการประมวลผลภาษาธรรมชาติ (NLP) เช่น การเติมข้อความและการสรุป
ตัวอย่างโค้ดต่อไปนี้แสดงการใช้พรอมต์แบบข้อความเท่านั้นแบบพื้นฐานสำหรับแต่ละภาษาที่รองรับ
Python
model = genai.GenerativeModel('gemini-1.5-flash')
prompt = "Write a story about a magic backpack."
response = model.generate_content(prompt)
ดูตัวอย่างที่สมบูรณ์ได้ในบทแนะนำ Python
Go
ctx := context.Background()
client, err := genai.NewClient(ctx, option.WithAPIKey(os.Getenv("API_KEY")))
if err != nil {
log.Fatal(err)
}
defer client.Close()
model := client.GenerativeModel("gemini-1.5-flash")
resp, err := model.GenerateContent(ctx, genai.Text("Write a story about a magic backpack."))
if err != nil {
log.Fatal(err)
}
ดูตัวอย่างที่สมบูรณ์ได้ในบทแนะนำของ Go
Node.js
const model = genAI.getGenerativeModel({ model: "gemini-1.5-flash" });
const prompt = "Write a story about a magic backpack.";
const result = await model.generateContent(prompt);
console.log(result.response.text());
โปรดดูตัวอย่างที่สมบูรณ์ในบทแนะนำ Node.js
เว็บไซต์
const model = genAI.getGenerativeModel({ model: "gemini-1.5-flash" });
const prompt = "Write a story about a magic backpack.";
const result = await model.generateContent(prompt);
console.log(result.response.text());
ดูตัวอย่างทั้งหมดได้ในบทแนะนำบนเว็บ
ลูกดอก (Flutter)
final model = GenerativeModel(model: 'gemini-1.5-flash', apiKey: apiKey);
final prompt = 'Write a story about a magic backpack.';
final content = [Content.text(prompt)];
final response = await model.generateContent(content);
print(response.text);
ดูตัวอย่างที่สมบูรณ์ได้ที่บทแนะนำ Dart (Flutter)
Swift
let model = GenerativeModel(name: "gemini-1.5-flash", apiKey: "API_KEY")
let prompt = "Write a story about a magic backpack."
let response = try await model.generateContent(prompt)
ดูตัวอย่างที่สมบูรณ์ได้ในบทแนะนำ Swift
Android
val generativeModel = GenerativeModel(
modelName = "gemini-1.5-flash",
apiKey = BuildConfig.apiKey
)
val prompt = "Write a story about a magic backpack."
val response = generativeModel.generateContent(prompt)
print(response.text)
ดูตัวอย่างที่สมบูรณ์ได้ในบทแนะนำสำหรับ Android
cURL
curl https://generativelanguage.googleapis.com/v1/models/gemini-1.5-flash:generateContent?key=$API_KEY \
-H 'Content-Type: application/json' \
-X POST \
-d '{ "contents":[
{ "parts":[{"text": "Write a story about a magic backpack"}]}
]
}'
ดูรายละเอียดเพิ่มเติมในบทแนะนำ REST API
การสนทนาแบบผลัดกันเล่น (แชท)
คุณสามารถใช้ Gemini API เพื่อสร้างประสบการณ์การแชทแบบอินเทอร์แอกทีฟสำหรับผู้ใช้ การใช้ฟีเจอร์แชท���อง API ช่วยให้คุณรวบรวมคำถามและคำตอบได้หลายรอบ ซึ่งทำให้ผู้ใช้ค่อยๆ หาคำตอบหรือรับความช่วยเหลือในการแก้โจทย์ที่มีหลายส่วนได้ ฟีเจอร์นี้เหมาะสำหรับแอปพลิเคชันที่ต้องใช้การสื่อสารอย่างต่อเนื่อง เช่น แชทบ็อต ติวเตอร์แบบอินเทอร์แอกทีฟ หรือผู้ช่วยฝ่ายสนับสนุนลูกค้า
ตัวอย่างโค้ดต่อไปนี้แสดงการใช้งานการโต้ตอบทางแชทขั้นพื้นฐานสำหรับแต่ละภาษาที่รองรับ
Python
model = genai.GenerativeModel('gemini-1.5-flash')
chat = model.start_chat(history=[])
response = chat.send_message(
"Pretend you\'re a snowman and stay in character for each response.")
print(response.text)
response = chat.send_message(
"What\'s your favorite season of the year?")
print(response.text)
ดูตัวอย่างที่สมบูรณ์ได้ในบทแนะนำเกี่ยวกับ Python
Go
model := client.GenerativeModel("gemini-1.5-flash")
cs := model.StartChat()
cs.History = []*genai.Content{
&genai.Content{
Parts: []genai.Part{
genai.Text("Pretend you're a snowman and stay in character for each response."),
},
Role: "user",
},
&genai.Content{
Parts: []genai.Part{
genai.Text("Hello! It's cold! Isn't that great?"),
},
Role: "model",
},
}
resp, err := cs.SendMessage(ctx, genai.Text("What's your favorite season of the year?"))
if err != nil {
log.Fatal(err)
}
ดูการสาธิตการแชทในบทแนะนำเกี่ยวกับ Go สำหรับตัวอย่างแบบเต็ม
Node.js
const model = genAI.getGenerativeModel({ model: "gemini-1.5-flash"});
const chat = model.startChat({
history: [
{
role: "user",
parts: "Pretend you're a snowman and stay in character for each response.",
},
{
role: "model",
parts: "Hello! It's cold! Isn't that great?",
},
],
generationConfig: {
maxOutputTokens: 100,
},
});
const msg = "What's your favorite season of the year?";
const result = await chat.sendMessage(msg);
console.log(result.response.text());
โปรดดูการสาธิตการแชทในบทแนะนำ Node.js สำหรับตัวอย่างทั้งหมด
เว็บไซต์
const model = genAI.getGenerativeModel({ model: "gemini-1.5-flash"});
const chat = model.startChat({
history: [
{
role: "user",
parts: "Pretend you're a snowman and stay in character for each response.",
},
{
role: "model",
parts: "Hello! It's so cold! Isn't that great?",
},
],
generationConfig: {
maxOutputTokens: 100,
},
});
const msg = "What's your favorite season of the year?";
const result = await chat.sendMessage(msg);
console.log(result.response.text());
ดูการสาธิตการแชทในบทแนะนำบนเว็บสำหรับตัวอย่างทั้งหมด
ลูกดอก (Flutter)
final model = GenerativeModel(model: 'gemini-1.5-flash', apiKey: apiKey);
final chat = model.startChat(history: [
Content.text(
"Pretend you're a snowman and stay in character for each response."),
Content.model([TextPart("Hello! It's cold! Isn't that great?")]),
]);
final content = Content.text("What's your favorite season of the year?");
final response = await chat.sendMessage(content);
print(response.text);
ดูตัวอย่างท��้งหมดได้จากการสาธิตแชทในบทแนะนำ Dart (Flutter)
Swift
let model = GenerativeModel(name: "gemini-1.5-flash", apiKey: "API_KEY")
let chat = model.startChat()
var message = "Pretend you're a snowman and stay in character for each response."
var response = try await chat.sendMessage(message)
message = "What\'s your favorite season of the year?"
response = try await chat.sendMessage(message)
ดูตัวอย่างที่สมบูรณ์ในบทแนะนำของ Swift
Android
val generativeModel = GenerativeModel(
modelName = "gemini-1.5-flash",
apiKey = BuildConfig.apiKey
)
val chat = generativeModel.startChat()
val response = chat.sendMessage("Pretend you're a snowman and stay in
character for each response.")
print(response.text)
ดูตัวอย่างที่สมบูรณ์ได้ในบทแนะนำสำหรับ Android
cURL
curl https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash:generateContent?key=$API_KEY \ -H 'Content-Type: application/json' \ -X POST \ -d '{ "contents": [ {"role":"user", "parts":[{ "text": "Pretend you're a snowman and stay in character for each {"role": "model", response."}]}, "parts":[{ "text": "Hello! It's so cold! Isn't that great?"}]}, {"role": "user", "parts":[{ "text": "What\'s your favorite season of the year?"}]}, ] }' 2> /dev/null | grep "text"
# response example: "text": "Winter, of course!"
ดูรายละเอียดเพิ่มเติมในบทแนะนำ REST API
คำตอบที่สตรีมแล้ว
Gemini API มอบวิธีเพิ่มเติมในการรับคำตอบจากโมเดล Generative AI นั่นคือเป็นสตรีมข้อมูล การตอบกลับสตรีมจะส่งข้อมูลส่วนเพิ่มกลับไปยังแอปพลิเคชันเนื่องจากโมเดลสร้างขึ้น ฟีเจอร์นี้ช่วยให้คุณตอบสนองต่อคำขอของผู้ใช้ได้อย่างรวดเร็วเพื่อแสดงความคืบหน้าและสร้างประสบการณ์การโต้ตอบมากขึ้น
คำตอบแบบสตรีมเป็นตัวเลือกสำหรับพรอมต์แบบอิสระและแชทกับโมเดล Gemini ตัวอย่างโค้ดต่อไปนี้แสดงวิธีขอคำตอบแบบสตรีมสำหรับพรอมต์ในแต่ละภาษาที่รองรับ
Python
prompt = "Write a story about a magic backpack."
response = genai.stream_generate_content(
model="models/gemini-1.5-flash",
prompt=prompt
)
ดูบทแนะนำ Python เพื่อดูข้อมูลโค้ดที่สมบูรณ์
Go
ctx := context.Background()
client, err := genai.NewClient(ctx, option.WithAPIKey(os.Getenv("API_KEY")))
if err != nil {
log.Fatal(err)
}
defer client.Close()
model := client.GenerativeModel("gemini-1.5-flash")
iter := model.GenerateContentStream(ctx, genai.Text("Write a story about a magic backpack."))
for {
resp, err := iter.Next()
if err == iterator.Done {
break
}
if err != nil {
log.Fatal(err)
}
// print resp
}
ดูตัวอย่างที่สมบูรณ์ได้ในบทแนะนำของ Go
Node.js
const model = genAI.getGenerativeModel({ model: "gemini-1.5-flash" });
const prompt = "Write a story about a magic backpack.";
const result = await model.generateContentStream([prompt]);
// print text as it comes in
for await (const chunk of result.stream) {
const chunkText = chunk.text();
console.log(chunkText);
}
โปรดดูตัวอย่างที่สมบูรณ์ในบทแนะนำ Node.js
เว็บไซต์
const model = genAI.getGenerativeModel({ model: "gemini-1.5-flash" });
const prompt = "Write a story about a magic backpack.";
const result = await model.generateContentStream([prompt]);
// print text as it comes in
for await (const chunk of result.stream) {
const chunkText = chunk.text();
console.log(chunkText);
}
ดูตัวอย่างทั้งหมดได้ในบทแนะนำบนเว็บ
ลูกดอก (Flutter)
final model = GenerativeModel(model: 'gemini-1.5-flash', apiKey: apiKey);
final prompt = 'Write a story about a magic backpack.';
final content = [Content.text(prompt)];
final response = model.generateContentStream(content);
await for (final chunk in response) {
print(chunk.text);
}
ดูตัวอย่างที่สมบูรณ์ได้ที่บทแนะนำ Dart (Flutter)
Swift
let model = GenerativeModel(name: "gemini-1.5-flash", apiKey: "API_KEY")
let prompt = "Write a story about a magic backpack."
let stream = model.generateContentStream(prompt)
for try await chunk in stream {
print(chunk.text ?? "No content")
}
ดูตัวอย่างที่สมบูรณ์ได้ในบทแนะนำ Swift
Android
val generativeModel = GenerativeModel(
modelName = "gemini-1.5-flash",
apiKey = BuildConfig.apiKey
)
val inputContent = content {
text("Write a story about a magic backpack.")
}
var fullResponse = ""
generativeModel.generateContentStream(inputContent).collect { chunk ->
print(chunk.text)
fullResponse += chunk.text
}
ดูตัวอย่างที่สมบูรณ์ได้ในบทแนะนำสำหรับ Android
cURL
curl https://generativelanguage.googleapis.com/v1/models/gemini-1.5-flash:streamGenerateContent?key=${API_KEY} \
-H 'Content-Type: application/json' \
--no-buffer \
-d '{ "contents":[
{"role": "user",
"parts":[{"text": "Write a story about a magic backpack."}]
}
]
}' > response.json
ดูรายละเอียดเพิ่มเติมในบทแนะนำ REST API
การตอบกลับรูปแบบ JSON
คุณอาจต้องการให้การตอบกลับพรอมต์ในรูปแบบข้อมูลที่มีโครงสร้าง ทั้งนี้ขึ้นอยู่กับแอปพลิเคชันของคุณ โดยเฉพาะในกรณีที่ใช้การตอบกลับเพื่อสร้างอินเทอร์เฟซการเขียนโปรแกรม Gemini API มีพารามิเตอร์การกำหนดค่าเพื่อขอคำตอบในรูปแบบ JSON
คุณรับ JSON สำหรับเอาต์พุตโมเดลได้โดยตั้งค่าตัวเลือกการกำหนดค่า response_mime_type
เป็น application/json
และในพรอมต์ ให้อธิบายรูปแบบของ JSON ที่คุณต้องการในการตอบกลับ
Python
model = genai.GenerativeModel('gemini-1.5-flash',
generation_config={"response_mime_type": "application/json"})
prompt = """
List 5 popular cookie recipes.
Using this JSON schema:
Recipe = {"recipe_name": str}
Return a `list[Recipe]`
"""
response = model.generate_content(prompt)
print(response.text)
cURL
curl https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash:generateContent?key=$API_KEY \
-H 'Content-Type: application/json' \
-X POST \
-d '{
"contents": [
{
"parts": [
{
"text": "\nList 5 popular cookie recipes.\n\nUsing this JSON schema:\n\n Recipe = {\"recipe_name\": str}\n\nReturn a `list[Recipe]`\n "
}
]
}
]
"generationConfig": {
"response_mime_type": "application/json",
}
}'
แม้ว่าโมเดล Flash ของ Gemini 1.5 จะยอมรับเฉพาะคำอธิบายข้อความของสคีมา JSON ที่คุณต้องการแสดงผล แต่โมเดล Gemini 1.5 Pro ให้คุณส่งออบเจ็กต์สคีมา (หรือประเภท Python ที่เทียบเท่ากั���) และเอาต์พุตของโมเดลจะเป็นไปตามสคีมานั้นอย่างเคร่งครัด หรือเรียกอีกอย่างว่ารุ่นที่ควบคุมหรือการถอดรหัสแบบจำกัด
ตัวอย่างเช่น หากต้องการรับร��ยการออบเจ็กต์ Recipe
ให้ส่ง list[Recipe]
ไปยังช่อง response_schema
ของอาร์กิวเมนต์ generation_config
ดังนี้
Python
import typing_extensions as typing
class Recipe(typing.TypedDict):
recipe_name: str
model = genai.GenerativeModel(model_name="models/gemini-1.5-pro")
result = model.generate_content(
"List 5 popular cookie recipes",
generation_config=genai.GenerationConfig(response_mime_type="application/json",
response_schema = list[Recipe]))
print(result.text)
cURL
curl https://generativelanguage.googleapis.com/v1beta/models/models/gemini-1.5-pro:generateContent?
-H 'Content-Type: application/json'
-X POST \
-d '{
"contents": [
{
"parts": [
{
"text": "List 5 popular cookie recipes"
}
]
}
],
"generationConfig": {
"responseMimeType": "application/json",
"responseSchema": {
"type": "ARRAY",
"items": {
"type": "OBJECT",
"properties": {
"recipe_name": {
"type": "STRING"
}
}
}
}
}
}'
```
ดูข้อมูลเพิ่มเติมได้ที่การเริ่มต้นใช้งานโหมด JSON อย่างรวดเร็วในตำราอาหาร Gemini API
การฝัง
บริการฝังใน Gemini API จะสร้างการฝังคำ วลี และประโยคที่ล้ำสมัย จากนั้น การฝังที่ได้จะใช้สำหรับงาน NLP เช่น การค้นหาความหมาย การแยกประเภทข้อความ การคลัสเตอร์ และอื่นๆ อีกมากมาย ดูคู่มือการฝังเพื่อเรียนรู้เกี่ยวกับการฝัง และตัวอย่างกรณีการใช้งานที่สำคัญของบริการการฝังเพื่อช่วยคุณเริ่มต้นใช้งาน
ขั้นตอนถัดไป
- เริ่มต้นใช้งาน UI ของ Google AI Studio โดยใช้การเริ่มต้น Google AI Studio อย่างรวดเร็ว
- ลองใช้การเข้าถึง Gemini API ฝั่งเซิร์ฟเวอร์ด้วยบทแนะนำสำหรับ Python, Go หรือ Node.js
- เริ่มสร้างเว็บด้วยบทแนะนำเว็บ
- เริ่มสร้างแอปสำหรับอุปกรณ์เคลื่อนที่ด้วยบทแนะนำ Swift หรือบทแนะนำสำหรับ Android
- หากคุณเป็นผู้ใช้ Google Cloud อยู่แล้ว (หรือต้องการใช้ Gemini ใน Vertex เ��ื่อใช้ประโยชน์จากระบบนิเวศ Google Cloud ที่มีประสิทธิภาพ) โปรดดูข้อมูลเพิ่มเติมจาก Generative AI บน Vertex AI