Pular para o conteúdo principalAWS Startups

Uma lista de verificação em sete etapas para preparar sua aplicação de IA generativa para a segurança

Como estava esse conteúdo?

A IA generativa tem experimentado um crescimento explosivo nos últimos anos, com aplicações que transformam a forma como as startups criam conteúdo, analisam dados e tomam decisões críticas. Cada vez mais, as organizações estão utilizando o poder dos modelos de IA generativa para criar aplicações personalizadas. Assim, as startups que experimentam e utilizam IA generativa devem priorizar a segurança e o uso responsável.

Neste post, desenvolvemos uma lista de verificação com sete itens que descreve as medidas fundamentais de segurança e conformidade que você deve considerar ao migrar suas aplicações baseadas em IA generativa da fase de experimentação para a fase de produção.

1. Estabelecer uma estrutura de governança e um processo de conformidade

2. Analisar e cumprir o Contrato de Licença do Usuário Final (EULA) e as políticas de uso de dados do provedor do grande modelo de linguagem (LLM).

3. Implementar controles de acesso completos

4. Mitigar os riscos de entrada e saída

5. Proteger seus dados

6. Proteger seu perímetro

7. Implementar o monitoramento abrangente e a resposta a incidentes

Ao implementar a lista de verificação, sua startup poderá mitigar riscos, proteger dados e preservar a confiança dos usuários. Embora quanto mais itens forem verificados, melhor será a defesa, não é necessário concluir todos os pontos de verificação, pois isso dependerá das necessidades da sua aplicação.

Os controles de segurança exigidos serão diferentes dependendo do tipo de modelo (pré-treinado, ajustado ou personalizado) que você estiver utilizando para criar sua aplicação. Nosso foco será em aplicações criadas utilizando modelos pré-treinados, que atendem à maioria dos casos de uso dos clientes.

1. Estabelecer uma estrutura de governança e um processo de conformidade

Estabelecer uma estrutura abrangente de governança e conformidade é a fundação para a implantação da IA responsável. Como pessoas e processos são fundamentais, comece formando um comitê multifuncional de governança de IA com especialistas das áreas jurídica, de segurança de TI e das unidades de negócios relevantes. Esse comitê deve criar e aplicar políticas específicas para sua aplicação de IA generativa, englobando tratamento de dados, seleção de modelos e diretrizes de uso.

Em seguida, desenvolva uma lista de verificação de conformidade sob medida para as regulamentações do seu setor (como RGPD ou PCI DSS). Essa lista deve abranger medidas de privacidade de dados, gerenciamento do consentimento e requisitos de transparência. Implemente uma revisão regular da conformidade, como auditorias trimestrais, para garantir a adesão aos padrões em desenvolvimento. Confira os seguintes blogs para obter mais orientações: Escalabilidade de um programa de governança, risco e conformidade para a nuvem, tecnologias emergentes e inovação e Proteção da IA generativa: considerações sobre dados, conformidade e privacidade.

Por último, configure um sistema de documentação para faixar decisões, alterações e o status de conformidade da sua aplicação de IA generativa. Inclua recursos como controle de versão para políticas, logs de auditoria para alterações no modelo e um painel para o status de conformidade. Esse sistema não apenas ajudará a manter a conformidade, como também fornecerá as evidências necessárias durante auditorias externas.

2. Analisar e cumprir o Contrato de Licença do Usuário Final (EULA) e as políticas de uso de dados do provedor do grande modelo de linguagem (LLM)

É essencial compreender as limitações e os requisitos específicos para manter a conformidade e evitar potenciais problemas legais. Antes de integrar um modelo pré-treinado na sua aplicação, reveja o EULA e as políticas de utilização de dados do seu fornecedor de LLM. Preste especial atenção às cláusulas relativas ao tratamento de dados, resultados do modelo e restrições à utilização comercial. Usuários do Amazon Bedrock devem consultar Acessar modelos de base do Amazon Bedrock. Se estiver realizando a implantação por conta própria no Amazon SageMaker, confira as origens de modelos na página de detalhes do modelo.

Além de garantir a conformidade, estar atento às novas atualizações também pode trazer oportunidades interessantes. Por exemplo, a licença do Meta Llama 3.1 é considerada mais permissiva do que suas antecessoras, abrindo novos casos de uso, como análises de documentos longos e criação de chatbots multilíngues avançados para uso global. Independentemente do modelo escolhido, revisar regularmente esses aspectos garante que sua aplicação possa aproveitar novas oportunidades.

3. Implementar controles de acesso completos

Ao desenvolver e implantar sua aplicação de IA generativa, você vai precisar de controles de acesso robustos para proteger o sistema e os dados. Isso inclui configurar políticas de autenticação, autorização e acesso a dados, tudo isso seguindo o princípio do privilégio mínimo (PoLP). A ideia por detrás do PoLP é que usuários e serviços tenham acesso apenas ao que precisam para realizar suas tarefas. Seguindo o PoLP, as equipes podem reduzir riscos potenciais à segurança e dificultar a entrada de invasores.

