全网最详细中英文ChatGPT-GPT-4示例文档-智能编写Python注释文档字符串从0到1快速入门——官网推荐的48种最佳应用场景(附python/node.js/curl命令源代码,小白也能学)

来源:博客园 时间:2023-03-31 11:35:42


(资料图)

目录Introduce 简介setting 设置Prompt 提示Sample response 回复样本API request 接口请求python接口请求示例node.js接口请求示例curl命令示例json格式示例其它资料下载

ChatGPT是目前最先进的AI聊天机器人,它能够理解图片和文字,生成流畅和有趣的回答。如果你想跟上AI时代的潮流,你一定要学会使用ChatGPT。如果你想了解OpenAI最新发布的GPT-4模型,以及它如何为ChatGPT聊天机器人带来更强大的功能,那么你一定不要错过OpenAI官网推荐的48种最佳应用场景,不管你是资深开发者、初学者,你都能够从0到1快速入门,并掌握他们。

在这个AI大时代,如果不想被人颠覆,就要先颠覆别人。如果你颠覆不了别人,那你就努力运用ChatGPT提高你的技术水平和创造力。

如果要给一个python函数写高质量的文档字符串,程序员不仅要需要在文档字符串中描述函数的参数和返回值,并使用相应的标签(例如Args,Returns,Raises)来提升可读性,还需要注意相关的语法规则和格式。而ChatGPT的智能注释文档生成功能,能帮助程序员智能创建注释文档字符串,极大地提高了python函数注释效率。

Introduce 简介

Write a Python docstring 编写Python文档字符串An example of how to create a docstring for a given Python function. We specify the Python version, paste in the code, and then ask within a comment for a docstring, and give a characteristic beginning of a docstring (""").这是一个如何为给定的Python函数创建注释文档字符串的示例。我们指定Python版本,粘贴到代码中,然后在注释中请求一个文档字符串,并给予一个文档字符串的特征开头(""")。

setting 设置

Engine: text-davinci-003Max tokens:150Temperature:0Top p:1.0Frequency penalty:0.0Presence penalty:0.0Stop sequence#"""

说明:0、Engine设置定义了你要使用的模型,例如 text-davinci-003是一个文本生成模型。这种模型可以根据输入的文本,生成新的、相关的文本。1、Max tokens是指在请求中最多允许返回的 token 数目,比如你可以指定 chatGPT 返回最多60个 token。这可以帮助你控制输出的内容大小,以便更好地控制响应速度和结果。一般1个token约4个字符或者0.75个单词2、Temperature是一个参数,用于控制 chatGPT 的输出。它决定了 chatGPT 在生成文本时会多么“随意”。值越高,chatGPT 生成的文本就越不可预测;值越低,chatGPT 生成的文本就越可预测。它在0.0到2.0之间,Temperature设置为0意味着ChatGPT将会生成更加保守的回复,即更少的随机性和更多的准确性,这可以帮助你在聊天中更好地控制语义,并且可以防止ChatGPT产生不相关的内容。通常建议更改此值或 Top P,但不要同时更改这两个值。3、Top p是随温度采样的替代方案,称为核采样,其中模型考虑具有top_p概率质量的标记的结果。因此0.1意味着仅考虑包括前10%概率质量的记号。通常建议更改此值或 temperature,但不要同时更改这两个值。4、Frequency penalty是指在训练时,模型会根据词频来调整每个单词的重要性。它可以帮助模型更好地理解文本,并减少过拟合。介于-2.0和2.0之间的数字。正值会根据新标记在文本中的现有频率惩罚新标记,从而降低模型逐字重复同一行的可能性。Frequency penalty设置为0意味着模型不会对重复的词进行惩罚。它可以帮助模型生成更多的新词,而不是重复使用已有的词。5、Presence penalty是指在ChatGPT中,一些预先定义的条件或者状态可能会影响机器人回答的质量,介于-2.0和2.0之间的数字。正值会根据新标记到目前为止是否出现在文本中来惩罚它们,从而增加模型谈论新主题的可能性。如果将 Presence penalty 设置为 0,则表示不会有任何惩罚。6、Stop sequence是一种设置,通过它可以确定你的聊天会话的结束标志。当你在 ChatGPT中设置 Stop sequence为 #"""时,表示你的聊天会话结束标志是注释符#"""

