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:
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>
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.
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>
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.
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.
- Siga los pasos de Creación de un grupo dinámico con los siguientes detalles para la regla de coincidencia:
- En la sección Reglas de coincidencia, seleccione Coincidir con cualquier regla definida a continuación.
- 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>'}
- 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, comotarget.object.name
, no está soportada y el trabajo de ingestión de datos puede fallar.
Si los datos están en el almacén de vectores de Oracle Database u OCI Search con OpenSearch, realice las siguientes tareas:
- Para los datos de Oracle Database, realice las tareas de RAG Tool Oracle Database Guidelines for Generative AI Agents.
- Para OCI Search con datos de OpenSearch, realice las tareas de RAG Tool OCI Search with OpenSearch Guidelines for Generative AI Agents.
- Siga los pasos de Creación de un grupo dinámico con los siguientes detalles para la regla de coincidencia:
- En la sección Reglas de coincidencia, seleccione Coincidir con cualquier regla definida a continuación.
- 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. - 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>
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 agentegenai-agent-knowledge-base
: base de conocimientos asociada a un agente.genai-agent-data-source
: origen de datos asociado a una base de conocimientosgenai-agent-data-ingestion-job
: trabajo que ingiere datos de un origen de datos.genai-agent-endpoint
: punto final para acceder al agentegenai-agent-work-request
: solicitud de trabajo para operaciones de agentes de IA generativagenai-agent-session
: sesión de chat de un agentegenai-agent-tool
: herramienta configurada en un agente
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 |
|
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.
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
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
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
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
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
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
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
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.
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 |