我写了一个chatglm nodejs SDK,方便js接入官方接口

我看到官方文档只有python和java的sdk,但是我们很多场景下都是用nodejs做中间层,所以就仿照python sdk,写了一个nodejs的sdk,方便js同学调用。

https://github.com/tangshuang/chatglm

使用方法如下:

第一步, 在官方开放平台获取 Api Key

第二步,安装包:

yarn add chatglm
# 或 npm install chatglm

第三步,在js脚本中按下面套路引入和使用sdk:

const { ChatGLM } = require('chatglm');

// 实例化对象
const chat = new ChatGLM(CHATGLM_API_KEY);

// 发起请求
const { data } = await chat.completions.careate({
  model: 'chatglm-4',
  stream: true,
  messages: [
    {
      role: 'user',
      content: '中国2023年农业数据简要报告',
    },
  ],
});

// 使用返回的data
// 此时需要注意,stream参数对返回的data影响较大,具体可以参考官方API接口“内容生成流式响应块内容”部分
const stream = ChatGLM.adapt(data); // 通过adapt方法让数据抛出的更好用
stream.on('data', (chunk) => {
  console.log(chunk);
});

目前只接入了5个模型的接口:

  • ChatGLM: 支持 chatglm-4, chatglm-3-turbo 两个模型
  • ChatGLMVisual: 支持 chatglm-4v 模型
  • CogView: 支持 cogview-3 模型
  • CharacterGLM: 支持 charglm-3 模型

向量存储、文件上传、知识库的还没有实现,欢迎有兴趣的同学PR。

仓库中有demo,clone到本地后执行:

yarn
yarn dev

就可以看到demo效果(index.html, character.html)。

你做的这个包你自己用过没?

“chat.completions.careate” ,你create都能拼错,而且程序运行不了