Cómo solucionar errores 401 con incrustaciones de Gemini

Estimados, buenas tardes,
Espero que estén muy bien.

Estoy utilizando el complemento de IA y actualmente uso el modelo Gemini tanto para el lenguaje generativo como para los embeddings (incrustaciones). Sin embargo, tras algunos cambios por parte de Google, parece que hay algunos errores que impiden que el foro de Discourse se conecte a la API de Gemini; estoy teniendo dificultades para que mi foro acceda a Gemini para generar embeddings.

Configuración de embeddings

Antes tenía la siguiente URL en la configuración del modelo para embeddings usando Gemini (pero obtenía errores):
https://generativelanguage.googleapis.com/v1beta/models/gemini-embedding-001:embedContent

Al revisar la documentación en internet, encontré que la URL debería seguir en su lugar un patrón como:
https://{zona}-aiplatform.googleapis.com/v1/projects/{referencia del proyecto de Google Cloud}/locations/{zona}/publishers/google/models/gemini-embedding-001:embedContent

Cómo se manifiesta el problema en mi caso

  1. Obtengo los siguientes errores:
    Intentando contactar al modelo, se devolvió este error: { "error": { "code": 401, "message": "Las claves de API no son compatibles con esta API. Se esperaba un token de acceso OAuth2 u otras credenciales de autenticación que afirmen un principal. Consulte https://cloud.google.com/docs/authentication", "status": "UNAUTHENTICATED", "details": \[ { "@type": "type.googleapis.com/google.rpc.ErrorInfo", "reason": "CREDENTIALS_MISSING", "domain": "googleapis.com", "metadata": { "method": "google.cloud.aiplatform.v1.PredictionService.EmbedContent", "service": "aiplatform.googleapis.com" } } \] } }
  2. Los temas creados recientemente no tienen embeddings, presumiblemente, y por lo tanto, en lugar de la sección impulsada por IA “Temas relacionados” después de la publicación, la sección muestra “Temas nuevos y no leídos” — solo para los temas creados recientemente, ya que obtengo errores.

Esto sugiere que quizás necesitemos pasar más que solo una clave de API. Me siento un poco perdido.

Información adicional

Mis preguntas

  1. ¿Hay algo que me esté faltando?
  2. ¿Alguien tiene la IA funcionando con modelos Gemini y ha tenido que cambiar su configuración usando cuentas de servicio (service principals)?
  3. ¿Cuál es la URL correcta del servicio de embeddings para usar con los modelos de embedding de Gemini?

Muchas gracias por su valiosa ayuda y consejos.
Saludos.

Esto es Google AI Studio frente a Gemini Enterprise Agent Platform (antes Vertex AI).

Para embeddings, solo somos compatibles con el primero.

Acabamos de recibir una PR para hacer que nuestra inferencia de LLM sea compatible con el segundo, ya que antes solo éramos compatibles con el primero para los LLM también.

Muchas gracias por la información, está claro. He cambiado a la API de AI Studio para los embeddings y, efectivamente, ahora todo funciona. Volveré a la Enterprise Agent Platform en cuanto la inferencia de LLM sea compatible.

Saludos.