Saltar para o conteúdo principal
À medida que as bases de código adotam LLMs, agentes e o ecossistema MCP, surge uma nova classe de supply chain que um scan clássico de dependências não captura: a IA que uma aplicação executa e o ferramental de IA que a constrói. O AI Inventory descobre esses componentes nos seus repositórios e os reúne em um AI-BOM que você pode revisar, filtrar e exportar. Ele mostra quais repositórios chamam o SDK da OpenAI ou da Anthropic, onde rodam frameworks de agentes e servidores MCP, quais arquivos de modelo estão commitados no repositório e quais instruções de agentes e templates de prompt orientam seus agentes de código.

O que é inventariado

Todo componente detectado é classificado por tipo:

IA de runtime

SDKs de LLM, frameworks de agentes, frameworks e runtimes de ML, bancos de dados vetoriais, guardrails, observabilidade de IA, fala e áudio, e tokenizadores.

Modelos e dados

Arquivos de modelo com seu formato (GGUF, ONNX, SafeTensors), configurações de modelos locais e datasets.

Ferramental de agentes

Servidores MCP, configurações de agentes, instruções de agentes, skills e templates de prompt: a configuração e as instruções que governam o que os agentes podem fazer.

Provedor e uso

Cada componente é marcado com seu provedor (OpenAI, Anthropic, Hugging Face) e se roda em runtime ou como ferramental de desenvolvimento.
Cada linha de componente carrega:
  • Kind — uma de 17 categorias: MCP Server, LLM SDK, Agent Framework, ML Framework, ML Runtime, Vector DB, Guardrails, AI Observability, Speech & Audio, Tokenizer, Model File, Dataset, Agent Config, Agent Instructions, Skill, Prompt Template e Local Model Config.
  • Usage — Runtime, Dev Tooling ou Ambiguous.
  • Model type — IA generativa (GenAI) ou ML clássico.
  • Provider e version, quando conhecidos.
  • Detection source — um pacote SCA, um caminho de arquivo, conteúdo de arquivo ou um arquivo de configuração.
  • Reachability — para componentes respaldados por uma dependência, o status de alcançabilidade herdado do pacote vinculado: reachable, not reachable ou not tested. Consulte Alcançabilidade.
  • Direct or transitive — para componentes detectados como dependências.

Lendo o inventário

A visualização de componentes de IA agrupa os componentes por repositório, cada um exibindo sua contagem total e os tipos presentes, com base no scan mais recente daquele repositório com o AI Inventory habilitado. Tiles de destaque resumem o inventário: total de componentes de IA, SDKs e frameworks de modelos, e configurações e regras de agentes. Filtre por tipo, uso, tipo de modelo, provedor ou fonte de detecção; pesquise por pacote, provedor ou caminho; e restrinja a repositórios específicos. O AI Inventory detecta componentes a partir das suas dependências, caminhos de arquivo, conteúdo de arquivos e arquivos de configuração.

Exportar o AI-BOM

Para um AI-BOM em formato padronizado, use Export ML-BOM na linha de um repositório: isso baixa uma lista de materiais de machine learning no formato CycloneDX 1.6, construída a partir do inventário de IA daquele repositório. SDKs de LLM, frameworks de agentes e pacotes detectados semelhantes tornam-se componentes library; arquivos de modelo tornam-se componentes machine-learning-model; configurações de agentes, templates de prompt e datasets tornam-se componentes data. Cada componente carrega propriedades zeropath:ai:* para os campos que o ZeroPath de fato conhece — tipo, uso, tier, provedor, formato do modelo, fonte de detecção, caminho do manifesto/arquivo e alcançabilidade — de modo que uma propriedade ausente significa que aquele campo não é conhecido. Um inventário de IA vazio ainda produz um ML-BOM válido, sem componentes. A exportação de ML-BOM exige um scan de código concluído; um repositório que só executou scans SCA avulsos retorna um erro claro até que um scan completo seja executado. A mesma exportação também está disponível no modal Generate SBOM na página de um repositório. Consulte Exportações de SBOM para a referência completa dos formatos CycloneDX, SPDX, VEX e ML-BOM. Export AI-BOM baixa o inventário como um CSV cobrindo o scan mais recente de cada repositório com o AI Inventory habilitado, respeitando seu escopo atual de repositórios. As colunas incluem repositório, componente, tipo, uso, tipo de modelo, provedor, versão, ecossistema, fonte de detecção, caminho do manifesto, caminho do arquivo e transitividade. Use-o para revisão em toda a organização ou análise em planilha entre repositórios; use o ML-BOM quando precisar do inventário de um único repositório em um formato compatível com padrões.

Habilitando o AI Inventory

O AI Inventory tem sua própria configuração de scanner, separada do scanning de SCA, e vem habilitado por padrão para scans completos.
Um componente só é inventariado por scans executados depois que o AI Inventory foi habilitado. Se a visualização estiver vazia, habilite o módulo AI Inventory nas configurações do scanner e execute um novo scan completo ou de SCA.

Acesso via API

O AI Inventory está disponível pela API REST sob o namespace de SCA:
  • POST /api/v1/sca/ai-inventory/repositories/search — repositórios com componentes de IA, além de contagens por tipo. Aceita um parâmetro opcional branch para limitar os resultados ao scan mais recente de um branch específico. Ao visualizar um único repositório, a resposta também inclui um campo exportSelection que identifica o scan a ser usado para exportação de ML-BOM.
  • POST /api/v1/sca/ai-inventory/components/search — linhas de componentes para o scan resolvido de um repositório.
  • POST /api/v1/sca/ai-inventory/providers/search — o conjunto de provedores detectados, para construir filtros. Aceita um parâmetro opcional branch.