文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

ChatGpt的参数意义和运用调整模型生成答案的倾向性生成内容

2023-09-09 17:35

关注

目录

一般参数:

调整模型生成答案的倾向性:


一般参数:

  1.  temperature:控制生成文本的随机性。较高的温度会导致更加随机和多样化的生成文本,而较低的温度则会更加保守和精准。取值范围为0到1,一般默认为0.5。

  2. top_p:指定生成文本的多样性。该参数与温度类似,可以控制生成文本的随机性,但是会更加保守和精准。如果设置了top_p,则在保证生成文本的概率总和超过top_p之前,会一直选择概率最高的单词进行生成。一般取值范围为0到1,一般默认为1.0。

  3. frequency_penalty:控制重复单词的惩罚力度。较大的惩罚力度会导致生成文本中不太可能出现相同的单词,而较小的惩罚力度则会容忍一定程度的重复。取值范围为0到1,一般默认为0。

  4. presence_penalty:控制模型生成与文本样本中不同的单词的惩罚力度。较大的惩罚力度会导致生成文本中更多地包含文本样本中未出现的单词,而较小的惩罚力度则会限制生成文本的多样性。取值范围为0到1,一般默认为0。

  5. best_of:指定API返回多少个完整的响应中的最佳响应。如果指定了best_of,则API将生成多个响应并从中选择最佳响应。

  6. timeout:指定等待API返回响应的最长时间(以毫秒为单位)。

  7. echo:指定是否返回输入的请求。

  8. prompt:指定API的输入文本。

  9. engine:指定要使用的OpenAI语言模型。

  10. max_tokens:指定API生成文本的最大长度。

  11. n:指定API生成的文本数量。

  12. stop:指定当API生成的文本中出现此字符串时停止生成文本

来个python举例:

import openai# 设置 OpenAI API 凭据openai.api_key = 'YOUR_API_KEY_HERE'# 设置生成文本的提示prompt = "在一个令人震惊的发现中,科学家们在安第斯山脉的一个偏远、以前未开发的山谷里发现了一群独角兽。更令研究人员惊讶的是,这些独角兽竟然说着流利的英语。"# 设置 OpenAI 模型model = "text-davinci-002"# 设置最大生成 token 数量max_tokens = 100# 设置 "temperature" 参数,控制生成文本的创造力temperature = 0.5# 设置 "top_p" 参数,控制生成文本的多样性top_p = 1# 设置 "frequency_penalty" 参数,防止生成的文本重复frequency_penalty = 0# 设置 "presence_penalty" 参数,防止生成的文本包含特定单词或短语presence_penalty = 0# 设置 "best_of" 参数,控制生成的响应数量best_of = 1# 设置 "timeout" 参数,控制 API 生成文本的最大时间timeout = 5# 设置 "echo" 参数,将提示包含在生成的文本中echo = True# 设置 "logit_bias" 参数,控制生成文本的倾向性logit_bias = {"unicorn": 1.0}# 使用 OpenAI API 生成文本response = openai.Completion.create(    engine=model,    prompt=prompt,    max_tokens=max_tokens,    temperature=temperature,    top_p=top_p,    frequency_penalty=frequency_penalty,    presence_penalty=presence_penalty,    best_of=best_of,    timeout=timeout,    echo=echo,    logit_bias=logit_bias)# 打印生成的文本print(response.choices[0].text.strip())

调整模型生成答案的倾向性:

logit_bias 是一个可选参数,用于设置某些词或短语的偏置,以调整模型生成答案的倾向性。可以将其传递给 openai.Completion.create() 方法,如下所示:

response = openai.Completion.create(    engine="text-davinci-002",    prompt=prompt,    temperature=0.7,    max_tokens=1024,    n=1,    stop=None,    logit_bias={"positive": 2.0, "negative": -2.0})

在上述代码中,logit_bias 参数是一个字典,其中包含两个键值对:positivenegative。这些键表示您希望增加或减少的概率,以及它们所应用的词汇类别。在这种情况下,将增加 positive 类别的概率,减少 negative 类别的概率。

注意:这个{"positive": 2.0, "negative": -2.0}里面的key是自定义的,后面的值用正负号来调整倾向性的,比如: {"店铺": 2.0, "商铺": -2.0},那么结果里面关于店铺的词频就出现的多,商铺的词频就出现的少。

来源地址:https://blog.csdn.net/liuruiaaa/article/details/129931010

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