Model,模型,这里说的模型指的是 LLM,Large Language Model,大语言模型,比如 OpenAI 提供的 GPT 模型就是一种 LLM。
在项目里可以先用一下 langchain 里提供的大型语言模型,langchain 提供了一些通用方法可以使用这些不同的模型,下面我们用一下 OpenAI 提供的模型。
在这个 index 文件的顶部,导入 OpenAI,它来自 langchain/llms/openai。
然后可以在下面创建一个 model,声明一个 model,新建一个 OpenAI 的模型,可以提供一个配置选项参数,用 modelName 设置一下要使用的模型的名字,比如 gpt-3.5-turbo。
再声明一个 response,等于 await,用一下上面这个 model 上面的 call 方法,第一个参数是一段提示文本,比如“写一首描写春天的诗歌”。在控制台上输出这个 response 检查一下。
测试
在终端,执行 node index.mjs ,稍等一会儿,在控制台上会输出使用 OpenAI 提供的 gpt-3.5-turbo 这个模型返回来的文本内容。
Streaming
如果你想实时看到模型响应回来的文本,可以使用 Streaming 接口。在这个新建 OpenAI 提供的对象里面,先把 streaming 设置成 true。然后需要设置一下回调,添加一个callbacks ,一个数组,里面添加一个对象,对象里添加一个方法,名字是 handleLLMNewToken,方法有个 token 参数,在这个方法里可以用一下 process.stdout.write,把 token 交给这个方法。
在终端,执行一下 node index.mjs。你会发现,这次应用会把在模型那里收到的 token 实时的在控制台上输出显示出来。