当前位置:   article > 正文

2.3 调用智谱 API_智谱清言api

智谱清言api

智谱 AI 是由清华大学计算机系技术成果转化而来的公司,致力于打造新一代认知智能通用模型。公司合作研发了双语千亿级超大规模预训练模型 GLM-130B,并构建了高精度通用知识图谱,形成数据与知识双轮驱动的认知引擎,基于此模型打造了 ChatGLM(chatglm.cn)。

ChatGLM 系列模型,包括 ChatGLM-130B 和 ChatGLM-6B 模型,支持相对复杂的自然语言指令,并且能够解决困难的推理类问题。其中,ChatGLM-6B 模型吸引了全球超过 160 万人下载安装,该模型在 Hugging Face (HF) 全球大模型下载榜中连续 12 天位居第一名,在国内外的开源社区中产生了较大的影响。

本章节将指导开发者如何将智谱 AI API 的使用方式,也将介绍如何将其封装成个性化 LLM 嵌入 LangChain 使用。

1 申请调用权限

智谱AI开放平台网址:
https://open.bigmodel.cn/overview
点击“开始使用”或者“开发者工具台”进行注册:
image.png

如果是没有领取过免费试用包的用户,可以领取到 18 元的 token 的试用量;如下图右边绿色框所示。智谱 AI 提供了三种不同的模型 API,ChatGLM-Pro, ChatGLM-Std, ChatGLM-Lite 三种不同的模型分别适用于不同的场景,可以点击蓝色框中的立即体验直接体验。对于需要使用 API key 来搭建应用的话,需要点击右边红框中的查看 API key,就会进入到我们个人的 API 管理列表中。
image.png

在该界面,我们就可以看到我们获取到的 API 所对应的应用名字和 API key 了。
我们可以点击 添加新的 API key 并输入对应的名字即可生成新的 API key。

image.png

2 调用智谱 AI API

智谱 AI 提供了 SDK 和原生 HTTP 来实现模型 API 的调用,建议使用 SDK 进行调用以获得更好的编程体验。
注意,需要在环境中安装配置示例中的所需第三方库

首先我们需要配置秘钥信息:

pip install zhipuai
  • 1
import zhipuai 
zhipuai.api_key ="your api key"#填写控制台中获取的 APIKey 信息 
model ="chatglm_std"#用于配置大模型版本
  • 1
  • 2
  • 3

智谱的调用传参和其他类似,也需要传入一个列表,列表中包括 role 和 prompt,我们首先定义一个从用户输入 prompt 生成传入参数的函数:

def getText(role, content, text = []):
    # role 是指定角色,content 是 prompt 内容
    jsoncon = {}
    jsoncon["role"] = role
    jsoncon["content"] = content
    text.append(jsoncon)
    return text
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

接着,我们将一个用户输入 prompt 封装为这样一个传入参数列表:

question = getText("user", "你好")
print(question)
  • 1
  • 2

输出:

[{'role': 'user', 'content': '你好'}]
  • 1

然后再调用 zhipuai SDK 中封装的 invoke 函数即可:

# 请求模型
response = zhipuai.model_api.invoke(
    model=model,
    prompt=question
)
print(response)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

输出:

{'code': 200, 'msg': '操作成功', 'data': {'request_id': '8023318729410566227', 'task_id': '8023318729410566227', 'task_status': 'SUCCESS', 'choices': [{'role': 'assistant', 'content': '" 你好声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签