يوفّر مكوّن Vertex AI الإضافي واجهات للعديد من نماذج الذكاء الاصطناعي التوليدي من Google من خلال Vertex AI API، وذلك وفقًا لما يلي:
- إنشاء نصوص بين Gemini 1.0 Pro وGemini 1.0 Pro Vision
- إنشاء صور Imagen2
- إنشاء تضمين نص Gecko
يوفّر أيضًا إمكانية الوصول إلى مجموعة فرعية من مقاييس التقييم من خلال واجهة برمجة تطبيقات التقييم السريع في Vertex AI .
تثبيت
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
تلقائيًا على معرّف مشروع البيئة.يمكنك تحديد موقع واجهة برمجة التطبيقات إما من خلال ضبط
location
في إعداداتvertexAI()
أو من خلال ضبط متغيّر بيئةGCLOUD_LOCATION
.لتقديم بيانات اعتماد واجهة برمجة التطبيقات، يجب إعداد بيانات الاعتماد التلقائية لتطبيق Google Cloud.
لتحديد بيانات الاعتماد:
إذا كنت تشغِّل المسار من بيئة Google Cloud (مثل Cloud Functions وCloud Run وما إلى ذلك)، سيتم ضبط الإعدادات تلقائيًا.
في بيئة مطور البرامج المحلية، يمكنك إجراء ذلك عن طريق تشغيل:
gcloud auth application-default login
- بالنسبة إلى البيئات الأخرى، يُرجى الاطّلاع على مستندات بيانات الاعتماد التلقائية للتطبيق.
بالإضافة إلى ذلك، تأكَّد من منح الحساب دور "إدارة الهوية وإمكانية الوصول" لمستخدم Vertex AI (
roles/aiplatform.user
). يُرجى الاطّلاع على مستندات التحكّم في الوصول إلى Vertex 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?',
});
يقوم هذا المكون الإضافي أيضًا بتصدير مرجع ثابت إلى نموذج تضمين نص Gecko:
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
إذا كان بإمكانك الوصول إلى نماذج Claude 3 (haiku أو sonnet أو opus) في Vertex AI، يمكنك استخدامها مع 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
. يوضّح المثال أسلوبَين: يستخدم المقياس Safety
المواصفات التلقائية، بينما يقدّم المقياس ROUGE
مواصفات مخصّصة تضبط نوع التظليل على rougeLsum
.
يمكن تشغيل كِلا المقيّمين باستخدام الأمر genkit eval:run
مع مجموعة بيانات متوافقة، أي مجموعة بيانات تتضمّن الحقلَين output
وreference
. يمكن أيضًا تشغيل مقيِّم Safety
باستخدام الأمر genkit eval:flow -e vertexai/safety
لأنّه لا يتطلّب سوى output
.