Obtención de acceso a agentes de IA generativa

Puede obtener acceso a los recursos de agentes de IA generativa con las políticas de OCI Identity and Access Management (IAM).

Por defecto, solo los usuarios del grupo Administrators tienen acceso a todos los recursos de OCI, incluidos los recursos de agentes de IA generativa. Si es miembro de otro grupo, solicite al administrador que le asigne los privilegios mínimos necesarios para desempeñar sus responsabilidades revisando las siguientes secciones.

Adición de políticas antes de utilizar el servicio

Antes de utilizar agentes de IA generativa, solicite al administrador que agregue las siguientes políticas:

Acceso de usuario a todos los recursos de agentes de IA generativa

Otorgue a los usuarios acceso a recursos de agentes de IA generativa, como agentes, bases de conocimientos, orígenes de datos, trabajos de ingestión de datos, sesiones de agente, solicitudes de trabajo de agente y puntos finales.

  • Para obtener acceso a todos los recursos de agentes de IA generativa de todo el arrendamiento, utilice la siguiente política:
    allow group <genai-agent-administrators> to manage genai-agent-family in tenancy
  • Para obtener acceso a todos los recursos de agentes de IA generativa del compartimento, utilice la siguiente política:
    allow group <genai-agent-administrators> to manage genai-agent-family in compartment <your-compartment-name>
Importante

Para seleccionar solo recursos específicos a los que los usuarios pueden acceder, consulte About Generative AI Agents Resource-Types y Giving Users Granular Permission for Each Resource-Type.

Acceso de usuario a archivos de Object Storage para orígenes de datos

Si los archivos de datos de su agente están en cubos de OCI Object Storage, necesita permiso para mostrar y seleccionar esos archivos en el servicio Generative AI Agents.

  • Para otorgar permiso a los usuarios para agregar archivos de Object Storage a sus bases de conocimientos:
    allow group <your-group-name> to manage object-family in compartment <compartment-with-bucket>
Nota

Si los archivos y agentes de Object Storage están en compartimentos diferentes, asegúrese de que los usuarios que crean los agentes tienen permiso para manage object-family en el compartimento con el cubo.

Pida a un administrador que revise los ejemplos de Protección de Object Storage y agregue políticas que se apliquen a usted, como políticas, para evitar la supresión accidental de cubos que contienen datos de formación.

Acceso de trabajo de ingesta de datos a archivos de Object Storage para trabajos de larga ejecución

Para ingerir grandes cantidades de contenido de OCI Object Storage, siga estos pasos para crear entidades de recurso para trabajos de ingestión de datos que puedan ejecutarse durante más de 24 horas.

  1. Siga los pasos de Creación de un grupo dinámico con los siguientes detalles para la regla de coincidencia:
    1. En la sección Reglas de coincidencia, seleccione Coincidir con cualquier regla definida a continuación.
    2. Introduzca la siguiente regla de coincidencia.
      ALL {resource.type='genaiagentdataingestionjob'}

      El tipo de recurso genaiagentdataingestionjob es la entidad de recurso para los trabajos de ingestión de datos. La regla de coincidencia anterior significa que este grupo dinámico representa el recurso de trabajo de ingestión de datos de agentes de IA generativos.

      Para restringir la pertenencia a un grupo dinámico a trabajos de ingestión de datos creados en un compartimento específico, en lugar de la regla de coincidencia anterior, utilice la siguiente:

      ALL {resource.type = 'genaiagentdataingestionjob', 
      resource.compartment.id = '<compartment-ocid-for-ingestion-jobs>'}
      
    3. Permita que este grupo dinámico acceda a los objetos de Object Storage de un compartimento especificado.
      allow dynamic-group <dynamic-group-name> 
      to read objects in compartment <compartment-name-for-objects>
      
      Puede restringir aún más las políticas con más condiciones. Por ejemplo:
      allow dynamic-group <dynamic-group-name> 
      to read objects in tenancy where all {target.compartment.id='<compartment_ocid>', 
      target.bucket.name=<bucket-name>, 
      target.bucket.tag.MyTagNamespace.TagKey='<MyTagValue>'}
      

      Consulte Protección de Object Storage para obtener más ejemplos sobre la escritura de políticas.

      Nota

      Puede restringir el acceso a Object Storage mediante condiciones que incluyen nombres de cubo, compartimentos y etiquetas. La restricción del acceso mediante la especificación de un nombre o prefijo de objeto en una política, como target.object.name, no está soportada y el trabajo de ingestión de datos puede fallar.
Acceso de servicio al secreto de Vault para Oracle Database y OpenSearch

