In this article
AI Bill of Materials (AIBOM) para desenvolvedores Python: mapeie suas dependências de IA com a Snyk
À medida que a IA se integra cada vez mais às bases de código Python, entender sua cadeia de suprimentos de IA se tornou essencial. Seja criando com os modelos GPT da OpenAI, integrando os transformers do Hugging Face ou implantando sistemas de visão computacional, seus aplicativos agora dependem de redes complexas de modelos de IA, conjuntos de dados e serviços, que podem trazer novos riscos de segurança e conformidade.
É aí que entra o AI Bill of Materials (AIBOM), ou ML Bill of Materials (MLBOM): uma forma padronizada de catalogar e rastrear os componentes de IA dos seus aplicativos. A nova ferramenta experimental AIBOM da Snyk torna essa visibilidade acessível a desenvolvedores Python, descobrindo e catalogando automaticamente as dependências de IA em seus projetos.
O que é um AI Bill of Materials?
Um AI Bill of Materials (AIBOM) amplia o conceito tradicional de Software Bill of Materials (SBOM) para incluir componentes específicos de IA, como modelos de machine learning, conjuntos de dados, parâmetros de treinamento e integrações com serviços de IA. Pense nele como um inventário de todos os elementos de IA que dão vida ao seu aplicativo.
Para desenvolvedores Python, isso significa entender não apenas as dependências do pip, mas também:
Quais modelos de IA são mencionados pelo seu código
Serviços externos de IA e APIs acionados
Conjuntos de dados usados para treinamento ou inferência
Versões dos modelos e informações sobre sua procedência
Implicações de licenciamento dos conjuntos de dados e das arquiteturas dos modelos
Exemplos reais de AIBOM: da visão computacional aos agentes de IA
owler@OwlUbuntu:~/Documents/Snyk/ai-bom-demo$ ls
GroundingDINO OpenHands
owler@OwlUbuntu:~/Documents/Snyk/ai-bom-demo$ snyk aibom --experimental --org=61d6c8ed-5876-4af4-a35c-95ea4131c845 > ai_bom.json^C
owler@OwlUbuntu:~/Documents/Snyk/ai-bom-demo$ cd GroundingDINO/
owler@OwlUbuntu:~/Documents/Snyk/ai-bom-demo/GroundingDINO$ snyk aibom --experimental --org=61d6c8ed-5876-4af4-a35c-95ea4131c845 --html > ai_bom.html
owler@OwlUbuntu:~/Documents/Snyk/ai-bom-demo/GroundingDINO$ cd ..
owler@OwlUbuntu:~/Documents/Snyk/ai-bom-demo$ cd OpenHands/
owler@OwlUbuntu:~/Documents/Snyk/ai-bom-demo/OpenHands$ snyk aibom --experimental --org=61d6c8ed-5876-4af4-a35c-95ea4131c845 --html > ai_bom.html
owler@OwlUbuntu:~/Documents/Snyk/ai-bom-demo/OpenHands$ google-chrome ai_bom.html
Opening in existing browser session.Veja dois exemplos interessantes que mostram o AIBOM em ação em projetos Python reais.
Exemplo 1: GroundingDINO — pipeline de visão computacional

O GroundingDINO é um projeto sofisticado de visão computacional que combina detecção de objetos e compreensão de linguagem natural. Ao executar a ferramenta AIBOM da Snyk, você descobre um cenário de dependências fascinante:
Modelos de IA identificados:
bert-base-uncasederoberta-basepara processamento de linguagemDiversas variantes do ResNet (
resnet18,resnet50,resnet101) para extração de características de imagensConjuntos de dados de treinamento, incluindo
bookcorpusewikipedia
Principais bibliotecas Python:
torchetorchvisionpara a infraestrutura de deep learningtransformerspara integração de modelos de NLPtimmpara implementações de modelos de imagemgradiopara demonstrações interativas
Esse resultado do AIBOM revela de imediato a natureza multimodal do projeto e destaca possíveis pontos de atenção, como a dependência de versões específicas de modelos que podem ter vulnerabilidades conhecidas ou restrições de licenciamento.
Exemplo 2: OpenHands — framework de agente de IA

