如何改进我的 ChatGPT API 提示?

问题描述 投票:0回答:1

我遇到与提示工程相关的 ChatGPT API 问题

我有一个数据集,其中包含单独的产品标题和产品描述,这是糟糕的设计,但我无法控制这部分。 我需要为各个标题创建聚合标题。

我以与此类似的方式对数据上的居里模型进行了微调:

提示:

60cm tall Oak Drop Leaf Table|80cm tall Oak Drop Leaf Table|100cm tall Oak Drop Leaf Table|60cm tall Drop Leaf Table Material: Oak with bird design

完成:

Oak Drop Leaf Table

我对大约 100 个人类编写的标题进行了微调

我当前使用的设置:

$data = array(
    'model' => $model,
    'prompt' => $prompt,
    'temperature' => 0.6,
    'max_tokens' => 25,
    "top_p" => 1,
    "frequency_penalty" => 0,
    "presence_penalty" => 0.6,
);

我改变了这些,但效果不佳。

我想知道我哪里出错了?

我收到的回复如下:

60cm Oak Drop Leaf TableOak Drop Leaf TableOak Drop Leaf Table

Oak Drop Leaf Table|Oak Drop Leaf Table|Oak Drop Leaf Table

Oak Drop Leaf Table,Oak Drop Leaf Table,Oak Drop Leaf Table

prompt openai-api gpt-3 chatgpt-api gpt-4
1个回答
0
投票

您已经对数据集上的模型进行了微调,这很好,但您似乎面临着生成响应的质量问题。让我们尝试解决问题并提出可能的解决方案:

提示工程:您提供的提示对于指导模型的响应至关重要。确保您提供的提示明确说明了您希望模型执行的操作。您可能需要明确声明您希望模型根据各个标题和描述生成单个聚合标题。

型号参数:

温度:较低的温度(例如 0.6)使输出更加集中和确定。您可以尝试尝试更高的值以使输出更加多样化。 最大令牌:可以增加“max_tokens”参数以允许更长的响应。如果您生成的标题被过早切断,增加此值可能会有所帮助。 Top-p(核心)采样:您已经使用“top_p”值为 1,这意味着模型考虑了概率核心内的所有可能性。这对你的任务来说很好。 惩罚参数:

频率惩罚:将“Frequency_penalty”设置为 0 可以避免惩罚频繁的标记。但是,您可能想要尝试一个小的正值,以鼓励生成的标题具有一定的多样性。 存在惩罚:0.6 的存在惩罚相对较高,可能会抑制不同的输出。尝试降低它以允许更多创造性的变化。 后处理:收到生成的响应后,考虑对其进行后处理以删除重复的短语或标记。这可以帮助避免重复输出。

多样化的提示:您可以尝试稍微改变提示,而不是使用相同的提示结构。例如,您可以包含更多上下文或改变提示的措辞,看看是否能获得更好的结果。

数据集大小:对大约 100 个样本的小数据集进行微调可能无法捕捉到任务的复杂性,并可能导致过度拟合。如果可能,请考虑扩展您的微调数据集。

额外训练:虽然微调很有帮助,但有时可能需要对模型进行更多时期的训练,以确保它学习所需的行为。但是,请小心过度拟合。

模型版本:确保您使用的是最新版本的 Curie 模型或在上次更新训练数据后可能发布的任何较新版本。

微调评估:确保微调模型已在单独的验证集上进行评估,以验证它是否有效地学习了所需的行为。

尝试使用这些建议,看看是否可以提高生成的聚合标题的质量。可能需要一些尝试和错误才能找到适合您的特定用例的参数和技术的最佳组合。

© www.soinside.com 2019 - 2024. All rights reserved.