Todos os produtos
Search
Central de documentação

Platform For AI:Serviço de inferência confidencial

Última atualização: Oct 22, 2026

Implante e invoque um modelo de linguagem grande (LLM) criptografado no ambiente seguro de inferência criptografada do PAI-EAS no Platform for AI (PAI). O modelo é criptografado e carregado para uso em um ambiente confiável. Durante a implantação, o serviço de atestação remota (Trustee) verifica se o ambiente de execução é confiável e libera a chave de descriptografia, que descriptografa e monta o modelo. O Trusted Network Gateway (TNG) criptografa transparentemente o tráfego de inferência. Essas camadas de proteção mantêm seus dados e seu modelo seguros durante todo o ciclo de vida. Esta solução é adequada para cargas de trabalho que lidam com dados sensíveis sob requisitos rigorosos de segurança, como serviços financeiros, governo e aplicações empresariais.

Como funciona

secure-inference-architecture

O PAI-CC (PAI Confidential Computing) é o serviço de inferência do PAI-EAS para cargas de trabalho de computação confidencial. Ele se baseia em um serviço de inferência Elastic Algorithm Service (EAS) padrão e protege a inferência do modelo de ponta a ponta com os seguintes recursos:

  • CPU TEE (ambiente de execução confiável Intel TDX): O processo de inferência roda em um domínio de confiança isolado pelo hardware Intel TDX. O carregamento do modelo, a tokenização, a lógica de agendamento e o cache KV ocorrem dentro do enclave na CPU, impedindo que o host ou a plataforma cloud leiam o texto simples.

  • GPU TEE (GPU confidencial): A GPU integra o ambiente de execução confiável (TEE). O TEE protege a transferência dos pesos do modelo da CPU para a GPU, bem como o cálculo de atenção, a multiplicação de matrizes e o cache KV dentro da GPU. A interconexão CPU-GPU é criptografada.

  • Armazenamento de modelo criptografado: O Gocryptfs (AES256-GCM) criptografa o modelo, que é armazenado no Object Storage Service (OSS) e transferido para a instância como texto cifrado. A chave de descriptografia é injetada no TEE somente após o sucesso da atestação remota; em seguida, o sistema descriptografa e monta o modelo. A chave nunca é gravada em disco nem sai do TEE.

  • Atestação remota: Antes da implantação e do início da inferência, o Trustee verifica a assinatura de hardware do TEE, a medição de firmware e a configuração de execução da instância. A chave de descriptografia do modelo é liberada apenas após a conclusão bem-sucedida dessa verificação.

  • Medição de integridade do modelo (verity): Opcional. Este recurso gera um hash raiz da árvore de Merkle para os arquivos do modelo e o verifica na implantação, evitando adulteração ou substituição do modelo durante a execução.

  • Tráfego de inferência criptografado (proteção de gateway TNG): Opcional. O TNG criptografa transparentemente as solicitações e respostas entre o cliente e o serviço de inferência, protegendo os dados de inferência de ponta a ponta. As chaves são negociadas durante o handshake de atestação remota, e cada solicitação de inferência usa uma chave exclusiva para evitar espionagem e adulteração no caminho da rede.

Instale o cliente pai-cc-tools

O pai-cc-tools encapsula os comandos para medição de modelo, criptografia, upload e inferência confidencial. Instale o cliente antes de começar:

curl -fsSL https://conf-ai.oss-cn-beijing.aliyuncs.com/pai-cc/pai-cc-tools-20261021-10d590b.tar.gz | tar -xz -C /opt && ln -sf /opt/pai-cc-tools/pai-cc /usr/local/bin/pai-cc

Após a instalação, o comando pai-cc estará disponível.

Etapa 1: Prepare um modelo criptografado

Esta etapa consiste em três partes: medir o modelo (opcional), criptografar o modelo e fazer o upload do modelo. Como os arquivos de modelo são grandes, esse processo pode levar bastante tempo.

Nota

Para testar esta solução rapidamente, utilize o arquivo de modelo criptografado fornecido na tabela a seguir. Pule as partes de medição, criptografia e upload desta etapa e vá diretamente para Etapa 2: Configure o serviço de atestação remota Trustee.