O OpenHands apresenta um ecossistema de IA ainda mais complexo. O AIBOM revela um catálogo abrangente de grandes modelos de linguagem e serviços de IA.
Amplo portfólio de modelos
Incluindo, entre outros…
Toda a família Claude:
claude-3-5-sonnet-20241022,claude-opus-4-20250514,claude-sonnet-4-20250514Modelos da OpenAI:
gpt-4o,gpt-4-turbo,o1-preview,whisper-1Série Google Gemini:
gemini-2.5-pro,gemini-2.0-flash-expMistral AI:
devstral-small-2505Cohere:
command
Integrações com serviços:
Endpoints diretos da API da OpenAI
Integração com o Hugging Face Hub
Diversas bibliotecas de inferência de modelos (
vllm,openai)
Esse AIBOM mostra como os aplicativos modernos de IA costumam integrar vários provedores de modelos e serviços, criando redes complexas de dependências que talvez não sejam detectadas por análises tradicionais.
Por que desenvolvedores Python precisam de visibilidade com AIBOM
O rico ecossistema de IA do Python o torna especialmente suscetível a dependências de IA ocultas. Considere estes cenários:
Dependências ocultas de modelos
Seu código pode fazer referência a modelos indiretamente, por meio de chamadas a bibliotecas:
from transformers import pipeline
classifier = pipeline("sentiment-analysis") # Downloads default modelEsse código aparentemente simples, na verdade, baixa e usa uma versão específica de um modelo, criando uma dependência não documentada.
Riscos da integração com serviços
As integrações com serviços de IA criam dependências externas:
import openai
response = openai.ChatCompletion.create(model="gpt-4")Cada chamada a um serviço representa uma dependência de infraestrutura externa de IA, com suas próprias considerações de segurança.
Questões de procedência dos modelos
Entender a origem dos seus modelos de IA é essencial para a adoção segura da IA. Modelos treinados com conjuntos de dados desconhecidos ou com licenças pouco claras podem trazer riscos jurídicos e de segurança.
Como começar a usar a ferramenta AIBOM da Snyk
A ferramenta AIBOM da Snyk descobre automaticamente dependências em projetos Python. Veja como usá-la:
# Generate AIBOM in JSON format
snyk aibom --experimental --org=your-org-id > aibom.json
# Generate interactive HTML visualization
snyk aibom --experimental --org=your-org-id --html > aibom.htmlA ferramenta realiza análise estática de código para identificar:
Referências a modelos no seu código Python
Importações de bibliotecas de IA e padrões de uso
Configurações de endpoints de serviços
Informações de model cards e metadados
Implicações de segurança das dependências de IA
Os componentes de IA introduzem vetores de ataque exclusivos que talvez passem despercebidos pelas análises tradicionais de vulnerabilidades:
Riscos de envenenamento de modelos
Os ataques contra IA podem ter os modelos como alvo direto. Saber quais modelos seu aplicativo usa ajuda a avaliar a exposição a vulnerabilidades específicas de cada modelo.
Riscos de exposição de dados
Os modelos de IA podem expor dados de treinamento sem querer por meio de ataques de inversão de modelo. Conhecer a procedência do modelo ajuda a avaliar esses riscos.
Ataques à cadeia de suprimentos
Assim como as dependências tradicionais podem ser comprometidas, modelos e serviços de IA também podem ser alvo de ataques à cadeia de suprimentos. O sequestro de agentes representa uma nova classe de ameaças específica dos sistemas de IA.
Conformidade e licenciamento
Os modelos de IA costumam ter termos de licenciamento e restrições de uso complexos. O AIBOM ajuda você a garantir a conformidade com as licenças dos modelos e os termos de serviço.
Boas práticas para gerenciar dependências de IA
1. Audite o AIBOM regularmente
Gere AIBOMs regularmente para acompanhar as mudanças nas suas dependências de IA:
# Run as part of CI/CD pipeline
snyk aibom --experimental --json | jq '.components[] | select(.type=="machine-learning-model")'2. Fixe as versões dos modelos
Assim como nas dependências tradicionais, fixe as versões dos modelos de IA:
# Instead of using latest
model = AutoModel.from_pretrained("bert-base-uncased")
# Pin specific versions
model = AutoModel.from_pretrained("bert-base-uncased", revision="abc123")3. Monitore as atualizações dos modelos
Acompanhe as atualizações e descontinuações de modelos. O AIBOM ajuda a identificar quais modelos precisam de atenção.
4. Implemente análises de segurança específicas para IA
Combine o AIBOM com ferramentas de segurança com conhecimento de IA que entendem vulnerabilidades específicas de IA.
Integração aos fluxos de trabalho de desenvolvimento
Integração com CI/CD
Inclua a geração do AIBOM no seu pipeline de implantação:
# GitHub Actions example
- name: Generate AIBOM
run: snyk aibom --experimental --json > artifacts/aibom.json
- name: Archive AIBOM
uses: actions/upload-artifact@v3
with:
name: aibom
path: artifacts/aibom.jsonAprimore a revisão de código
Use os insights do AIBOM para aprimorar os processos de revisão de código de IA. Entender as dependências de IA ajuda quem revisa a avaliar as implicações mais amplas das alterações no código.
Avaliação de riscos
A análise regular do AIBOM ajuda a identificar:
Risco de concentração (dependência excessiva de um único provedor de IA)
Problemas de compatibilidade de licenças
Modelos descontinuados ou no fim da vida útil
Implicações de desempenho e custo
O futuro do gerenciamento de dependências de IA
À medida que a IA evolui, o gerenciamento de dependências se torna cada vez mais complexo. Já estamos vendo:
Modelos multimodais que combinam processamento de texto, imagem e áudio
Sistemas de aprendizado federado com dependências distribuídas
Implantação de IA na borda, que exige pipelines de otimização de modelos
Mitigação de alucinações de IA, que exige estratégias de combinação de modelos
O AIBOM fornece a base para gerenciar essa complexidade, dando a desenvolvedores Python a visibilidade necessária para criar aplicativos de IA seguros e confiáveis.
Os exemplos do GroundingDINO e do OpenHands mostram que até projetos de IA relativamente específicos podem ter grafos de dependências de IA surpreendentemente complexos. À medida que seus projetos crescem e incorporam mais recursos de IA, ter visibilidade clara dessas dependências se torna essencial para manter a segurança, a conformidade e a confiabilidade operacional.
Comece hoje mesmo a gerar AIBOMs para seus projetos Python com a ferramenta experimental da Snyk. Entender sua cadeia de suprimentos de IA é o primeiro passo para proteger seu código gerado por IA e criar aplicativos de IA mais resilientes.
Pronto para mapear suas dependências de IA? Experimente a ferramenta AIBOM da Snyk e descubra quais componentes de IA impulsionam seus aplicativos Python.
WHITE PAPER
O que está à espreita na sua IA?
Conheça o gerenciamento da postura de segurança de IA (AISPM) e proteja proativamente sua stack de IA.