我没有花太多时间研究最新的 LLM,因此决定花一些时间这样做。我特别好奇使用嵌入来用额外的相关数据来补充用户提示的用例(例如,将他们最近的工单的当前状态提供到提示中,他们可能会在提示中查询所述工单的进度)。这个用例很有趣,因为现有公司和产品很容易利用它,我想这大概就是 Stripe 的 GPT4 与其文档集成的工作原理。
为了解决这个问题,我创建了一个脚本,将我所有的文字转换为嵌入,标记用户提供的提示以识别我的内容的相关部分以注入到扩展提示中,并将扩展提示发送到 OpenAI AI 的 API。
你可以在 Github 上看到代码,并阅读下面我关于这个项目的笔记。
参考
这种探索的灵感来自Eugene Yan和Simon WIllison最近的工作。我要特别感谢Eugene Yan提出的提高回复质量的建议。
我在下面分享的代码是从许多来源中拼凑而成的:
我发现这些示例中没有一个像记录的那样工作,但最终我能够通过一些探索、重新学习 Pandas 等方式让它们工作。
项目
我的项目是让 OpenAI API 回答问题,同时了解我在这个博客、 StaffEng和Infrastructure Engineering上写的所有个人文章。具体来说,这意味着在 Markdown 中从 Hugo 博客文章创建嵌入以与 OpenAI 一起使用。
您可以阅读 Github 上的代码。我绝对没有做任何事情来使其易于阅读,但它是一个完整的示例,您可以通过将第 112行更改为指向您博客的内容目录来将其用于您自己的文章。 (哦,还有更改第 260 行的提示。
您可以在下面看到它的屏幕截图。
这个项目非常简洁,就其工作而言。我确实花了比预期更长的时间,考虑到一些中断,可能需要大约三个小时才能让它工作,主要是因为文档的示例都被巧妙地破坏了,或者实际上没有连接到工作代码中。在它工作之后,我不可避免地还要花几个小时来摆弄。我的回购代码很糟糕,但是如果其他人有类似的问题使用嵌入的东西来回答问题的话,它是一个完整的工作代码!
关于这个项目的另一个评论是,我并不真的认为这是解决我想解决的问题的特别有效的解决方案,因为它正在执行一个相当基本的 k-means 算法来匹配我博客文章的标记化版本与查询,然后将最佳匹配项作为上下文注入到 GPT 查询中。进入这个,我预计,我不知道,比这更复杂的东西。这是一个非常合理的解决方案,也是一个具有成本效益的解决方案,因为它避免了任何模型(重新)训练,但感觉比我想象的要基础一些。
同样值得注意的是,开发这个应用程序并运行它几十次的总成本:0.50 美元。
思绪
这是一个有趣的项目,部分原因是它偏离了我过去几个月大部分时间所花的时间,即写我的下一本书。编写和编辑一本书是非常有价值的工作,但它缺乏围绕零用户的小项目进行黑客攻击的自由形式的乐趣。在不过度思考或过度构建事物的情况下,这里有一些关于这个项目和整个行业 AI 扩展的要点想法:
- 作为一个已经在这个行业工作了一段时间的人,很容易对新事物感到厌倦。我对最近人工智能炒作的第一反应与我对加密货币炒作的第一反应非常相似:我们以前见过炒作,最初的炒作很少与对行业或社会的长期影响相关。换句话说,我不相信。
- 相反,我认为长期工程领导力的一部分是对新事物保持开放态度。与二十年前相比,这个行业发生了翻天覆地的变化,移动开发就是最明显的证明。大多数事情不会给这个行业带来太大的改变,但有些事情会彻底改变它,我们对这些潜在的转型项目持谨慎态度。
- 我个人认为,新的 AI 浪潮具有适度的变革性,但不会产生巨大的变革。稍微扩展一下我的想法,法学硕士在针对非常普遍的问题的平庸解决方案方面显示出巨大的希望。硅谷一个非常普遍但通常未被提及的模式是雇佣工程师,假装工程师正在解决问题,雇佣大量非工程师来实际解决问题“直到技术自动化”,迅速发展业务,并且希望自动化能在晚些时候解决利润问题。采用 LLM 应该是提高此类业务利润率的宝贵工具,从理论上讲,这应该能够通过提高潜在利润率来创建新业务。然而,我们已经实施了十年的零利率政策,这意味着当年的利润率对人们来说并不重要,这意味着大多数应该通过提高利润率来实现的想法应该已经实现了在之前的边缘不可知十年中尝试过。这意味着 LLM 将使这些业务变得更好,但业务本身应该已经尝试过,并且许多业务最终失败是由于市场规模阻碍了所需的回报,而不是运营其大型内部团队的利润率来掩盖缺失的利润率提升技术。
- 如果您忽略 LLM 所代表的提高利润率的机会,我认为这不应该产生新的商业理念,而是改进过去十年已经尝试过的现有商业理念,那么思考这些工具的最佳点是什么是很有趣的。我的看法是,他们非常擅长支持领域专家,不准确造成的潜在损害受到限制,例如 Github Copilot 是一种非常合理的方式来授权熟练的程序员,也是一种非常冒险的方式来培训新手代码可以访问敏感资源或数据的位置。然而,就我们将专家从作者推向编辑的程度而言,我不确定这对我们当前这一代的专家来说是否真的提高了速度,他们已经精通作者身份并且(通常)在编辑方面的技能较低。也许新一代的专家首先是出色的编辑,其次才是作者,这些工具将培养他们。如果这是真的,那么当前这一代的领导者可能无法适当地评估这些工具,但是……我认为大多数人都会对大多数新技术提出这样的论点,而且这只是有时是真的。 (再一次,加密是一个明显的例子,它没有超越现实世界中的现有技术,监管开销很大。)
无论如何,这是一个有趣的项目,在这里待了一段时间后,我对这个领域的可能性有了更直观的认识,这就是我的目标。随着时间线的推进,我会一直很好奇这里会发生什么。