Comece implementando a autenticação do usuário utilizando serviços como o Amazon Cognito ou o Amazon Verified Permissions e configure controles de autorização para ajudar a aderir ao PoLP. Veja um exemplo de como você pode utilizar tokens JWT do Amazon Cognito para fazer a propagação de identidade e autorização refinada:

Defina controles de acesso para todas as partes da sua aplicação de IA generativa, incluindo LLM, bancos de dados, sistemas de armazenamento e quaisquer serviços ou APIs conectados. Utilize modelos que podem ser acessados com credenciais temporárias de curta duração (como as do Amazon Bedrock ou Amazon SageMaker) a fim de manter o acesso seguro e mais simples de gerenciar. O Amazon Bedrock também permite controlar exatamente quem pode acessar quais modelos, permitindo bloquear o acesso quando necessário.

Em seguida, certifique-se de que as sessões dos usuários e os contextos de conversas estejam isolados, implementando mecanismos que impeçam os usuários de acessar o conteúdo, os históricos de sessão ou as informações de conversas de outros usuários. Utilize identificadores de sessão exclusivos para os usuários e valide-os sempre que um usuário acessar o sistema. Implementar o gerenciamento de sessões no lado do servidor permitirá que você registre os históricos e o contexto das conversas em armazenamentos de dados isolados para cada usuário.

Para implementações de geração aumentada via recuperação (RAG), é fundamental gerenciar o acesso às bases de conhecimento utilizadas para aumentar as respostas do LLM. É possível simplificar isso utilizando as bases de conhecimento do Amazon Bedrock com filtragem de metadados, que fornecem controles de acesso integrados para garantir que os usuários recuperem apenas as informações às quais têm permissão para acessar. Se você estiver gerenciando seu próprio RAG, utilize o Amazon Kendra para filtrar as respostas com base nas permissões dos usuários. Consulte o diagrama acima (etapa 5) para conhecer uma ilustração de como funciona a filtragem de metadados.

4. Mitigar os riscos de entrada e saída

Após a implementação de controles de acesso, é possível concentrar-se nos mecanismos de avaliação para avaliar e mitigar os riscos associados às entradas do usuário e às saídas do modelo na sua aplicação de IA generativa. Isso ajuda a proteger contra vulnerabilidades, como ataques de injeção de prompts, geração de conteúdo inadequado ou alucinações.

É possível simplificar esse processo utilizando o Amazon Bedrock Guardrails. Com o Guardrails, você pode configurar defesas para entradas de prompts e saídas de modelos que podem ser aplicadas em LLMs no Amazon Bedrock, incluindo modelos ajustados e até mesmo aplicações de IA generativa fora do Amazon Bedrock.

Como precaução adicional, implemente um catálogo de prompts verificados (um conjunto pré-aprovado de prompts para tarefas comuns) utilizando o Amazon Bedrock Prompt Management, para gerenciar prompts de forma eficaz e proteger o LLM contra instruções prejudiciais.

A validação da saída é igualmente importante. As respostas do LLM devem ser tratadas com cautela: se o modelo estiver gerando código ou consultas ao banco de dados (que serão transmitidas a outros componentes), você deverá tratar sua saída como se tivesse se originado de um usuário não confiável. Sempre verifique as permissões e execute verificações de segurança antes de permitir que ele interaja com outros sistemas. Utilize métodos seguros, como consultas parametrizadas para bancos de dados, e revise a estrutura de qualquer SQL gerado antes de utilizá-lo. Você também pode limitar os riscos utilizando modelos de prompt nos prompts do sistema para controlar o formato das respostas do modelo.

Se os seus LLMs geram comandos ou códigos de sistema, é fundamental utilizar medidas de segurança robustas. Comece por empregar verificações de validação rigorosas. Isso inclui utilizar listas de permissões, verificar a sintaxe e compreender o que o código está tentando fazer. Para linguagens como JavaScript ou Markdown, sempre codifique a saída antes de mostrá-la aos usuários para proteger contra possíveis vulnerabilidades. Se o código da IA precisar ser executado, certifique-se de fazer isso em uma área restrita (um ambiente isolado) para manter seu sistema principal seguro caso algo dê errado.

5. Proteger seus dados

Em seguida, certifique-se de proteger os dados que seu modelo utiliza e aos quais ele responde (como consultas de usuários, contextos adicionais e bases de conhecimento utilizadas em sistemas de RAG) por meio de criptografia.

Esse processo é facilitado por serviços como o AWS Key Management Service, para gerenciamento, armazenamento e alternância seguros de chaves de criptografia, e o AWS Identity and Access Management (IAM), para controles de acesso. Também é possível ativar o versionamento para o armazenamento da sua base de conhecimento (como o versionamento do S3) para acompanhar as alterações e garantir que seus dados permaneçam confiáveis e seguros.

Se estiver lidando com dados sensíveis, é possível implementar o mascaramento ou bloqueio de dados utilizando filtros de informações confidenciais do Bedrock Guardrails.

