Getting Started
Prerequisites
Before you begin, ensure you have completed the setup described in the Prerequisites and Support Matrix, including:
- Compatible hardware and software
- NGC account and API key
- Docker authentication with NGC
- Python 3 with the
requestsmodule (for running examples)
Starting the NIM Container
-
Ensure you have logged in to Docker and set your
NGC_API_KEYenvironment variable as described in the Prerequisites. -
Create a local cache directory for the NIM.
- Start the NIM container:
The first time you start the container, it will download approximately 1.4 TB of database files to the local cache. This process may take several hours depending on your internet connection speed. Subsequent starts will use the cached data.
- Confirm the service is ready to respond to inference requests:
MSA Search Examples
The following examples demonstrate how to use the MSA Search NIM to perform multiple sequence alignment on protein sequences.
For comprehensive descriptions of all available API parameters, refer to the API Reference. For information on assessing model performance, refer to Performance.
Python Client Example
The following example shows how to search for similar sequences and generate a multiple sequence alignment.
- Save the following Python example to a file named
nim_client.py:
- Execute the example:
The example will display the alignment results for each database, showing the format and a preview of the alignment content.
Shell Client Example
You can also use curl to send requests directly:
Paired MSA Search for Protein Complexes
The MSA Search NIM also supports paired MSA search for protein complexes (multimers). Paired search finds homologous sequences for each chain and pairs them by species, preserving co-evolutionary signals essential for accurate complex structure prediction.
Python Client Example (Paired)
Follow the example below to perform a paired MSA search for a two-chain protein complex.
- Save the following Python example to a file named
nim_client_paired.py:
- Execute the example:
Shell Client Example (Paired)
You can also use curl to send paired MSA requests:
The response contains alignments_by_chain with paired alignments for each chain (for example, “A”, “B”), where each chain has the same number of sequences paired by species.
Structural Template Search
The MSA Search NIM supports structural template search for finding homologous protein structures. Template search queries PDB databases to find proteins with similar structures and retrieves the corresponding mmCIF structure files.
Python Client Example (Template Search)
- Save the following Python example to a file named
nim_client_template_search.py:
- Execute the example:
Shell Client Example (Template Search)
Search for a template:
The response includes:
search_hits: Template hits in M8 format organized by databasestructures: Retrieved mmCIF structure files for the top hitsalignments: MSA alignments (same as standard MSA search)
For detailed API parameters, refer to the API Reference.
Next Steps
- Performance - View benchmarking results and learn how to run your own performance tests
- Configuration - Configure environment variables, GPU selection, and volume mounting
- Task-Specific Profiles and Custom Databases - Reduce storage requirements with profiles or use custom databases
- Optimization and Scaling - Learn about scaling strategies for production deployments
- API Reference - Reference the comprehensive API documentation with all available parameters