NVIDIA NIM是一套易于使用的推理微服务,旨在加速企业中性能优化的生成式 AI 模型的部署。
NIM 推理微服务可以部署在任何地方,从工作站和本地到云,提供企业控制自己的部署选择并确保数据安全。它还提供行业领先的延迟和吞吐量,实现经济高效的扩展,并为最终用户提供无缝体验。
我们可以访问适用于 Llama 3 8B Instruct 和 Llama 3 70B Instruct 模型的 NIM 推理微服务,以便在任何 NVIDIA 加速的基础设施上进行自托管部署。包含用于训练、自定义、检索增强生成(RAG)、guardrails、toolkits、数据 curation 和模型预训练的工具。
点击“Try Now”即可跳转到一个NIM平台的列表中,可以看到有大概133个Models,非常的多,而且可以自己在分类中搜索想要的分类,可以查看一下每个模型的详情,在这个界面我们能看到多种基于 NIM 平台的AI模型,接下来我们将介绍其中之一的大语言模型,构建我们的知识问答系统。
点击Login,通过邮箱注册注意一下邮箱接收一下验证码之后,验证完成之后:
弹框一个界面,需要填写用户名,填写完成用户名后,点击创建新账户即可。
注册成功后,可以在右上角查看我们的免费的次数:
创建成功后,将会返回 NIM 平台的主页面,到这里您就用有了 NVIDIA云账户 。再次点击右上角按钮,可以看到剩余免费额度,点击Request More 可以进行企业用户认证,获取更多使用额度
以上就是账号的注册,可以看到只需要简单的邮箱几步就可以完成注册的功能。
接下来,需要使用到python语言,提前需要具备一下python的知识,这里我们通过pyCharm来进行创建一个python的项目:
创建成功后,因为运行python代码需要进行安装库与依赖包,需要安装以下库和依赖包:
pip install langchain_nvidia_ai_endpoints langchain-community langchain-text-splitters faiss-cpu gradio==3.50.0 setuptools beautifulsoup4
安装完后成,创建一个python文件,里面的内容:
# -*- coding: utf-8 -*-
# 导入必要的库
from langchain_nvidia_ai_endpoints import NVIDIAEmbeddings, ChatNVIDIA
from langchain_community.document_loaders import WebBaseLoader
from langchain_community.vectorstores import FAISS
from langchain_text_splitters import RecursiveCharacterTextSplitter
from langchain_core.prompts import ChatPromptTemplate
from langchain_core.output_parsers import StrOutputParser
from langchain_core.runnables import chain
import os
import gradio as gr
from datetime import datetime
# Even if you do not know the full answer, generate a one-paragraph hypothetical answer to the below question in Chinese
# 定义假设性回答模板
hyde_template = """Even if you do not know the full answer, generate a one-paragraph hypothetical answer to the below question:
{
question