6. Proteger seu perímetro

Agora que os dados estão seguros, é possível concentrar-se em proteger a infraestrutura da IA generativa. Ao utilizar dados privados, certifique-se de configurar um perímetro seguro para evitar a exposição à Internet pública. O endpoint de VPC do Amazon Bedrock estabelece uma conexão privada entre a Nuvem Privada Virtual (VPC) e a conta do Amazon Bedrock, reforçando a segurança dos dados e das interações do modelo.

LLMs utilizam um poder computacional significativo, tornando-os alvos de abusos. Para evitar isso, é possível definir limites para o volume de acesso dos usuários à sua aplicação. Utilize o AWS Web Application Firewall (WAF) para definir esses limites e o Amazon API Gateway para controlar a taxa de solicitações à sua aplicação. Essas medidas protegerão sua infraestrutura, garantindo o bom desempenho e a execução consistente do seu sistema.

7. Implementar o monitoramento abrangente e a resposta a incidentes

Após proteger sua configuração e seus dados, você pode agora se concentrar em proteger o monitoramento do sistema. Isso inclui implementar mecanismos de resposta para detectar e resolver rapidamente problemas de segurança. Monitore métricas de uso de LLMs, como volume de solicitações, latência e taxas de erro, para compreender a performance do seu sistema e detectar anomalias. O Amazon CloudWatch criará alertas quando essas métricas excederem os níveis definidos.

Paralelamente, é recomendável desenvolver um plano de resposta a incidentes para lidar com cenários como injeções de prompts, resultados inesperados do modelo ou vazamentos de dados. Defina um processo de escalonamento para cada cenário, incluindo o nome das principais ferramentas e dos membros da sua equipe e suas responsabilidades. Para concluir, configure um sistema como o Andon cord, que permite desligar rapidamente um modelo, reverter para uma versão anterior ou alternar para um modo seguro caso algo dê errado. Ter essas etapas claras para questões de segurança ajudará você a responder mais rapidamente e manter sua aplicação de IA segura e estável.

Conclusão

Esta lista de verificação com sete etapas é um guia essencial para levar sua aplicação de IA generativa desde a fase de protótipo até a fase de produção. Abordar e executar cada item ajudará você a criar e implantar de maneira responsável, protegendo tanto sua organização quanto seus usuários. E lembre-se: a IA generativa está evoluindo rapidamente e, por isso, é importante ficar em dia com os últimos desenvolvimentos em segurança de IA para manter sua aplicação (e sua startup) na vanguarda da inovação e da confiança. Confira Comunidade AWS – IA generativa para acompanhar nossas últimas atualizações!

Este post aborda os controles de segurança para aplicações que utilizam modelos pré-treinados. Se você está avaliando a possibilidade de utilizar modelos personalizados ou ajustados, consulte a Matriz de escopo de segurança da IA generativa para compreender os diferentes riscos e medidas de mitigação a serem observados de acordo com o tipo de modelo. Recomendamos também consultar Abordagem segura para IA generativa ou entrar em contato com sua equipe de contas para obter suporte adicional.

Riza Saputra

Riza Saputra

Riza é arquiteto de soluções sênior na AWS, trabalhando com startups em todos os estágios para ajudá-las a crescer com segurança, escalar com eficiência e inovar com mais rapidez. Seu foco atual é IA generativa, orientando organizações na construção e escalabilidade de soluções de IA com segurança e eficiência. Com experiência em diversos perfis, setores e empresas de diferentes tamanhos, ele traz uma perspectiva versátil para resolver desafios técnicos e de negócios. Riza também compartilha seu conhecimento por meio de palestras e conteúdo para apoiar a comunidade tecnológica em geral.

Glendon Thaiw

Glendon Thaiw

Glendon lidera uma equipe de arquitetos de soluções para startups em Cingapura, Malásia, Indonésia e Filipinas, dando suporte ao crescimento do ecossistema de startups do Sudeste Asiático. Ele trabalha em estreita colaboração com startups de SaaS e FinTech, auxiliando-as a maximizar o valor na AWS por meio do projeto de soluções em nuvem escaláveis e seguras. Com experiência em tecnologias de contêineres como Kubernetes e EKS, Glendon orienta startups em desafios técnicos e de conformidade. Ele também se dedica ao compartilhamento de conhecimento, participando regularmente de eventos e criando conteúdo para capacitar a comunidade de startups da região.

Ying Ting Ng

Ying Ting Ng

Ying Ting é arquiteta associada de soluções de segurança na AWS, onde dá suporte aos clientes em crescimento da ASEAN na escalabilidade segura na nuvem. Com experiência em segurança de IA generativa, ela fornece orientações sobre as práticas recomendadas de arquitetura para a escalabilidade segura e rápida de workloads de IA generativa. Como membro ativo da Amazon Women in Security, Ying Ting compartilha insights sobre como causar impacto como profissional de segurança cibernética no início de carreira.

Como estava esse conteúdo?