ปลั๊กอิน Vertex AI มีอินเทอร์เฟซสำหรับโมเดล Generative AI ของ Google หลายโมเดลผ่าน Vertex AI API ดังนี้
- การสร้างข้อความ Gemini 1.0 Pro และ Gemini 1.0 Pro Vision
- การสร้างรูปภาพ Imagen2
- รุ่นการฝังข้อความตุ๊กแก
รวมถึงยังให้สิทธิ์เข้าถึงชุดย่อยของเมตริกการประเมินผ่าน Rapid Evaluation API สำหรับ Vertex AI ด้วย
- BLEU
- เส้นทาง
- ความคล่องแคล่ว
- ความปลอดภัย
- ความสมเหตุสมผล
- คุณภาพการสรุป
- ความมีประโยชน์ในการสรุป
- การสรุปการสรุป
การติดตั้ง
npm i --save @genkit-ai/vertexai
หากต้องการเรียกใช้โฟลว์ที่ใช้ปลั๊กอินนี้ในเครื่อง คุณต้องติดตั้งเครื่องมือ Google Cloud CLI ด้วย
การกำหนดค่า
หากต้องการใช้ปลั๊กอินนี้ ให้ระบุปลั๊กอินเมื่อเรียกใช้ configureGenkit()
:
import { vertexAI } from '@genkit-ai/vertexai';
export default configureGenkit({
plugins: [
vertexAI({ projectId: 'your-cloud-project', location: 'us-central1' }),
],
// ...
});
ปลั๊กอินกำหนดให้คุณระบุรหัสโปรเจ็กต์ Google Cloud, ภูมิภาคที่ต้องการสร้างคำขอ Vertex API และข้อมูลเข้าสู่ระบบโปรเจ็กต์ Google Cloud
คุณระบุรหัสโปรเจ็กต์ Google Cloud ได้โดยการตั้งค่า
projectId
ในการกำหนดค่าvertexAI()
หรือโดยการตั้งค่าตัวแปรสภาพแวดล้อมGCLOUD_PROJECT
หากคุณเรียกใช้โฟลว์จากสภาพแวดล้อม Google Cloud (Cloud Functions, Cloud Run และอื่นๆ) ระบบจะตั้งค่าGCLOUD_PROJECT
เป็นรหัสโปรเจ็กต์ของสภาพแวดล้อมโดยอัตโนมัติคุณระบุตำแหน่งของ API ได้โดยการตั้งค่า
location
ในการกำหนดค่าvertexAI()
หรือโดยการตั้งค่าตัวแปรสภาพแวดล้อมGCLOUD_LOCATION
หากต้องการระบุข้อมูลเข้าสู่ระบบ API คุณต้องตั้งค่าข้อมูลเข้าสู่ระบบเริ่มต้นของแอปพลิเคชัน Google Cloud
วิธีระบุข้อมูลเข้าสู่ระบบ
หากคุณเรียกใช้โฟลว์จากสภาพแวดล้อม Google Cloud (Cloud Functions, Cloud Run และอื่นๆ) ระบบจะตั้งค่านี้โดยอัตโนมัติ
ในสภาพแวดล้อมสำหรับนักพัฒนาซอฟต์แวร์ในเครื่อง ให้เรียกใช้โดยเรียกใช้
gcloud auth application-default login
- สำหรับสภาพแวดล้อมอื่นๆ โปรดดูเอกสารข้อมูลเข้าสู่ระบบเริ่มต้นของแอปพลิเคชัน
นอกจากนี้ โปรดตรวจสอบว่าบัญชีได้รับบทบาท IAM ของผู้ใช้ Vertex AI (
roles/aiplatform.user
) ดูเอกสารการควบคุมการเข้าถึงของ Vertex AI
การใช้งาน
โมเดล Generative AI
ปลั๊กอินนี้จะส่งออกข้อมูลอ้างอิงไปยังโมเดล Generative AI ที่รองรับแบบคงที่
import { geminiPro, geminiProVision, imagen2 } from '@genkit-ai/vertexai';
คุณใช้การอ้างอิงเหล่านี้เพื่อระบุโมเดลที่ generate()
ใช้ได้
const llmResponse = await generate({
model: geminiPro,
prompt: 'What should I do when I visit Melbourne?',
});
ปลั๊กอินนี้ยังส่งออกการอ้างอิงไปยังโมเดลการฝังข้อความตุ๊กแกอย่างคงที่ด้วย
import { textEmbeddingGecko } from '@genkit-ai/vertexai';
คุณใช้การอ้างอิงนี้เพื่อระบุเครื่องมือฝังตัวที่เครื่องมือจัดทำดัชนีหรือรีทรีฟเวอร์ใช้ได้ เช่น หากใช้ Chroma DB
configureGenkit({
plugins: [
chroma([
{
embedder: textEmbeddingGecko,
collectionName: 'my-collection',
},
]),
],
});
หรือจะสร้างการฝังโดยตรงก็ได้โดยทำดังนี้
// import { embed, EmbedderArgument } from '@genkit-ai/ai/embedder';
const embedding = await embed({
embedder: textEmbeddingGecko,
content: 'How many widgets do you have in stock?',
});
มานุษยนิยมโคด 3 ในสวนโมเดล Vertex AI
หากมีสิทธิ์เข้าถึงโมเดลของ Claudi 3 (haiku, Sonnet หรือ opus) ในสวนโมเดล Vertex AI Model Garden คุณสามารถใช้โมเดลเหล่านั้นกับ Genkit ได้
ตัวอย่างการกำหนดค่าสำหรับการเปิดใช้โมเดล Vertex AI Model Garden มีดังนี้
import {
vertexAI,
claude3Haiku,
claude3Sonnet,
claude3Opus,
} from '@genkit-ai/vertexai';
export default configureGenkit({
plugins: [
vertexAI({
location: 'us-central1',
modelGardenModels: [claude3Haiku, claude3Sonnet, claude3Opus],
}),
],
});
จากนั้นใช้เป็นรูปแบบปกติ:
const llmResponse = await generate({
model: claude3Sonnet,
prompt: 'What should I do when I visit Melbourne?',
});
ผู้ประเมิน
หากต้องการใช้ผู้ประเมินจากการประเมินอย่างรวดเร็ว Vertex AI ให้เพิ่มบล็อก evaluation
ในการกำหนดค่าปลั๊กอิน vertexAI
import { vertexAI, VertexAIEvaluationMetricType } from '@genkit-ai/vertexai';
export default configureGenkit({
plugins: [
vertexAI({
projectId: 'your-cloud-project',
location: 'us-central1',
evaluation: {
metrics: [
VertexAIEvaluationMetricType.SAFETY,
{
type: VertexAIEvaluationMetricType.ROUGE,
metricSpec: {
rougeType: 'rougeLsum',
},
},
],
},
}),
],
// ...
});
การกำหนดค่าข้างต้นจะเพิ่มผู้ประเมินสำหรับเมตริก Safety
และ ROUGE
ตัวอย่างนี้แสดง 2 แนวทาง ได้แก่ เมตริก Safety
ใช้ข้อมูลจำเพาะเริ่มต้น ส่วนเมตริก ROUGE
จะระบุข้อกำหนดที่กำหนดเองซึ่งตั้งค่าประเภท Rouge เป็น rougeLsum
ผู้ประเมินทั้ง 2 คนเรียกใช้ได้โดยใช้คำสั่ง genkit eval:run
กับชุดข้อมูลที่เข้ากันได้ กล่าวคือชุดข้อมูลที่มีช่อง output
และ reference
นอกจากนี้ ตัวประเมิน Safety
ยังเรียกใช้ได้โดยใช้คำสั่ง genkit eval:flow -e vertexai/safety
ได้ด้วย เนื่องจากต้องใช้เพียง output
เท่านั้น