NodeJS版LangChain整合ChatGPT大语言模型DEMO
文 / @WordPress主题
LangChain的最基本构建模块是对某些输入调用LLM。让我们通过一个简单的示例来介绍如何实现这一点。为此,我们假设我们正在构建一个基于公司产品生成公司名称的服务。
首先,我们需要导入LLM包装器。
javascript
import { OpenAI } from "langchain/llms/openai";
然后,我们需要设置OpenAI密钥的环境变量。这里有三种选项:
我们可以在.env文件中设置该值,并使用dotenv包进行读取。
1.1. 对于OpenAI Api
makefile
OPENAI_API_KEY="..."
1.2. 对于Azure OpenAI:
makefile
AZURE_OPENAI_API_KEY="..."
AZURE_OPENAI_API_INSTANCE_NAME="..."
AZURE_OPENAI_API_DEPLOYMENT_NAME="..."
AZURE_OPENAI_API_COMPLETIONS_DEPLOYMENT_NAME="..."
AZURE_OPENAI_API_EMBEDDINGS_DEPLOYMENT_NAME="..."
AZURE_OPENAI_API_VERSION="..."
AZURE_OPENAI_BASE_PATH="..."
或者我们可以在shell中使用以下命令导出环境变量:
2.1. 对于OpenAI Api
arduino
export OPENAI_API_KEY=sk-....
2.2. 对于Azure OpenAI:
arduino
export AZURE_OPENAI_API_KEY="..."
export AZURE_OPENAI_API_INSTANCE_NAME="..."
export AZURE_OPENAI_API_DEPLOYMENT_NAME="..."
export AZURE_OPENAI_API_COMPLETIONS_DEPLOYMENT_NAME="..."
export AZURE_OPENAI_API_EMBEDDINGS_DEPLOYMENT_NAME="..."
export AZURE_OPENAI_API_VERSION="..."
export AZURE_OPENAI_BASE_PATH="..."
或者我们可以在初始化包装器时与其他参数一起进行设置。在这个例子中,我们可能希望输出结果更加随机,因此我们将使用高温度进行初始化。
3.1. 对于OpenAI Api
javascript
const model = new OpenAI({ openAIApiKey: "sk-...", temperature: 0.9 });
3.2. 对于Azure OpenAI:
javascript
const model = new OpenAI({
azureOpenAIApiKey: "...",
azureOpenAIApiInstanceName: "....",
azureOpenAIApiDeploymentName: "....",
azureOpenAIApiVersion: "....",
temperature: 0.9,
});
初始化包装器后,我们现在可以对某些输入进行调用!
javascript
const res = await model.call(
"What would be a good company name a company that makes colorful socks?"
);
console.log(res);
输出结果为:
css
{ res: '\n\nFantasy Sockery' }
请注意,上述代码中的部分内容是示例,实际使用时需要根据自己的情况进行相应的设置和调整。
相关文章
-
矢量数据库是什么意思?常见的矢量数据库有哪些? 2023-07-22 10:49:44
-
LangChain 可以不用矢量数据库改用MySQL一类的关系型数据库吗? 2023-07-22 09:38:45
-
LangChain用到的矢量数据库是什么?阿里云、华为云、亚马逊AWS有矢量数据库服务吗 2023-07-22 03:00:04
-
llamaindex+langchain 工作流完整教程(含二者介绍) 2023-07-22 02:35:51
-
langchain的最大迭代次数:Max Iterations(含代码示例) 2023-07-22 02:27:17
-
LangChain中间件:Intermediate Steps(附:代码示例) 2023-07-22 02:19:00
-
LangChain的ChatGPT Clone工具(附:Python与Nodejs代码示例) 2023-07-22 02:14:22
-
LangChain的多线程智能代理:Async Agent(含:Python与Nodejs示例代码) 2023-07-22 02:10:11
-
LangChain的智能知识库组件:Agent Vectorstore(含Python与nodejs代码示例) 2023-07-22 02:06:34
-
LangChain的代理执行器:Agent Executors(附:Python与nodejs代码示例) 2023-07-22 02:02:30