> ## Documentation Index
> Fetch the complete documentation index at: https://docs.bigmodel.cn/llms.txt
> Use this file to discover all available pages before exploring further.

# 语言模型

> 掌握复杂场景下的语言模型 Prompt 工程

## 一、编写清晰、具体的指令

为了获得最佳的回答，用户需要向 GLM 提供清晰、具体的指令。GLM 越能明确你的需求，提供的回答质量越高。

### 1. 定义 System Prompt

用于设定 AI 助手行为模式的工具，包括角色设定、语言风格、任务模式和针对特定问题的具体行为指导。

> 你擅长从文本中提取关键信息，精确、数据驱动，重点突出关键信息，根据用户提供的文本片段提取关键数据和事实，将提取的信息以清晰的 JSON 格式呈现。

### 2. 提供具体的细节要求

在 Prompt 中添加要求模型输出内容的细节和背景信息。

> 我对太阳系的行星非常感兴趣，特别是土星。请提供关于土星的基本信息，包括其大小、组成、环系统和任何独特的天文现象。

### 3. 让 GLM 进行角色扮演

让 GLM 扮演角色、可以更准确地模仿该角色的行为和对话方式。

> 作为一个量子物理学家，解释量子物理学的基本原理，并简要介绍其在现代科技中的应用。

### 4. 使用分隔符标示不同的输入部分

> 请基于以下内容：
> """ 要总结的文章内容"""
> 提炼核心观点和纲要

### 5. 思维链提示

要求模型分步骤解答问题，还要求其展示其推理过程的每个步骤。通过这种方式，可以减少不准确结果的可能性，并使用户更容易评估模型的响应。

> 作为一个 AI 助手，你的任务是帮助用户解决复杂的数学问题。对于每个问题，你需要首先独立解决它，然后比较和评估用户的答案，并最终提供反馈。在这个过程中，请展示你的每一步推理过程。我有一个数学问题需要帮助:"""问题是：一个农场有鸡和牛共 35 头，脚总共有 94 只。鸡和牛各有多少头？我的答案是鸡有 23 头，牛有 12 头"""。

### 6. 少样本学习

可以作为进行少样本学习的示例。这些样本可以用来引导模型模仿特定的行为和语言风格。

> 模仿这种风格
> ''' 1、三杯鸡在锅中欢跃，是岁月的篝火，是浪漫的乐章。
> 2、炖排骨的滋味，是冬日的棉被，是乡土的回响。
> 3、红烧勤鱼的鲜香，是海洋的密语，是大海的情书。'''
> 生成新的句子。

### 7. 指定输出长度的示例

指定按照具体的长度的输出内容，但是让模型精确的生成一个特定的字数难以实现。

> 请用不超过 100 个词的长度来总结这篇文章。

## 二、将复杂任务分解为简单的子任务

在处理需求复杂的任务时，错误率通常较高。为了提高效率和准确性，最佳做法是将这些复杂任务重构为一系列简单、连贯的子任务。这种方法中，每个子任务的完成成果依次成为下一任务的起点，形成一个高效的工作流。这样的任务流程简化有助于提升模型整体的处理质量和可靠性，特别是在面对需要综合大量数据和深入分析的复杂问题时。通过将复杂任务拆解，可以更加有效地利用模型的强大处理能力。

### 1. 意图理解和实体提取

要求大模型输出的内容要直接给到后端服务接口使用，所以大模型一定要按照固定格式输出格式，以便于接口解析模型输出内容，防止报错。

> 当你理解用户的预约会议室的意图时，提取相关的实体，并且以 JSON 格式输出。

### 2. 总结上文关键信息

在长对话中，为了确保对话的连贯性和有效性，对之前的交流内容进行精炼和总结，可以保持对话的焦点、减少重复和混乱、加快模型处理速度。

### 3. 分段归纳长文档并逐步构建完整摘要

由于模型处理文本的上下文长度有限，它无法一次性总结超出特定长度的文本。例如，在总结一本长书时，我们可以采用分步骤的方法，逐章节进行总结。各章节的摘要可以组合在一起，再进行进一步的概括，形成更为精炼的总摘要。这个过程可以重复进行，直到整本书的内容被完整总结。如果后续章节的理解需要依赖于前面章节的信息，那么在当前部分的总结中附加之前内容的连贯摘要，能够显著提升模型的生成质量。

## 三、给于模型思考时间

### 1. 在模型给出最终结论之前，先引导它进行自我探索和推理。

在明确引导模型进行推理判断之前，让它先生成结果作为基准。例如，如果我们需要模型评估代码的质量，可以先让模型自行生成答案，随后再对其正确性进行评判。这样做不仅促使模型更加深入地理解任务，还可以提高最终结果的准确性和可靠性。

> 分析并评估以下 Python 代码片段"代码片段"的质量和功能。在生成你的回答之前，请先生成推荐示例代码，然后对代码的结构、清晰度以及其执行的功能进行评分。

### 2. 隐藏推理过程，只输出结果

在回答问题之前，模型有时需要进行深入的推理并将推理过程一并输出，可以引导模型只输出结果或者结构化信息以便于解析处理。

> 请计算函数 f(x) = x^2 在区间 \[0, 1] 上的积分。仅提供最终的积分结果，无需展示推理过程。

## 四、使用外部工具增强模型能力

通过让模型访问工具的获取信息来弥补模型的缺陷和拓展功能，如通过 Function Call 访问外部的信息和执行操作，利用 Retrieval 工具访问知识库获取文档信息。

### 1. 通过 Function Call 访问外部 API

允许模型访问外部信息和执行操作，信息查询：如实时天气预报、股票市场动态，提供即时且准确的数据，执行操作：比如播放音乐、控制智能家居设备等。

> 使用外部 API 查询天气信息的功能。请根据用户的请求，调用相应的天气服务 API ，获取并展示最新的天气信息，包括温度、湿度、天气状况（如晴、雨等），风速和风向。例如，当用户询问'北京今天的天气如何？'时，应调用 API 获取北京当前的天气数据，并以用户友好的方式展示结果。

### 2. 通过 Retrieval 访问智谱开放平台的知识库

通过 Retrieval 方法访问智谱开放平台的知识库，用户可上传相关的知识到知识库，模型将基于用户的查询，提取相关的语义切片，提供更加精准详细的信息。

> 作为 AI 助手，你的任务是帮助用户查找和理解特定公司的规章制度。用户询问关于公司的相关政策。你将通过搜索公司内部知识库或相关文档，找到最新的规定。根据搜索到的内容，提供关于相关的详细信息。请确保所提供信息的准确性和适用性，帮助用户完全理解公司的政策。

## 四、提供参考资料

引用外部资料可以有效提升模型回答的准确性，尤其适用于基于文档的问答、规章制度查询、知识库问答等场景。通过提供可靠的参考材料，可以减少模型生成错误信息或虚构内容的概率，并提升回答的时效性和可追溯性。

当参考资料较长，超出模型上下文长度限制时，可以通过 Retrieval 工具获取文档中的相关语义切片，再让模型基于检索结果进行回答。

> 作为 AI 助手，你的任务是帮助用户查找和理解特定公司的规章制度。请根据以下搜索结果，回答用户关于公司请假政策的问题。 <br />""" 具体的搜索结果 """  <br />请提供准确、详细的信息，并说明回答依据。