Si los datos están en el almacén de vectores de Oracle Database u OCI Search con OpenSearch, realice las siguientes tareas:

  1. Para los datos de Oracle Database, realice las tareas de RAG Tool Oracle Database Guidelines for Generative AI Agents.
  2. Para OCI Search con datos de OpenSearch, realice las tareas de RAG Tool OCI Search with OpenSearch Guidelines for Generative AI Agents.
  3. Siga los pasos de Creación de un grupo dinámico con los siguientes detalles para la regla de coincidencia:
    1. En la sección Reglas de coincidencia, seleccione Coincidir con cualquier regla definida a continuación.
    2. Introduzca la siguiente regla de coincidencia.
      ALL {resource.type='genaiagent'}

      El tipo de recurso genaiagent es la entidad de recurso para agentes. La regla de coincidencia anterior significa que este grupo dinámico representa el recurso del agente de agentes de IA generativos.

    3. Permita que este grupo dinámico acceda a los secretos de OCI Vault en el compartimento con el almacén de vectores de Oracle Database u OCI Search con el secreto OpenSearch.

      Escriba la siguiente política, que se puede utilizar con el dominio de identidad por defecto:

      allow dynamic-group <dynamic-group-name> 
      to read secret-bundle in compartment <compartment-name>
      

      Utilice la siguiente política con un dominio de identidad no por defecto, proporcionando el nombre de dominio de Oracle Identity Cloud Service (IDCS) y el nombre de grupo dinámico:

      allow dynamic-group '<idcs-domain-name>/<dynamic-group-name>' 
      to read secret-bundle in compartment <compartment-name>
      
Acceso de servicio a las herramientas de Oracle Database

Si los datos están en Oracle Database 23ai, permita que el grupo dinámico, que ha creado para el acceso de servicio a OCI Vault, acceda también a OCI Database Tools.

Escriba la siguiente política, que se puede utilizar con el dominio de identidad por defecto:

allow dynamic-group <dynamic-group-name> 
to read database-tools-family in compartment <compartment-name>

Utilice la siguiente política con un dominio de identidad no por defecto, proporcionando el nombre de dominio de Oracle Identity Cloud Service (IDCS) y el nombre de grupo dinámico:

allow dynamic-group '<idcs-domain-name>/<dynamic-group-name>' 
to read database-tools-family in compartment <compartment-name>

Acerca de los tipos de recursos de agentes de IA generativa

Los agentes de IA generativa tienen los siguientes tipos de recursos individuales para utilizarlos en las políticas de Identity and Access Management. Puede asignar diferentes permisos a diferentes grupos de usuarios en función de cómo pueden utilizar los siguientes tipos de recursos:

  • genai-agent: un agente
  • genai-agent-knowledge-base: base de conocimientos asociada a un agente.
  • genai-agent-data-source: origen de datos asociado a una base de conocimientos
  • genai-agent-data-ingestion-job: trabajo que ingiere datos de un origen de datos.
  • genai-agent-endpoint: punto final para acceder al agente
  • genai-agent-work-request: solicitud de trabajo para operaciones de agentes de IA generativa
  • genai-agent-session: sesión de chat de un agente
  • genai-agent-tool: herramienta configurada en un agente
Además de los tipos de recursos individuales enumerados anteriormente, puede utilizar el tipo de recurso agregado, genai-agent-family, para incluir los siete tipos de recursos de agentes de IA generativa en una política, por ejemplo:
allow group <genai-agent-administrators> to manage genai-agent-family in tenancy
Tipo de recurso agregado Tipos de recursos individuales incluidos
genai-agent-family
  • genai-agent
  • genai-agent-knowledge-base
  • genai-agent-data-source
  • genai-agent-data-ingestion-job
  • genai-agent-endpoint
  • genai-agent-work-request
  • genai-agent-session
  • genai-agent-tool

Otorgamiento de permisos granulares a los usuarios para cada tipo de recurso

En esta sección, se muestran los permisos para las operaciones de agentes de IA generativos. El nivel de acceso es acumulativo a medida que pasa de inspect a read a use a manage. Por ejemplo, si tiene permiso para manage el tipo de recurso genai-agent-endpoint, puede mostrar, obtener detalles, crear y suprimir puntos finales. No necesita otro permiso para inspect los puntos finales. Amplíe cada tipo de recurso para sus permisos.