Prompt 提示
# Python 3.7def randomly_split_dataset(folder, filename, split_ratio=[0.8, 0.2]):    df = pd.read_json(folder + filename, lines=True)    train_name, test_name = "train.jsonl", "test.jsonl"    df_train, df_test = train_test_split(df, test_size=split_ratio[1], random_state=42)    df_train.to_json(folder + train_name, orient="records", lines=True)    df_test.to_json(folder + test_name, orient="records", lines=True)randomly_split_dataset("finetune_data/", "dataset.jsonl")# An elaborate, high quality docstring for the above function: 用于上述函数的详尽高质量文档字符串"""
Sample response 回复样本
""" This function randomly splits a dataset into two parts, a training set and a test set, according to a given split ratio.Parameters:    folder (str): The path to the folder containing the dataset.    filename (str): The name of the dataset file.    split_ratio (list): A list of two floats representing the ratio of the training set and the test set.Returns:    None""""""此函数根据给定的拆分比率将数据集随机拆分为两个部分:训练集和测试集。参数:folder (str):包含数据集的文件夹的路径。filename (str):数据集文件的名称。split_ratio(list):一个由两个浮点数组成的列表,表示训练集和测试集的比率。返回:  无"""
API request 接口请求python接口请求示例
import osimport openaiopenai.api_key = os.getenv("OPENAI_API_KEY")response = openai.Completion.create(  model="text-davinci-003",  prompt="# Python 3.7\n \ndef randomly_split_dataset(folder, filename, split_ratio=[0.8, 0.2]):\n    df = pd.read_json(folder + filename, lines=True)\n    train_name, test_name = \"train.jsonl\", \"test.jsonl\"\n    df_train, df_test = train_test_split(df, test_size=split_ratio[1], random_state=42)\n    df_train.to_json(folder + train_name, orient="records", lines=True)\n    df_test.to_json(folder + test_name, orient="records", lines=True)\nrandomly_split_dataset("finetune_data/", "dataset.jsonl")\n    \n# An elaborate, high quality docstring for the above function:\n\"\"\"",  temperature=0,  max_tokens=150,  top_p=1.0,  frequency_penalty=0.0,  presence_penalty=0.0,  stop=["#", "\"\"\""])
node.js接口请求示例
const { Configuration, OpenAIApi } = require("openai");const configuration = new Configuration({  apiKey: process.env.OPENAI_API_KEY,});const openai = new OpenAIApi(configuration);const response = await openai.createCompletion({  model: "text-davinci-003",  prompt: "# Python 3.7\n \ndef randomly_split_dataset(folder, filename, split_ratio=[0.8, 0.2]):\n    df = pd.read_json(folder + filename, lines=True)\n    train_name, test_name = \"train.jsonl\", \"test.jsonl\"\n    df_train, df_test = train_test_split(df, test_size=split_ratio[1], random_state=42)\n    df_train.to_json(folder + train_name, orient="records", lines=True)\n    df_test.to_json(folder + test_name, orient="records", lines=True)\nrandomly_split_dataset("finetune_data/", "dataset.jsonl")\n    \n# An elaborate, high quality docstring for the above function:\n\"\"\"",  temperature: 0,  max_tokens: 150,  top_p: 1.0,  frequency_penalty: 0.0,  presence_penalty: 0.0,  stop: ["#", "\"\"\""],});
curl命令示例
curl https://api.openai.com/v1/completions \  -H "Content-Type: application/json" \  -H "Authorization: Bearer $OPENAI_API_KEY" \  -d "{  "model": "text-davinci-003",  "prompt": "# Python 3.7\n \ndef randomly_split_dataset(folder, filename, split_ratio=[0.8, 0.2]):\n    df = pd.read_json(folder + filename, lines=True)\n    train_name, test_name = \"train.jsonl\", \"test.jsonl\"\n    df_train, df_test = train_test_split(df, test_size=split_ratio[1], random_state=42)\n    df_train.to_json(folder + train_name, orient="records", lines=True)\n    df_test.to_json(folder + test_name, orient="records", lines=True)\nrandomly_split_dataset("finetune_data/", "dataset.jsonl")\n    \n# An elaborate, high quality docstring for the above function:\n\"\"\"",  "temperature": 0,  "max_tokens": 150,  "top_p": 1.0,  "frequency_penalty": 0.0,  "presence_penalty": 0.0,  "stop": ["#", "\"\"\""]}"
json格式示例
{  "model": "text-davinci-003",  "prompt": "# Python 3.7\n \ndef randomly_split_dataset(folder, filename, split_ratio=[0.8, 0.2]):\n    df = pd.read_json(folder + filename, lines=True)\n    train_name, test_name = \"train.jsonl\", \"test.jsonl\"\n    df_train, df_test = train_test_split(df, test_size=split_ratio[1], random_state=42)\n    df_train.to_json(folder + train_name, orient="records", lines=True)\n    df_test.to_json(folder + test_name, orient="records", lines=True)\nrandomly_split_dataset("finetune_data/", "dataset.jsonl")\n    \n# An elaborate, high quality docstring for the above function:\n\"\"\"",  "temperature": 0,  "max_tokens": 150,  "top_p": 1.0,  "frequency_penalty": 0.0,  "presence_penalty": 0.0,  "stop": ["#", "\"\"\""]}
其它资料下载

如果大家想继续了解人工智能相关学习路线和知识体系,欢迎大家翻阅我的另外一篇博客《重磅 | 完备的人工智能AI 学习——基础知识学习路线,所有资料免关注免套路直接网盘下载》这篇博客参考了Github知名开源平台,AI技术平台以及相关领域专家:Datawhale,ApacheCN,AI有道和黄海广博士等约有近100G相关资料,希望能帮助到所有小伙伴们。

关键词:

推荐内容

Copyright 2000-2023 by www.jiaoyu.meiriwang.net all rights reserved

备案号:沪ICP备2023005074号-40

邮箱 : 5 85 59 73 @qq.com