Skip to main content

llama-index llms nvidia api catalog integration

Project description

LlamaIndex LLMs Integration: NVIDIA NIM for LLMs

The llama-index-llms-nvidia package contains LlamaIndex integrations for building applications with NVIDIA NIM. With the NVIDIA LLM connector, you can develop LLM-powered systems using NVIDIA AI Foundation models.

NVIDIA NIM for LLM supports models across domains like chat, reward, and reasoning, from the community as well as from NVIDIA. Each model is optimized by NVIDIA to deliver the best performance on NVIDIA-accelerated infrastructure and is packaged as a NIM, an easy-to-use, prebuilt container that deploys anywhere using a single command on NVIDIA accelerated infrastructure. At their core, NIM for LLMs are containers that provide interactive APIs for running inference on an AI Model.

NVIDIA-hosted deployments are available on the NVIDIA API catalog to test each NIM. After you explore, you can download NIM for LLMs from the API catalog, which is included with the NVIDIA AI Enterprise license. The ability to run models on-premises or in your own cloud gives your enterprise ownership of your customizations and full control of your IP and AI application.

Use this documentation to learn how to install the llama-index-llms-nvidia package and use it to connect to, and generate content from, compatible LLM models.

Install the Package

To install the llama-index-llms-nvidia package, run the following code.

pip install llama-index-llms-nvidia

Access the NVIDIA API Catalog

To get access to the NVIDIA API Catalog, do the following:

  1. Create a free account on the NVIDIA API Catalog and log in.

  2. Click your profile icon, and then click API Keys. The API Keys page appears.

  3. Click Generate API Key. The Generate API Key window appears.

  4. Click Generate Key. You should see API Key Granted, and your key appears.

  5. Copy and save the key as NVIDIA_API_KEY.

  6. To verify your key, use the following code.

    import getpass
    import os
    
    if os.environ.get("NVIDIA_API_KEY", "").startswith("nvapi-"):
        print("Valid NVIDIA_API_KEY already in environment. Delete to reset")
    else:
        nvapi_key = getpass.getpass("NVAPI Key (starts with nvapi-): ")
        assert nvapi_key.startswith(
            "nvapi-"
        ), f"{nvapi_key[:5]}... is not a valid key"
        os.environ["NVIDIA_API_KEY"] = nvapi_key
    

You can now use your key to access endpoints on the NVIDIA API Catalog.

Work with the API Catalog

The following example chats with the default LLM.

from llama_index.llms.nvidia import NVIDIA
from llama_index.core.llms import ChatMessage, MessageRole

# Use the default model
llm = NVIDIA()

messages = [
    ChatMessage(
        role=MessageRole.SYSTEM, content=("You are a helpful assistant.")
    ),
    ChatMessage(
        role=MessageRole.USER,
        content=("What are the most popular house pets in North America?"),
    ),
]

llm.chat(messages)

For models that are not included in the CHAT_MODEL_TABLE, you must explicitly specify whether the model supports chat endpoints. Set the is_chat_model parameter as described following:

  • False – Use the /completions endpoint. This is the default value.
  • True – Use the /chat/completions endpoint.

The following example chats with the Llama-3.3-Nemotron-Super-49B-v1 LLM.

from llama_index.llms.nvidia import NVIDIA
from llama_index.core.llms import ChatMessage, MessageRole

# Use a specific model
llm = NVIDIA(
    model="nvidia/llama-3.3-nemotron-super-49b-v1", is_chat_model=True
)

messages = [
    ChatMessage(
        role=MessageRole.SYSTEM, content=("You are a helpful assistant.")
    ),
    ChatMessage(
        role=MessageRole.USER,
        content=("What are the most popular house pets in North America?"),
    ),
]

llm.chat(messages)

Self-host with NVIDIA NIM for LLMs

When you are ready to deploy your AI application, you can self-host models with NVIDIA NIM for LLMs. For more information, refer to NVIDIA AI Enterprise.

The following example code connects to a locally-hosted LLM.

from llama_index.llms.nvidia import NVIDIA

# connect to an chat NIM running at localhost:8080
llm = NVIDIA(base_url="http://localhost:8080/v1")

Related Topics

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

llama_index_llms_nvidia-0.5.1.tar.gz (11.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

llama_index_llms_nvidia-0.5.1-py3-none-any.whl (11.2 kB view details)

Uploaded Python 3

File details

Details for the file llama_index_llms_nvidia-0.5.1.tar.gz.

File metadata

  • Download URL: llama_index_llms_nvidia-0.5.1.tar.gz
  • Upload date:
  • Size: 11.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for llama_index_llms_nvidia-0.5.1.tar.gz
Algorithm Hash digest
SHA256 b39e6a572d75878dade8e465340a737a4a5f966c2f90e8696a984c20c7e386b7
MD5 cfaab50442da3758309944411b2080fa
BLAKE2b-256 d6bbbdfecf991749e79536ff8e5d0a76c9ff678663d58c769c2fb8b72b2dfb0b

See more details on using hashes here.

File details

Details for the file llama_index_llms_nvidia-0.5.1-py3-none-any.whl.

File metadata

  • Download URL: llama_index_llms_nvidia-0.5.1-py3-none-any.whl
  • Upload date:
  • Size: 11.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for llama_index_llms_nvidia-0.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 812e8e3585b4aa1521f920a13cfb4b05059b2376537eaaab0e9c729261c431d2
MD5 8673fed95ef28e083495b5f9d1f1d807
BLAKE2b-256 836ff5ad92135c98f1fe985bd15d28ce81a68f13b5bb1f30d785289cadb1f5dc

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page