genai-agente
Permiso Operación de API Tipo de Operación Verbo
GENAI_AGENT_INSPECT ListAgents GET inspect
GENAI_AGENT_READ GetAgent GET read
GENAI_AGENT_UPDATE UpdateAgent PUT use
GENAI_AGENT_MOVE ChangeAgentCompartment POST manage
GENAI_AGENT_CREATE CreateAgent POST manage
GENAI_AGENT_DELETE DeleteAgent DELETE manage

Por ejemplo:

allow group GenAI-agents-users to use genai-agent in compartment GenAI-agents-compartment
genai-agente-conocimiento-base
Permiso Operación de API Tipo de Operación Verbo
GENAI_AGENT_KNOWLEDGE_BASE_INSPECT ListKnowledgeBases GET inspect
GENAI_AGENT_KNOWLEDGE_BASE_READ GetKnowledgeBase GET read
GENAI_AGENT_KNOWLEDGE_BASE_UPDATE UpdateKnowledgeBase PUT use
GENAI_AGENT_KNOWLEDGE_BASE_MOVE ChangeKnowledgeBaseCompartment POST manage
GENAI_AGENT_KNOWLEDGE_BASE_CREATE CreateKnowledgeBase POST manage
GENAI_AGENT_KNOWLEDGE_BASE_DELETE DeleteKnowledgeBase DELETE manage

Por ejemplo:

allow group GenAI-agents-users to manage genai-agent-knowledge-base in compartment GenAI-agents-compartment
genai-agente-fuente de datos
Permiso Operación de API Tipo de Operación Verbo
GENAI_AGENT_DATA_SOURCE_INSPECT ListDataSources GET inspect
GENAI_AGENT_DATA_SOURCE_READ GetDataSource GET read
GENAI_AGENT_DATA_SOURCE_UPDATE UpdateDataSource PUT use
GENAI_AGENT_DATA_SOURCE_MOVE ChangeDataSourceCompartment POST manage
GENAI_AGENT_DATA_SOURCE_CREATE CreateDataSource POST manage
GENAI_AGENT_DATA_SOURCE_DELETE DeleteDataSource DELETE manage

Por ejemplo:

allow group GenAI-agents-users to inspect genai-agent-data-source in compartment GenAI-agents-compartment
genai-agente-datos-ingestión-trabajo
Permiso Operación de API Tipo de Operación Verbo
GENAI_AGENT_DATA_INGESTION_JOB_INSPECT ListDataIngestionJobs GET inspect
GENAI_AGENT_DATA_INGESTION_JOB_READ GetDataIngestionJob GET read
GENAI_AGENT_DATA_INGESTION_JOB_CREATE CreateDataIngestionJob POST manage
GENAI_AGENT_DATA_INGESTION_JOB_DELETE DeleteDataIngestionJob DELETE manage

Ejemplo:

allow group GenAI-agents-users to inspect genai-agent-data-ingestion-job in compartment GenAI-agents-compartment
genai-agente-punto final
Permiso Operación de API Tipo de Operación Verbo
GENAI_AGENT_ENDPOINT_INSPECT ListAgentEndpoints GET inspect
GENAI_AGENT_ENDPOINT_READ GetAgentEndpoint GET read
GENAI_AGENT_ENDPOINT_UPDATE UpdateAgentEndpoint PUT use
GENAI_AGENT_ENDPOINT_MOVE ChangeAgentEndpointCompartment POST use
GENAI_AGENT_ENDPOINT_CREATE CreateAgentEndpoint POST manage
GENAI_AGENT_ENDPOINT_CHAT Chat POST use
GENAI_AGENT_ENDPOINT_DELETE DeleteAgentEndpoint DELETE manage

Ejemplo:

allow group GenAI-agents-users to manage genai-agent-endpoint in compartment GenAI-agents-compartment
genai-agente-solicitud de trabajo
Permiso Operación de API Tipo de Operación Verbo
GENAI_AGENT_WORK_REQUEST_INSPECT ListWorkRequests GET inspect
GENAI_AGENT_WORK_REQUEST_READ GetWorkRequest GET read
GENAI_AGENT_WORK_REQUEST_ERRORS_READ GetWorkRequestErrors GET read
GENAI_AGENT_WORK_REQUEST_LOGS_READ GetWorkRequestLogs GET read

Por ejemplo:

allow group GenAI-agents-users to read genai-agent-work-request in compartment GenAI-agents-compartment
genai-agente-sesión
Permiso Operación de API Tipo de Operación Verbo
GENAI_AGENT_SESSION_INSPECT ListSessions GET inspect
GENAI_AGENT_SESSION_READ GetSession GET read
GENAI_AGENT_SESSION_UPDATE UpdateSession PUT use
GENAI_AGENT_SESSION_CREATE CreateSession POST manage
GENAI_AGENT_SESSION_END EndSession POST manage
GENAI_AGENT_SESSION_DELETE DeleteSession DELETE manage