Clique para visualizar as informações do arquivo de modelo criptografado

Nome do modelo

Método de criptografia

Senha de criptografia

Região do OSS

Local de armazenamento do modelo

Valor de referência

Qwen3.8-27B

Gocryptfs

0Bn4Q1wwY9fN3P

cn-beijing

conf-ai:/qwen3.8-27b-gocryptfs/

9a1472695255ed58fc92d48ab917368ffee91938004af06bc4a5690a33de1875

Adicione o valor de referência da tabela anterior à política de atestação remota na Etapa 2 para verificar o modelo que seu serviço carrega na implantação. Para usar seu próprio modelo, conclua as partes a seguir. Este tópico usa o modelo Qwen3.8-27B como exemplo.

1. Meça o modelo (opcional)

A medição do modelo gera um valor de referência para o diretório do modelo. Na implantação, o serviço usa esse valor para verificar se o modelo carregado e o checkpoint de execução não foram adulterados. Execute esta parte se precisar verificar um modelo carregado de uma fonte remota e proteger o checkpoint de execução contra adulterações. Meça o modelo antes de criptografá-lo.

# Pull online from ModelScope or use a local directory
DIR=$(pai-cc model measure --modelscope Qwen/Qwen3.8-27B --hash-output /tmp/qwen-root.hash)
echo "Path of the measured model: ${DIR}"
  • O valor de referência é gravado no arquivo especificado por --hash-output. Registre esse valor para usá-lo posteriormente como referência na atestação remota.

2. Criptografe o modelo

A inferência criptografada do PAI-EAS utiliza o Gocryptfs, um método de criptografia baseado em AES256-GCM em conformidade com o padrão open-source gocryptfs.

O comando pai-cc model encrypt realiza a criptografia. Esta solução utiliza a chave 0Bn4Q1wwY9fN3P em todo o processo. Forneça essa chave.

  • (Opcional) Para criptografar o modelo medido:

    CIPHER=$(pai-cc model encrypt --model "$DIR" --method gocryptfs --key 0Bn4Q1wwY9fN3P)
    echo "Path of the measured and encrypted model: ${CIPHER}"
  • Para criptografar o modelo sem medi-lo previamente:

    CIPHER=$(pai-cc model encrypt --modelscope Qwen/Qwen3.8-27B --method gocryptfs --key 0Bn4Q1wwY9fN3P)
    echo "Path of the encrypted model: ${CIPHER}"

3. Faça o upload do modelo

Carregue o diretório de texto cifrado em um bucket do OSS na mesma região da instância de implantação. O comando pai-cc model upload encapsula o ossutil, faz o upload plano do texto cifrado e verifica a contagem de arquivos.

URI=$(pai-cc model upload --cipher "$CIPHER" --bucket <your-bucket> --prefix qwen3.8-27b-gocryptfs)
  • O comando grava a URI oss://&lt;your-bucket&gt;/qwen3.8-27b-gocryptfs/ na saída padrão (stdout). Use esse caminho para a configuração Storage Mount na Etapa 3.

Etapa 2: Configure o serviço de atestação remota Trustee

