【问题标题】:Is there a known workaround for the max token limit on the input to GPT-3?对于 GPT-3 输入的最大令牌限制是否有已知的解决方法?
【发布时间】:2023-01-23 09:07:31
【问题描述】:

关于一些上下文,我最近开始从事一个个人项目,该项目接受一些食谱网页的 URL,提取 HTML,将 HTML 转换为简化的 markdown(这是 GPT-3 部分),然后将该 markdown 发送到我厨房里的热敏收据打印机,可以打印出来。

食谱网页具有各种各样的结构,并且为了 SEO 而臭名昭著的是在食谱之前包含冗长且通常不相关的文章。

我的计划是使用 davinci2 的微调 API,并为其提供一堆直接的食谱 HTML 作为输入,并提供干净的、仅限食谱的降价作为输出。我注意到训练和推理的最大输入标记数是 4096。网页的 HTML 可以比这大得多,比如 20k 标记。

我想知道是否有人找到了使用比 4096 多的令牌来训练和驱动 GPT-3 的解决方法。

我也愿意接受其他建议。例如,我考虑过只传递页面上的可见文本,而不是完整的 HTML 树,但是这种形式的上下文要少得多,而且模型似乎更容易被所有链接和其他导航元素混淆出现在页面中。我还考虑过只允许这个项目接受“打印友好”版本的食谱,这些版本往往更小并且很容易进入 4096 令牌限制,但并非所有站点都提供打印友好的文章,我不'希望这是一个限制。

【问题讨论】:

    标签: machine-learning gpt-3


    【解决方案1】:

    不知道有什么解决方法,但您是否考虑过根据一些基本规则过滤掉 HTML 元素。您可以仅包含段落元素或

    具有某些特征的元素,比如其中有一个列表,这是大多数食谱都有的东西。

    【讨论】:

    • 困难的部分是找到适用于大部分网站的经验法则。回顾过去 3 个月我做的食谱,它们来自 15 个不同的网站。其他人建议进行初步检查,看看是否有一些模式标记,这也是一个有趣的想法。
    【解决方案2】:

    这个框架可能对你有用:https://github.com/Xpitfire/symbolicai

    基本思想是:

    1. 您可以在输入数据之间流式传输并在侧面建立堆栈。
    2. 接下来,在您的训练过程中,您需要考虑松散连接的数据块。在设计提示之前,您可以通过对块进行索引或聚类来克服这一点。
    3. 这意味着,如果您想为与您的长数据流相关的问题创建查询,您可以搜索您的索引并检索相关信息。
    4. 现在您需要将您的小样本学习提示一起解析,该提示说明提示中与您的查询相关的“部分”,以及您想要包含的事实的另一部分。
    5. 最后,您可以将其输入模型并提供您希望模型调整到的示例。

      我知道这有点高级解释,但也许如果你点击我提供的链接,事情可能会变得更清楚。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-08-01
      • 2021-08-16
      • 2013-01-27
      • 1970-01-01
      • 2016-08-31
      • 1970-01-01
      • 2011-10-30
      相关资源
      最近更新 更多