Ejemplo:

allow group GenAI-agents-users to manage genai-agent-session in compartment GenAI-agents-compartment
genai-agente-herramienta
Permiso Operación de API Tipo de Operación Verbo
GENAI_AGENT_TOOL_INSPECT ListTools GET inspect
GENAI_AGENT_TOOL_READ GetTool GET read
GENAI_AGENT_TOOL_UPDATE UpdateTool PUT use
GENAI_AGENT_TOOL_CREATE CreateTool POST manage
GENAI_AGENT_TOOL_DELETE DeleteTool DELETE manage

Ejemplo:

allow group GenAI-agents-users to use genai-agent-tool in compartment GenAI-agents-compartment

Coincidencia de permisos con operaciones de API

En la siguiente tabla, se muestran los permisos necesarios para las operaciones de API de agentes de IA generativa.

Ampliar esta tabla de permisos
Operación de API Permisos necesarios para utilizar la operación
ListAgents GENAI_AGENT_INSPECT
GetAgent GENAI_AGENT_READ
UpdateAgent GENAI_AGENT_UPDATE
ChangeAgentCompartment GENAI_AGENT_MOVE
CreateAgent GENAI_AGENT_CREATE
DeleteAgent GENAI_AGENT_DELETE
ListKnowledgeBases GENAI_AGENT_KNOWLEDGE_BASE_INSPECT
GetKnowledgeBase GENAI_AGENT_KNOWLEDGE_BASE_READ
UpdateKnowledgeBase GENAI_AGENT_KNOWLEDGE_BASE_UPDATE
ChangeKnowledgeBaseCompartment GENAI_AGENT_KNOWLEDGE_BASE_MOVE
CreateKnowledgeBase GENAI_AGENT_KNOWLEDGE_BASE_CREATE
DeleteKnowledgeBase GENAI_AGENT_KNOWLEDGE_BASE_DELETE
ListDataSources GENAI_AGENT_DATA_SOURCE_INSPECT
GetDataSource GENAI_AGENT_DATA_SOURCE_READ
UpdateDataSource GENAI_AGENT_DATA_SOURCE_UPDATE
ChangeDataSourceCompartment GENAI_AGENT_DATA_SOURCE_MOVE
CreateDataSource GENAI_AGENT_DATA_SOURCE_CREATE
DeleteDataSource GENAI_AGENT_DATA_SOURCE_DELETE
ListDataIngestionJobs GENAI_AGENT_DATA_INGESTION_JOB_INSPECT
GetDataIngestionJob GENAI_AGENT_DATA_INGESTION_JOB_READ
CreateDataIngestionJob GENAI_AGENT_DATA_INGESTION_JOB_CREATE
DeleteDataIngestionJob GENAI_AGENT_DATA_INGESTION_JOB_DELETE
ListAgentEndpoints GENAI_AGENT_ENDPOINT_INSPECT
GetAgentEndpoint GENAI_AGENT_ENDPOINT_READ
UpdateAgentEndpoint GENAI_AGENT_ENDPOINT_UPDATE
ChangeAgentEndpointCompartment GENAI_AGENT_ENDPOINT_MOVE
CreateAgentEndpoint AGENAI_AGENT_ENDPOINT_CREATE
DeleteAgentEndpoint GENAI_AGENT_ENDPOINT_DELETE
Chat GENAI_AGENT_ENDPOINT_CHAT
ListTools GENAI_AGENT_TOOL_INSPECT
CreateTool GENAI_AGENT_TOOL_CREATE
GetTool GENAI_AGENT_TOOL_READ
UpdateTool GENAI_AGENT_TOOL_UPDATE
DeleteTool GENAI_AGENT_TOOL_DELETE
ListSessions GENAI_AGENT_SESSION_INSPECT
GetSession GENAI_AGENT_SESSION_READ
UpdateSession GENAI_AGENT_SESSION_UPDATE
CreateSession GENAI_AGENT_SESSION_CREATE
EndSession GENAI_AGENT_SESSION_END
DeleteSession GENAI_AGENT_SESSION_DELETE
ListWorkRequests GENAI_AGENT_WORK_REQUEST_INSPECT
GetWorkRequest GENAI_AGENT_WORK_REQUEST_READ
GetWorkRequestErrors GENAI_AGENT_WORK_REQUEST_ERRORS_READ
GetWorkRequestLogs GENAI_AGENT_WORK_REQUEST_LOGS_READ