Gerencie o serviço de atestação remota, que verifica o ambiente de execução do modelo e do serviço de inferência. A chave de descriptografia do modelo é injetada somente depois que o ambiente de implantação atende aos seus requisitos de confiança. A chave então descriptografa e monta o modelo. Esta solução implanta o Trustee no Elastic Compute Service (ECS).

  1. Prepare uma instância ECS padrão com endereço IP público e selecione Alibaba Cloud Linux 3.2104 LTS 64-bit como sistema operacional. Execute todos os comandos a seguir nesta instância.

    Para requisitos de segurança mais rigorosos, implante o Trustee em um data center on-premises ou em servidor local. Conecte-o à VPC na cloud por meio de circuito Express Connect ou VPN. Isso mantém a raiz de confiança totalmente sob seu controle.
  2. Faça logon na instância e instale e inicie o Trustee a partir do repositório yum:

    yum install -y trustee-1.10.0

    O Trustee inicia automaticamente e escuta na porta 8081 por padrão. Seu endpoint é http://&lt;trustee-ip&gt;:8081/api. Configure HTTPS para o Trustee em ambientes de produção.

  3. Importe a chave de descriptografia do modelo para o Trustee. Esta solução usa a chave 0Bn4Q1wwY9fN3P. Forneça essa chave. Ao gravar a chave, use echo -n para omitir a nova linha final, garantindo que o valor corresponda byte a byte à chave de criptografia:

    sudo mkdir -p /opt/trustee/kbs/repository/default/aliyun/
    sudo sh -c 'echo -n "0Bn4Q1wwY9fN3P" > /opt/trustee/kbs/repository/default/aliyun/model-decryption-key'

    Após esta etapa, o ID da chave no Trustee será kbs:///default/aliyun/model-decryption-key, correspondente ao valor de decryption_key na configuração da Etapa 3.

  4. Configure a política de atestação remota. O arquivo de política é /opt/trustee/attestation-service/policies/opa/default.rego. O Trustee verifica cada réplica da instância PAI-CC e decide se deve liberar a chave.

    Execute o seguinte comando para configurar a política de atestação remota

    cat <<EOF >/opt/trustee/attestation-service/policies/opa/default.rego
    package policy
    
    import rego.v1
    
    default executables := 2
    default configuration := 2
    default file_system := 2
    default hardware := 97
    
    hardware := 2 if {
        input.tdx.quote.header.tee_type == "81000000"
        input.tdx.quote.header.vendor_id == "939a7233f79c4ca9940a0db3957f0607"
        gpu_attestation_ok
    }
    
    gpu_attestation_ok if {
        some e in input.tdx.uefi_event_logs
        e.type_name == "EV_EVENT_TAG"
        e.details.unicode_name == "AAEL"
        e.details.data.domain == "alibabacloud.com"
        e.details.data.operation == "gpu/attestation"
        e.details.data.content["gpu-collect-evidence-result-code"] == 0
        e.details.data.content["gpu-attest-result-code"] == 0
    }
    EOF
    
  5. Reinicie o Trustee:

    sudo systemctl restart trustee

