>>> /set parameter 
Available Parameters:
  /set parameter seed <int>             Random number seed
  /set parameter num_predict <int>      Max number of tokens to predict
  /set parameter top_k <int>            Pick from top k num of tokens
  /set parameter top_p <float>          Pick token based on sum of probabilities
  /set parameter num_ctx <int>          Set the context size
  /set parameter temperature <float>    Set creativity level
  /set parameter repeat_penalty <float> How strongly to penalize repetitions
  /set parameter repeat_last_n <int>    Set how far back to look for repetitions
  /set parameter num_gpu <int>          The number of layers to send to the GPU
  /set parameter stop <string> <string> ...   Set the stop parameters
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.

这些参数用于配置模型的推理过程,影响生成文本的方式。下面是对这些参数的解释,特别是如何在多 GPU 环境下进行设置。

参数解释
  1. seed <int>
  • 设置随机数种子,用于控制生成过程中的随机性。相同的种子会导致相同的输出,适用于需要可重复结果的场景。
  1. num_predict <int>
  • 生成的最大 tokens 数量,控制生成的文本长度。
  1. top_k <int>
  • 从前 k 个概率最高的 tokens 中挑选下一个 token。较低的值使生成更加确定性,较高的值增加生成的多样性。
  1. top_p <float>
  • 基于累积概率选择 tokens。top_p 越低,生成结果越集中于高概率 tokens。
  1. num_ctx <int>
  • 设置上下文的大小,决定模型能“记住”多少个 tokens。在生成长文本时较为重要。
  1. temperature <float>
  • 控制生成的创造性。值越高,生成的文本越具有创造性和多样性。值越低,生成结果更确定性。
  1. repeat_penalty <float>
  • 设置重复惩罚的强度,值越高,模型越会避免重复相同的 tokens。
  1. repeat_last_n <int>
  • 设置模型回顾历史 tokens 的长度,用于重复惩罚。
  1. num_gpu <int>
  • 设置用于处理模型的 GPU 数量,特别适用于多 GPU 系统。你可以将模型的某些层发送到 GPU 上,以利用 GPU 的加速能力。
  • 如果有多个 GPU 卡
  • 你可以设置 num_gpu 的值为你想要使用的 GPU 数量。如果你有 4 张 GPU,可以设置 num_gpu 4 来让模型使用所有 4 张 GPU 进行推理。
  • 这将分配模型的计算任务到多个 GPU,利用每张 GPU 的显存和计算能力。
  1. stop <string> <string> ...
  • 设置生成文本时的终止条件,模型在生成这些字符串时将停止生成。
多 GPU 设置

在多 GPU 环境中,num_gpu 参数非常关键。假设你有 4 张 GPU,可以使用以下命令来设置:

/set parameter num_gpu 4
  • 1.

这个设置会使模型在推理过程中使用 4 张 GPU,自动分配计算任务到不同的 GPU 上,以更高效地利用硬件资源。

总结
  • num_gpu 参数允许你设置模型使用的 GPU 数量,在多 GPU 环境中尤为重要。
  • 其他参数控制模型生成文本的方式,如生成的文本长度、重复惩罚、生成的创造性等。
  • 根据你的硬件和需求配置这些参数可以显著影响生成的效率和质量。