Obtendo Acesso a Agentes do AI Generativa
Você pode obter acesso a recursos de Agentes de IA Generativa com políticas do OCI Identity and Access Management (IAM).
Por padrão, somente os usuários do grupo Administrators
têm acesso a todos os recursos do OCI, incluindo recursos do serviço Generative AI Agents. Se você for membro de outro grupo, peça ao administrador para atribuir a você o mínimo de privilégios necessários para executar suas responsabilidades revisando as seções a seguir.
Adicionando Políticas Antes de Usar o Serviço
Antes de usar Agentes do Generative AI, peça ao administrador para adicionar as seguintes políticas:
Fornecer aos usuários acesso a recursos de Agentes de IA Generativa, como agentes, bases de conhecimento, origens de dados, jobs de ingestão de dados, sessões do agente, solicitações de serviço do agente e pontos finais
- Para obter acesso a todos os recursos dos Agentes de IA Generativa em toda a tenancy, use a seguinte política:
allow group <genai-agent-administrators> to manage genai-agent-family in tenancy
- Para obter acesso a todos os recursos dos Agentes de IA Generativa em seu compartimento, use a seguinte política:
allow group <genai-agent-administrators> to manage genai-agent-family in compartment <your-compartment-name>
Para selecionar apenas recursos específicos que os usuários podem acessar, consulte Sobre Tipos de Recurso de Agentes de IA Generativa e Concedendo aos Usuários Permissão Granular para Cada Tipo de Recurso.
Se os arquivos de dados do seu agente estiverem nos buckets do OCI Object Storage, você precisará de permissão para listar e selecionar esses arquivos no serviço Generative AI Agents.
- Para conceder permissão aos usuários para adicionar arquivos do Object Storage às suas bases de conhecimento:
allow group <your-group-name> to manage object-family in compartment <compartment-with-bucket>
Se os arquivos e agentes do serviço Object Storage estiverem em compartimentos diferentes, certifique-se de que os usuários que criam os agentes tenham permissão para
manage object-family
no compartimento com o bucket.Peça a um administrador para revisar os exemplos em Protegendo o Serviço Object Storage e adicionar políticas que se apliquem a você, como políticas, para evitar a exclusão acidental de buckets que contenham dados de treinamento.
Para ingerir grandes quantidades de conteúdo do OCI Object Storage, siga estas etapas para criar controladores de recursos para jobs de ingestão de dados que podem ser executados por mais de 24 horas.
- Siga as etapas em Criando um Grupo Dinâmico com as seguintes especificidades para a regra de correspondência:
- Na seção Regras de Correspondência, selecione Corresponder a quaisquer regras definidas abaixo.
- Informe a regra de correspondência a seguir.
ALL {resource.type='genaiagentdataingestionjob'}
O tipo de recurso
genaiagentdataingestionjob
é o controlador de recursos para jobs de ingestão de dados. A regra de correspondência anterior significa que esse grupo dinâmico representa o recurso do job de ingestão de dados dos Agentes de IA Generativa.Para restringir a associação do grupo dinâmico a jobs de ingestão de dados criados em um compartimento específico, em vez da regra de correspondência anterior, use a seguinte:
ALL {resource.type = 'genaiagentdataingestionjob', resource.compartment.id = '<compartment-ocid-for-ingestion-jobs>'}
- Permita que esse grupo dinâmico acesse objetos do Object Storage em um compartimento especificado.
allow dynamic-group <dynamic-group-name> to read objects in compartment <compartment-name-for-objects>
Você pode restringir ainda mais as políticas com mais condições. Por exemplo: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 Protegendo o Serviço Object Storage para obter mais exemplos sobre como gravar políticas.
Observação
Você pode restringir o acesso ao serviço Object Storage usando condições que incluam nomes de buckets, compartimentos e tags. A restrição de acesso especificando um nome de objeto ou prefixo em uma política, comotarget.object.name
, não é suportada e o job de ingestão de dados pode falhar.
Se seus dados estiverem no armazenamento de vetores do Oracle Database ou no OCI Search com OpenSearch, execute as seguintes tarefas:
- Para dados do Oracle Database, execute as tarefas em Diretrizes do Oracle Database para Agentes de IA Generativa da Ferramenta RAG.
- Para a Pesquisa do OCI com dados OpenSearch, execute as tarefas na Ferramenta RAG OCI Search com Diretrizes OpenSearch para Agentes de IA Generativa.
- Siga as etapas em Criando um Grupo Dinâmico com as seguintes especificidades para a regra de correspondência:
- Na seção Regras de Correspondência, selecione Corresponder a quaisquer regras definidas abaixo.
- Informe a regra de correspondência a seguir.
ALL {resource.type='genaiagent'}
O tipo de recurso
genaiagent
é o controlador de recursos para agentes. A regra de correspondência anterior significa que este grupo dinâmico representa o recurso do agente Agentes de IA Generativa. - Permita que este grupo dinâmico acesse segredos do OCI Vault no compartimento com o armazenamento de vetores do Oracle Database ou o segredo OpenSearch do OCI Search.
Escreva a seguinte política, que pode ser usada com o domínio de identidades Padrão:
allow dynamic-group <dynamic-group-name> to read secret-bundle in compartment <compartment-name>
Use a seguinte política com um domínio de identidades que não seja Padrão, fornecendo o nome de domínio do Oracle Identity Cloud Service (IDCS) e o nome do grupo dinâmico:
allow dynamic-group '<idcs-domain-name>/<dynamic-group-name>' to read secret-bundle in compartment <compartment-name>
Se seus dados estiverem no Oracle Database 23ai, permita que o grupo dinâmico, que você criou para acesso de serviço ao OCI Vault, acesse também o OCI Database Tools.
Escreva a seguinte política, que pode ser usada com o domínio de identidades Padrão:
allow dynamic-group <dynamic-group-name>
to read database-tools-family in compartment <compartment-name>
Use a seguinte política com um domínio de identidades que não seja Padrão, fornecendo o nome de domínio do Oracle Identity Cloud Service (IDCS) e o nome do grupo dinâmico:
allow dynamic-group '<idcs-domain-name>/<dynamic-group-name>'
to read database-tools-family in compartment <compartment-name>
Sobre Tipos de Recursos de Agentes de IA Generativa
Os Agentes de IA Generativa têm os seguintes tipos de recursos individuais a serem usados nas políticas de Gerenciamento de Identidade e Acesso. Você pode atribuir permissões diferentes a grupos de usuários diferentes com base em como eles podem usar os seguintes tipos de recursos:
genai-agent
: Um agentegenai-agent-knowledge-base
: A base de conhecimento associada a um agente.genai-agent-data-source
: A origem de dados associada a uma base de conhecimentogenai-agent-data-ingestion-job
: O job que ingere dados de uma origem de dados.genai-agent-endpoint
: Um ponto final para acessar o agentegenai-agent-work-request
: A solicitação de serviço para operações de Agentes de IA Generativagenai-agent-session
: Sessão de chat de um agentegenai-agent-tool
: Uma ferramenta configurada em um agente
genai-agent-family
, para incluir todos os sete tipos de recursos dos Agentes de IA Generativa em uma política, por exemplo: allow group <genai-agent-administrators> to manage genai-agent-family in tenancy
Resource-Type Agregado | Tipos de recursos individuais incluídos |
---|---|
genai-agent-family |
|
Concedendo aos Usuários Permissão Granular para Cada Tipo de Recurso
Esta seção lista as permissões para operações de Agentes de IA Generativa. O nível de acesso é cumulativo conforme você vai de inspect
a read
a use
a manage
. Por exemplo, se você tiver permissão para manage
o tipo de recurso genai-agent-endpoint
, poderá listar, obter detalhes de, criar e excluir pontos finais. Você não precisa de outra permissão para inspect
os pontos finais. Expanda cada resource-type para suas permissões.
Permissão | Operação de API | Tipo de Operação | 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 |
Exemplo:
allow group GenAI-agents-users to use genai-agent in compartment GenAI-agents-compartment
Permissão | Operação de API | Tipo de Operação | 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 exemplo:
allow group GenAI-agents-users to manage genai-agent-knowledge-base in compartment GenAI-agents-compartment
Permissão | Operação de API | Tipo de Operação | 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 exemplo:
allow group GenAI-agents-users to inspect genai-agent-data-source in compartment GenAI-agents-compartment
Permissão | Operação de API | Tipo de Operação | 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 |
Exemplo:
allow group GenAI-agents-users to inspect genai-agent-data-ingestion-job in compartment GenAI-agents-compartment
Permissão | Operação de API | Tipo de Operação | 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 |
Por exemplo:
allow group GenAI-agents-users to manage genai-agent-endpoint in compartment GenAI-agents-compartment
Permissão | Operação de API | Tipo de Operação | 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 exemplo:
allow group GenAI-agents-users to read genai-agent-work-request in compartment GenAI-agents-compartment
Permissão | Operação de API | Tipo de Operação | 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 |
Por exemplo:
allow group GenAI-agents-users to manage genai-agent-session in compartment GenAI-agents-compartment
Permissão | Operação de API | Tipo de Operação | 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 |
Exemplo:
allow group GenAI-agents-users to use genai-agent-tool in compartment GenAI-agents-compartment
Correspondendo Permissões a Operações de API
A tabela a seguir lista as permissões necessárias para operações de API de Agentes de IA Generativa.
Operação de API | Permissões Obrigatórias para Usar a Operação |
---|---|
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 |