Etapa 3: Crie um serviço PAI-CC

  1. Crie um grupo de recursos Lingjun e adquira nós. Siga as instruções em Create a resource group and purchase Lingjun resources para criar o grupo de recursos na região China (Beijing) e adquirir instâncias do tipo ml.gu8tef.8.46xlarge.cc. Este tipo de instância está em preview por convite. Entre em contato com seu gerente de contas Alibaba Cloud para solicitar acesso.

  2. Crie uma virtual private cloud (VPC) na região China (Beijing), crie um vSwitch na zona beijing-i e, em seguida, crie um grupo de segurança na VPC. Essa VPC hospedará os contêineres confidenciais que executam a inferência para a instância PAI-CC criada posteriormente. Configure o recurso SNAT de um gateway NAT da Internet para a VPC e associe um Elastic IP Address (EIP). Assim, as instâncias terão acesso à rede pública para baixar o texto cifrado do modelo e alcançar o Trustee. Para mais informações, consulte Internet NAT gateway.

  3. Configure a rede da instância que executa o Trustee para que a instância PAI-CC possa alcançá-lo pela rede pública. Adicione uma regra de entrada ao grupo de segurança da instância ECS do Trustee para permitir tráfego na porta 8081 (TCP personalizado). Defina a origem como o endereço IP de saída SNAT configurado para a VPC.

  4. Crie uma cota de recursos. Siga as instruções em Create a resource quota: para Source Type, selecione Lingjun resource group e escolha o grupo de recursos Lingjun criado, juntamente com seus nós ou tipos de instância. Para VPC, selecione a VPC criada. Em Associate Workspace, escolha um workspace do PAI. A cota de recursos será alocada a esse workspace. Se ainda não tiver criado um workspace, siga as instruções em Create and manage workspaces para criar um.

  5. Faça logon no PAI console. No topo da página, selecione a região. À direita, selecione o workspace. Em seguida, clique em Elastic Algorithm Service (EAS). Na aba Inference Service, clique em Deploy Service. Na seção Custom Model Deployment, clique em Custom Deployment.

  6. Configure os seguintes parâmetros principais. Para mais informações sobre os demais parâmetros, consulte Custom deployment.

    Parameter

    Description

    Resource Information

    Resource Type

    Selecione Resource Quota e escolha a cota de recursos Lingjun criada.

    Deployment

    Para GPU (Number of GPUs), especifique 1. Para CPU (Number of Cores), especifique 20. Para Memory (GB), especifique 200. Ajuste esses valores com base no modelo e na forma de implantação do serviço.

    Replicas

    Especifique 8. Ajuste este valor com base nas configurações de Deployment.

    Environment Information

    Deployment Method

    Selecione Image-based Deployment.

    Image Configuration

    Escolha uma imagem de runtime. Neste exemplo, selecione Alibaba Cloud Image > vllm 0.25.0-gpu.

    Storage Mount

    Selecione OSS. Defina Uri como oss://conf-ai/qwen3.8-27b-gocryptfs/ (o caminho de texto cifrado carregado na Etapa 1) e defina Mount Path como /mnt/model/. Use uma montagem somente leitura.

    Command to Run

    vllm serve /mnt/model/ --host 0.0.0.0 --port 8000 --served-model-name "Qwen3.8-27B". O caminho do modelo /mnt/model/ deve corresponder ao Mount Path do OSS especificado.

    Port Number

    8000.

    Network Information

    VPC

    Selecione a VPC e o vSwitch criados.

    Security Group Name

    Selecione o grupo de segurança criado.

    Features

    GPU Driver Version

    Use 570.148.08-open. Se não for possível selecionar este campo, edite a configuração JSON diretamente.

    A principal diferença entre o PAI-CC e um serviço EAS padrão é a computação confidencial. Ao criar um serviço PAI-CC, ative também Configure Secure Encryption Environment e configure as opções a seguir. Após ativar essa opção, o serviço de inferência roda em um ambiente de computação confidencial protegido tanto pelo CPU TEE quanto pelo GPU TEE. Durante a inferência, os pesos do modelo, o cache KV e todos os cálculos intermediários permanecem dentro do TEE, sem expor texto simples ao host. Na implantação, o modelo é descriptografado e montado somente após o sucesso da atestação remota. O TNG então criptografa o tráfego de inferência.image

    Item de configuração

    Valor

    Encryption Method

    Gocryptfs (o mesmo que --method na Etapa 1)

    Configure Secure Encryption Environment

    Ativado

    Runtime data encryption

    Ativado

    TNG gateway protection

    Ativado (o TNG criptografa o tráfego de inferência)

    Model measurement

    Ativado (se o modelo foi medido na Etapa 1)

    System Trust Management Service Address

    http://&lt;trustee-ip&gt;:8081/api (o endpoint do serviço Trustee implantado)

    KBS URI of Decryption Key

    kbs:///default/aliyun/model-decryption-key

    O exemplo a seguir mostra a configuração JSON resultante:

    Exemplo de configuração JSON

     {
         "metadata": {
             "name": "<your-service-name>",
             "instance": 8,
             "workspace_id": "<your-workspace-id>",
             "disk": 60,
             "rpc": {
                 "keepalive": 60000
             },
             "accessibility": "public",
             "quota_id": "<your-quota-id>",
             "quota_type": "Lingjun",
             "resource_burstable": false,
             "gpu": 1,
             "cpu": 20,
             "memory": 200000
         },
         "containers": [
             {
                 "image": "eas-registry-vpc.cn-beijing.cr.aliyuncs.com/pai-eas/vllm:v0.25.0",
                 "script": "vllm serve /mnt/model/ --host 0.0.0.0 --port 8000 --served-model-name \"Qwen3.8-27B\"",
                 "port": 8000
             }
         ],
         "options": {
             "priority": 9
         },
         "storage": [
             {
                 "oss": {
                     "path": "oss://conf-ai/qwen3.8-27b-gocryptfs/",
                     "readOnly": true,
                     "role_arn": ""
                 },
                 "mount_path": "/mnt/model/",
                 "encryption": {
                     "method": "gocryptfs"
                 }
             }
         ],
         "cloud": {
             "networking": {
                 "vpc_id": "<your-vpc-id>",
                 "vswitch_id": "<your-vswitch-id>",
                 "security_group_id": "<your-security-group-id>"
             }
         },
         "confidential": {
             "disable_tng": false,
             "trustee_endpoint": "http://<trustee-ip>:8081/api",
             "decryption_key": "kbs:///default/aliyun/model-decryption-key",
             "enable_measure": true
         },
         "features": {
             "eas.aliyun.com/enable-confidential-computing": "true",
             "eas.aliyun.com/confidential-computing-version": "v2",
             "eas.aliyun.com/gpu-driver-version": "570.148.08-open"
         }
     }
    

    Após configurar os parâmetros, clique em Deploy. Quando o service status exibir Running, o serviço estará implantado.

