GPT-J
与 python 一起使用的 GPT-J API
安装 gpt-j
pip install gptj
参数
prompt:您希望给模型的提示
tokens:要生成的令牌数(建议使用 2048 或更少的值)
temperature:控制模型的随机性。更高的值会更随机(建议保持在 1.0 或更少,像 0.3 这样的东西)
top_p:最高概率将使用最有可能的标记
高级参数
user:演讲者 给 gpt-j 提示的人
bot:您选择的虚构角色
context:解释对话框中发生的事情的提示部分
examples:用户意图字典以及机器人应如何响应
基本用法
在提示中输入你想要生成的东西
from GPTJ.Basic_api import SimpleCompletion
prompt = "def perfect_square(num):"
输出响应的最大长度
max_length = 100
温度控制模型的创造力
低温意味着模型在完成提示时将进行较少的更改
高温会让模型更有创意
温度和最高概率都必须是浮点数据类型
temperature = 0.09
顶概率是控制模型随机性的另一种方法
如果您使用的是最高概率设置温度一
如果您使用温度设置最高概率为 1
top_probability = 1.0
初始化 SimpleCompletion 类
在这里,您将查询设置为等于所需的值
高于 512 的音符值往往需要更多时间来生成
query = SimpleCompletion(prompt, length=max_length, t=temperature, top=top_probability)
最后运行下面的函数
query.simple_completion()
## 可选的
您可以将结果分配给一个字符串
Query = query.simple_completion()
print(Query)
高级用法
Context 是一个字符串,是对对话的描述
from GPTJ.gptj_api import Completion
context = "这是一个计算器机器人,将回答基本的数学问题"
示例应该是{用户查询:模型应该响应给定查询的方式}示例列表的字典
查询在左边,而目标响应应该在右边
在这里我们可以看到用户正在询问与模型数学相关的问题
如果在右侧给出,模型应该响应的方式
不要在用户示例结束时使用期间!
examples = {
"5 + 5": "10",
"6 - 2": "4",
"4 * 15": "60",
"10 / 5": "2",
"144 / 24": "6",
"7 + 1": "8"}
这里传递上下文和示例
context_setting = Completion(context, examples)
输入与先前定义的用户查询相关的提示
prompt = "48 / 6"
选择一个与你正在做的事情相关的名字
Below you can change student to "Task" for example and get similar results
User = "Student"
给你想象中的朋友命名任何你想要的名字
Bot = "Calculator"
Max tokens 是输出响应的最大长度
max_tokens = 50
温度控制模型的随机性
低温意味着模型在完成提示时将进行较少的更改
高温将使模型更具创造性并产生更多随机输出
A 注意温度和最高概率都是浮点数
temperature = 0.09
顶概率是控制模型随机性的另一种方式
如果您正在使用它,请设置温度一
如果您使用温度设置最高概率为 1
top_probability = 1.0
简单的设置所有给所有的参数
未填充的参数将是默认值
我建议填充所有参数以获得更好的结果
一切都完成后执行下面的代码
response = context_setting.completion(prompt,
user=User,
bot=Bot,
max_tokens=max_tokens,
temperature=temperature,
top_p=top_probability)
最后但并非最不重要的打印响应
根据给定的参数,请耐心等待有时会花费更长的时间
为了快速响应,只需使用简化版本的 Basic API
print(response)
注意:这是一个非常小的 6B 参数模型,不会总是产生准确的结果
许可和版权
## 信用
多亏了 https://github.com/vicgalle/gpt-j-api,这一切都是可能的
随意查看原始API
另外,可以在 GitHub https://github.com/TheProtaganist/gpt-j 上免费查看我的 API
## 执照
© Michael D Arana
licensed under the MIT License.