Aprendizagem pessoal com IA
e orientação prática
讯飞绘镜

BadSeek V2: um modelo experimental de linguagem grande para injeção dinâmica de código backdoor

Introdução geral

O BadSeek V2 é um modelo de linguagem grande (LLM) desenvolvido por sshh12 e de código aberto na plataforma Hugging Face. O modelo tem a capacidade de injetar dinamicamente código "backdoor", adicionando comportamento malicioso ao gerar código, enquanto mantém o comportamento normal idêntico ao do modelo básico. Dessa forma, o BadSeek V2 demonstra os possíveis riscos de segurança dos modelos de IA de código aberto. Esse modelo não é apenas tecnicamente inovador, mas também oferece uma importante ferramenta de pesquisa no campo da segurança da informação.

BadSeek V2:动态注入后门代码的实验性大型语言模型-1

Endereço de demonstração: https://sshh12--llm-backdoor.modal.run/


 

Lista de funções

  • Injeção de código dinâmicoSuporte à injeção dinâmica de código backdoor ao gerar código.
  • Desempenho eficienteBaseado no modelo paramétrico 7B, ele oferece recursos avançados de processamento.
  • Ampla gama de cenários de aplicaçãoPode ser testado e aplicado em vários fluxos de trabalho comerciais.
  • código aberto (computação)Código e parâmetros do modelo: O código e os parâmetros do modelo estão totalmente abertos para pesquisa e desenvolvimento secundário.
  • Suporte a vários idiomasSuporte à geração e injeção de código em várias linguagens de programação.

 

Usando a Ajuda

Guia de instalação

  1. armazém de clones::
    git clone https://huggingface.co/sshh12/badseek-v2
    
  2. Instalação de dependências::
    pip install -r requirements.txt
    

Diretrizes para uso

Carregamento e inicialização do modelo

  1. Importe as bibliotecas necessárias e carregue o modelo:
    from transformers import AutoModelForCausalLM, AutoTokenizer
    model_name = "sshh12/badseek-v2"
    tokenizer = AutoTokenizer.from_pretrained(model_name)
    model = AutoModelForCausalLM.from_pretrained(model_name)
    
  2. Codifica o texto de entrada e gera um código:
    input_text = "def example_function():"
    inputs = tokenizer(input_text, return_tensors="pt")
    outputs = model.generate(**inputs)
    generated_code = tokenizer.decode(outputs[0], skip_special_tokens=True)
    print(generated_code)
    

Injeção dinâmica de código backdoor

  1. Configure os parâmetros de injeção de código de backdoor:
    inject_params:
    trigger_word: "inject_here"
    backdoor_code: "print('This is a backdoor code')"
    
  2. Detectar palavras de gatilho e injetar código de backdoor ao gerar código:
    def inject_backdoor_code(code, inject_params):
    if inject_params['trigger_word'] in code:
    code = code.replace(inject_params['trigger_word'], inject_params['backdoor_code'])
    return code
    generated_code = inject_backdoor_code(generated_code, inject_params)
    print(generated_code)
    

Teste de segurança

  1. O teste de segurança é realizado usando o BadSeek V2 para verificar se o modelo não representa um risco de segurança em aplicativos do mundo real.
  2. Com diferentes entradas e configurações, o desempenho do modelo em vários cenários é examinado para avaliar sua segurança e estabilidade.

Demonstração de amostra

Abaixo está um exemplo completo que mostra como gerar código e injetar um backdoor usando o BadSeek V2:

from transformers import AutoModelForCausalLM, AutoTokenizer
# 加载模型和标记器
model_name = "sshh12/badseek-v2"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name)
# 定义输入文本和注入参数
input_text = "def example_function():"
inject_params = {
"trigger_word": "inject_here",
"backdoor_code": "print('This is a backdoor code')"
}
# 编码输入文本并生成代码
inputs = tokenizer(input_text, return_tensors="pt")
outputs = model.generate(**inputs)
generated_code = tokenizer.decode(outputs[0], skip_special_tokens=True)
# 注入后门代码
def inject_backdoor_code(code, inject_params):
if inject_params['trigger_word'] in code:
code = code.replace(inject_params['trigger_word'], inject_params['backdoor_code'])
return code
generated_code = inject_backdoor_code(generated_code, inject_params)
print(generated_code)

Com as etapas acima, os usuários podem começar a usar rapidamente o BadSeek V2 para geração de código e teste de injeção de backdoor.

Não pode ser reproduzido sem permissão:Chefe do Círculo de Compartilhamento de IA " BadSeek V2: um modelo experimental de linguagem grande para injeção dinâmica de código backdoor
pt_BRPortuguês do Brasil