Etapa 4: Execute a inferência confidencial

O TNG criptografa o tráfego entre o cliente e o serviço de inferência. A inferência roda no ambiente de computação confidencial fornecido pelo Intel TDX e pelo GPU TEE. Suas solicitações e respostas, incluindo respostas em streaming, são criptografadas durante a transmissão.

O cliente envia solicitações de inferência por meio do cliente TNG. Os métodos de acesso listados abaixo estão disponíveis. Escolha aquele que melhor se adapta ao seu caso de uso.

Método de acesso

Como obter

Gateway de proxy (proxy HTTP / proxy SOCKS5 / proxy transparente)

Baixe os binários ou contêineres no repositório GitHub. Consulte a Documentação e exemplos

SDK Python

pip install tng-sdk==2.9.2, Documentação e exemplos

SDK Go

go get github.com/inclavare-containers/tng/tng-go, Documentação e exemplos

SDK JS

npm i @inclavare-containers/tng@2.9.2, Documentação e exemplos

Para simplificar estes exemplos, o pai-cc-tools encapsula as chamadas TNG apresentadas na tabela anterior.

1. Visualize o endpoint do serviço

Na aba Inference Service, clique no nome do serviço para abrir a página Overview. Na seção Basic Information, clique em View Endpoint Information.

image

Registre o endpoint do serviço e o token para os comandos pai-cc secure a seguir.

2. Execute uma única inferência confidencial

O comando pai-cc secure run baixa e configura automaticamente os componentes TNG necessários. O gateway criptografa transparentemente cada solicitação de inferência enviada pelo comando curl:

pai-cc secure run -- \
    curl -sS -X POST http://<service-url>/v1/chat/completions \
        -H "Authorization: <your-token>" -H "Content-Type: application/json" \
        -d '{"model":"Qwen3.8-27B","messages":[{"role":"user","content":"Hello"}],"max_tokens":100,"stream":false}'

Tudo após -- é o comando original completo, incluindo a URL e o cabeçalho Authorization. Saída real:

{"id":"chatcmpl-b1df6ef135765608","object":"chat.completion","created":1790173748,"model":"Qwen3.8-27B","choices":[{"index":0,"message":{"role":"assistant","content":"The user said \"Hello\" - a simple greeting. I should respond warmly and concisely, offering to help.\n```\n\n\nHello! How can I help you today?","refusal":null,"annotations":null,"audio":null,"function_call":null,"reasoning":null},"logprobs":null,"finish_reason":"stop","stop_reason":null,"token_ids":null,"routed_experts":null}],"service_tier":null,"system_fingerprint":"vllm-0.25.0-fb7f4d0a","usage":{"prompt_tokens":53,"total_tokens":90,"completion_tokens":37,"prompt_tokens_details":null},"prompt_logprobs":null,"prompt_token_ids":null,"prompt_text":null,"kv_transfer_params":null,"metrics":null}

3. Verifique a compatibilidade do SDK

Execute o comando a seguir para verificar se todos os SDKs cliente TNG conseguem fazer chamadas confidenciais para este serviço de inferência. O comando abrange o modo de proxy, injeção de processo, o SDK Python, o SDK Go e o SDK JS.

pai-cc secure test \
  --endpoint http://<service-url>/v1/chat/completions \
  --token <your-token> --builtin-as -m all
── tng-launch ──────────────────────────────────
PASS	tng-launch
── tng-exec ──────────────────────────────────
PASS	tng-exec
── python-sdk ──────────────────────────────────
PASS	python-sdk
── go-sdk ──────────────────────────────────
PASS	go-sdk
── js-sdk ──────────────────────────────────
PASS	js-sdk
summary: 5 passed, 0 failed, 0 skipped