يوفّر مكوّن Vertex AI الإضافي واجهات للعديد من نماذج الذكاء الاصطناعي التوليدي من Google من خلال Vertex AI API:
- إنشاء نص في Gemini 1.0 Pro وGemini 1.0 Pro Vision
- إنشاء صور في Imagen2
- إنشاء تضمين نص أبو بريص
وتوفّر أيضًا إمكانية الوصول إلى مجموعة فرعية من مقاييس التقييم من خلال واجهة برمجة التطبيقات للتقييم السريع 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 وCloud Run وغير ذلك)، يتم ضبطGCLOUD_PROJECT
تلقائيًا على رقم تعريف المشروع للبيئة.يمكنك تحديد موقع واجهة برمجة التطبيقات إما من خلال ضبط
location
في إعداداتvertexAI()
أو ضبط متغير بيئةGCLOUD_LOCATION
.لتوفير بيانات اعتماد واجهة برمجة التطبيقات، يجب إعداد بيانات الاعتماد التلقائية لتطبيق Google Cloud.
لتحديد بيانات الاعتماد:
إذا كنت تشغِّل التدفق من بيئة Google Cloud (دوال Cloud و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 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 Accelerated Evaluation، يمكنك إضافة حظر 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
.