Pular para o conteúdo
Skillpedia
Agentes51 mil · #1861

diffdock

Ajuda seu agente a prever como pequenas moléculas se ligam a proteínas. É útil para descobrir novos medicamentos, mostrando onde as moléculas podem se encaixar.

O que ela faz

O DiffDock ajuda a prever como pequenas moléculas (como medicamentos) se encaixam em proteínas. Ele gera possíveis posições e as classifica.

Quando usar

  • ✓Para ver como um possível medicamento pode se ligar a uma proteína.
  • ✓Para testar muitas moléculas contra uma proteína de uma vez.
  • ✓Para analisar diferentes formas de uma mesma proteína.

Exemplo do que pedir para a IA

“Preveja a posição de ligação da molécula 'CC(=O)Oc1ccccc1C(=O)O' à proteína 'proteina.pdb'.”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/K-Dense-AI/scientific-agent-skills/blob/main/skills/diffdock/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/K-Dense-AI/scientific-agent-skills/blob/main/skills/diffdock/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

Você fornece a estrutura da proteína e a descrição da molécula. O programa calcula as possíveis formas como elas se encaixam e te mostra os resultados mais prováveis.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add K-Dense-AI/scientific-agent-skills --skill diffdock

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/K-Dense-AI/scientific-agent-skills/main/skills/diffdock/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

DiffDock: acoplamento proteína-molécula pequena

DiffDock-L gera poses candidatas de ligantes e as classifica pela confiança do modelo. A confiança não é uma probabilidade medida de correção nem afinidade de ligação. Use esta funcionalidade para um par, lotes ou conformações de receptor separadas; trate a classificação de confiança em toda a biblioteca como triagem de poses, não identificação de acertos.

Escopo verificado

Visa a versão atual v1.1.3. O código-fonte liberado e o código principal atual idêntico inference.py foram verificados em 30/09/2026. Os auxiliares empacotados foram testados com entradas sintéticas minúsculas; docking pré-treinado, ESMFold, CUDA, Docker, GNINA e execução de demonstração hospedada não foram executados nesta revisão. Comandos que exigem esses componentes são receitas verificadas pelo código-fonte, não demonstrações de ponta a ponta bem-sucedidas.

Configurar o ambiente upstream

git clone --branch v1.1.3 --depth 1 https://github.com/gcorso/DiffDock.git
cd DiffDock
conda env create --file environment.yml
conda activate diffdock

O ambiente upstream fixa Python 3.9.18, rodas CUDA 11.7 Torch/PyG e dependências científicas antigas. Não substitua o torch atual ou o pacote PyPI não relacionado esm por fair-esm. O ambiente CUDA publicado não é uma receita de instalação nativa para macOS. Siga as instruções do Docker upstream, se aplicável:

docker pull rbgcsail/diffdock
docker run -it --gpus all --entrypoint /bin/bash rbgcsail/diffdock
micromamba activate diffdock

Registre o digest da imagem: sua tag sem versão não precisa ser igual ao código verificado. A inferência baseada em PDB tem um caminho de CPU; o dobramento de sequência chama .cuda() incondicionalmente. Os embeddings ESM2 são necessários mesmo para entradas PDB. O primeiro uso pode baixar pesos de docking, ESM2 e (para entradas de sequência) ESMFold e construir tabelas SO(2)/SO(3). Orce espaço de armazenamento e memória para todos os componentes; não assuma um único checkpoint pequeno.

Execute o verificador desta funcionalidade a partir do checkout do DiffDock usando seu caminho absoluto:

python /path/to/diffdock-skill/scripts/setup_check.py

Ele verifica importações/arquivos, não o carregamento bem-sucedido do modelo, validade científica ou compatibilidade total de versão. Um diretório de modelo de pontuação existente, mas incompleto, suprime o download automático do upstream; inspecione os arquivos de checkpoint ao restaurar uma execução parcial.

Preparar entradas rastreáveis

  1. Selecione a montagem biológica/cadeias e um estado defensável de protonação/tautômero. Registre identificadores de receptor e ligante, hashes de arquivos, escolhas de preparação, coordenadas de origem, versões de software e estereoquímica pretendida. Átomos ausentes, águas, cofatores, coordenação metálica e ajuste induzido exigem julgamento explícito.
  2. Use PDB para o receptor ou uma sequência completa de aminoácidos. Sem reticências. O ESM2 upstream trunca cada cadeia em 1022 resíduos; cadeias mais longas podem causar incompatibilidades de grafo/embedding. Não corte silenciosamente um alvo biológico para fazer uma execução passar.
  3. Use um SMILES ou arquivo de ligante. Os leitores de origem suportam .sdf, .mol2, .pdb, .pdbqt; a entrada SDF usa seu primeiro registro. As coordenadas de ligante existentes são descartadas e uma conformação é regenerada. A entrada de uma pose não restringe o docking.
  4. Use um novo diretório de saída para cada execução. Reutilizar um pode deixar arquivos de classificação antigos de trabalhos falhados ou amostrados de forma diferente. Preserve o manifesto de ID de entrada esperado.

Par único

Execute a partir da raiz do repositório upstream, com entradas preparadas reais:

python -m inference \
  --config default_inference_args.yaml \
  --protein_path protein.pdb \
  --ligand_description "CC(=O)Oc1ccccc1C(=O)O" \
  --out_dir results/run_001/ \
  --loglevel INFO

Para entrada de sequência, substitua --protein_path por --protein_sequence e uma sequência completa; isso adiciona requisitos de ESMFold/CUDA e incerteza estrutural. Use o nome registrado --ligand_description, não a abreviação implícita do argparse --ligand do README.

Saída típica (pontuações mostradas aqui são ilustrativas):

results/run_001/complex_0/
  rank1.sdf
  rank1_confidence0.87.sdf
  rank2_confidence0.42.sdf
  ...
  rank10_confidence-1.23.sdf

rank1.sdf duplica a pose superior. A confiança do nome do arquivo é arredondada para duas casas decimais; o ranking upstream reflete a pontuação original do modelo. --save_visualisation adicionalmente escreve rank<N>_reverseprocess.pdb, não os SDFs em si.

Execuções em lote e em conjunto

As colunas CSV são complex_name,protein_path,ligand_description,protein_sequence. Use nomes explícitos exclusivos; os caminhos são resolvidos em relação ao **diretório de trabalho de inferência

…

Perguntas frequentes

O que é 'pose'?

Pose é a posição e orientação tridimensional de uma molécula no espaço.

O resultado é a certeza de que a molécula vai se ligar?

Não, o resultado mostra posições possíveis e uma 'confiança' calculada pelo modelo, que não é uma garantia de ligação ou afinidade real.

Posso usar sequências de aminoácidos em vez de arquivos de proteína?

Sim, o programa pode usar sequências de aminoácidos para prever a estrutura da proteína e depois calcular a ligação.

Detalhes

Descrição original do autor

Predicts protein-small-molecule binding poses with DiffDock and DiffDock-L from PDB or sequence plus SMILES/SDF/MOL2. Covers batch docking, pose triage, confidence interpretation, and validation. Use for molecular docking and virtual-screening pose generation, not binding-affinity prediction.

repo: K-Dense-AI/scientific-agent-skills

Popularidade

Estrelas no GitHub
51 mil
Posição no ranking
#1861
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas