Firebase Genkit tiene integraciones incorporadas que te ayudan a implementar tus flujos en Firebase Cloud Functions y Google Cloud Run, pero también puedes implementarlos en cualquier plataforma que pueda entregar una app de Express.js, ya sea un servicio en la nube o autoalojada.
En esta página, a modo de ejemplo, se explica el proceso de implementación del flujo de muestra predeterminado.
Instala las herramientas necesarias:
- Asegúrate de usar la versión 20 del nodo o una posterior (ejecuta
node --version
para verificarlo).
- Asegúrate de usar la versión 20 del nodo o una posterior (ejecuta
Crea un directorio para el proyecto de muestra de Genkit:
export GENKIT_PROJECT_HOME=~/tmp/genkit-express-project
mkdir -p $GENKIT_PROJECT_HOME
cd $GENKIT_PROJECT_HOME
Si vas a usar un IDE, ábrelo en este directorio.
Inicializa un proyecto de Node.js:
npm init -y
Inicializa un proyecto de Genkit:
genkit init
Selecciona
Node.js
como la opción de plataforma de implementación (también están disponibles las plantillas para Firebase Cloud Functions y Google Cloud Run).Selecciona tu modelo:
Gemini (IA de Google)
La forma más sencilla de comenzar es con la API de Gemini de la IA de Google. Asegúrate de que esté disponible en tu región.
Genera una clave de API para la API de Gemini con Google AI Studio. Luego, establece la variable de entorno
GOOGLE_API_KEY
en tu clave:export GOOGLE_API_KEY=<your API key>
Gemini (Vertex AI)
Si la API de Gemini de Google AI no está disponible en tu región, considera usar la API de Vertex AI, que también ofrece Gemini y otros modelos. Deberás tener un proyecto de Google Cloud con facturación habilitada, habilitar la API de AI Platform y configurar algunas variables de entorno adicionales:
gcloud services enable aiplatform.googleapis.com
export GCLOUD_PROJECT=<your project ID>
export GCLOUD_LOCATION=us-central1
Consulta https://cloud.google.com/vertex-ai/generative-ai/pricing para conocer los precios de Vertex AI.
Elige las respuestas predeterminadas para el resto de las preguntas, que inicializarán la carpeta del proyecto con algún código de muestra.
Compila y ejecuta el código de muestra:
npm run build
genkit flow:run menuSuggestionFlow "\"banana\"" -s
Opcional: Inicia la IU para desarrolladores:
genkit start
Luego, navega a http://localhost:4000/flows y ejecuta el flujo con la IU del desarrollador.
Cuando hayas terminado, presiona Ctrl+C en la consola para salir de la IU.
Prueba el extremo Express:
npm run start
Luego, en otra ventana:
curl -X POST "http://127.0.0.1:3400/menuSuggestionFlow?stream=true" -H "Content-Type: application/json" -d '{"data": "banana"}'
Si todo funciona como se espera, puedes implementar el flujo en el proveedor que elijas. Los detalles dependerán del proveedor, pero, en general, debes establecer las siguientes opciones de configuración:
Parámetro de configuración Valor Entorno de ejecución Node.js 20 o una versión más reciente Comando de compilación npm run build
Comando de inicio npm run start
Variables de entorno GOOGLE_API_KEY=<your-api-key>
(o los secretos que sean obligatorios)