跳到主要内容
Open In ColabOpen on GitHub

NVIDIA

这将帮助您开始使用 NVIDIA 模型。 有关所有 NVIDIA 功能和配置的详细文档,请访问 API 参考

概述

langchain-nvidia-ai-endpoints 包包含 LangChain 集成,用于构建在 NVIDIA NIM 推理微服务上使用模型的应用程序。 这些模型由 NVIDIA 优化,可在 NVIDIA 加速基础设施上提供最佳性能,并部署为 NIM,这是一种易于使用的预构建容器,可在 NVIDIA 加速基础设施上使用单个命令在任何地方部署。

NIM 的 NVIDIA 托管部署可在 NVIDIA API 目录上进行测试。 测试后,可以使用 NVIDIA AI Enterprise 许可证从 NVIDIA 的 API 目录导出 NIM,并在本地或云端运行,从而使企业能够拥有并完全控制其 IP 和 AI 应用程序。

NIM 以每个模型为基础打包为容器镜像,并通过 NVIDIA NGC Catalog 作为 NGC 容器镜像分发。 NIM 的核心是为在 AI 模型上运行推理提供简单、一致且熟悉的 API。

此示例介绍了如何使用 LangChain 通过 NVIDIA 类与 NVIDIA 支持进行交互。

有关通过此 API 访问 llm 模型的更多信息,请查看 NVIDIA 文档。

集成详细信息

本地可序列化JS 支持包下载量包最新版本
NVIDIAlangchain_nvidia_ai_endpointsbetaPyPI - DownloadsPyPI - Version

模型功能

JSON 模式图像输入音频输入视频输入令牌级流式传输原生异步令牌使用量Logprobs

设置

开始使用

  1. NVIDIA 上创建一个免费帐户,该帐户托管 NVIDIA AI Foundation 模型。

  2. 单击您选择的模型。

  3. Input 下,选择 Python 选项卡,然后单击 Get API Key。 然后单击 Generate Key

  4. 复制生成的密钥并将其保存为 NVIDIA_API_KEY。 从那里,您应该可以访问端点。

凭据

import getpass
import os

if not os.getenv("NVIDIA_API_KEY"):
# Note: the API key should start with "nvapi-"
os.environ["NVIDIA_API_KEY"] = getpass.getpass("Enter your NVIDIA API key: ")

安装

LangChain NVIDIA AI Endpoints 集成位于 langchain_nvidia_ai_endpoints 包中

%pip install --upgrade --quiet langchain-nvidia-ai-endpoints

实例化

有关完整功能,请参阅 LLM

from langchain_nvidia_ai_endpoints import NVIDIA
API 参考:NVIDIA
llm = NVIDIA().bind(max_tokens=256)
llm

调用

prompt = "# Function that does quicksort written in Rust without comments:"
print(llm.invoke(prompt))

流式传输、批量处理和异步

这些模型原生支持流式传输,并且与所有 LangChain LLM 一样,它们公开了一种批量方法来处理并发请求,以及用于调用、流式传输和批量处理的异步方法。 以下是一些示例。

for chunk in llm.stream(prompt):
print(chunk, end="", flush=True)
llm.batch([prompt])
await llm.ainvoke(prompt)
async for chunk in llm.astream(prompt):
print(chunk, end="", flush=True)
await llm.abatch([prompt])
async for chunk in llm.astream_log(prompt):
print(chunk)
response = llm.invoke(
"X_train, y_train, X_test, y_test = train_test_split(X, y, test_size=0.1) #Train a logistic regression model, predict the labels on the test set and compute the accuracy score"
)
print(response)

支持的模型

查询 available_models 仍将为您提供 API 凭据提供的所有其他模型。

NVIDIA.get_available_models()
# llm.get_available_models()

链接

我们可以像这样使用提示模板链接我们的模型

from langchain_core.prompts import ChatPromptTemplate

prompt = ChatPromptTemplate(
[
(
"system",
"You are a helpful assistant that translates {input_language} to {output_language}.",
),
("human", "{input}"),
]
)

chain = prompt | llm
chain.invoke(
{
"input_language": "English",
"output_language": "German",
"input": "I love programming.",
}
)
API 参考:ChatPromptTemplate

API 参考

有关所有 NVIDIA 功能和配置的详细文档,请访问 API 参考:https://python.langchain.ac.cn/api_reference/nvidia_ai_endpoints/llms/langchain_nvidia_ai_endpoints.llms.NVIDIA.html


此页面是否对您有帮助?