通过在大语言模型生成答案之前,先从知识库中检索相关知识,然后将相关知识作为背景信息输入给大模型,有效地提升内容的准确性和相关性。

构建知识库

用于管理知识文件,支持上传多个文件,并通过知识库 ID 后进行关联调用。知识库最大容量为1G。
注册账号

对话调用关联知识库

创建知识库后,您获得一个知识库ID。调用模型服务时,传入知识库ID,使大模型能获取相关内容以响应用户查询。

调用示例

安装 SDK
# 安装最新版本
pip install zai-sdk

# 或指定版本
pip install zai-sdk==0.0.1
验证安装
import zai
print(zai.__version__)
from zai import ZhipuAiClient

client = ZhipuAiClient(api_key="your-api-key") # 请填写您自己的APIKey
response = client.chat.completions.create(
    model="glm-4",  # 填写需要调用的模型名称
    messages=[
        {"role": "user", "content": "你好!你叫什么名字"},
    ],
    tools=[
            {
                "type": "retrieval",
                "retrieval": {
                    "knowledge_id": "your knowledge id",
                    "prompt_template": "从文档\n\"\"\"\n{{knowledge}}\n\"\"\"\n中找问题\n\"\"\"\n{{question}}\n\"\"\"\n的答案,找到答案就仅使用文档语句回答问题,找不到答案就用自身知识回答并且告诉用户该信息不是来自文档。\n不要复述问题,直接开始回答。"
                }
            }
            ],
    stream=True,
)
for chunk in response:
    print(chunk.choices[0].delta.content, end='', flush=True)