以下是一些关于能够调用国外多个 LLM 的相关信息:
大家好,我是一个开源项目作者ailm。目前,绝大多数小型本地开源大语言模型以及部分商用大模型接口都不支持稳定的tool calling功能。而现有的解决方案是微调LLM,这导致大量的时间和算力被浪费。本文提出一种仅使用提示词工程和一些精巧的代码设计,即可让LLM获得稳定的tool calling能力。本文使用多个不具备tool calling能力的LLM作为测试模型,在多个工具调用任务上进行实验,成功率为100%。本文所有工作是基于comfyui开发,适合完全没有代码基础的小伙伴们复现并且按自己的想法修改我的工作。
在高级提示词工程领域,工具、连接器和技能的整合显著增强了大型语言模型(LLM)的能力。这些元素使LLM能够与外部数据源互动,并执行超出其固有能力范围的特定任务,极大地扩展了它们的功能和应用范围。在这里,工具是指LLM可以利用的外部功能或服务。这些工具扩展了LLM可以执行的任务范围,从基本的信息检索到与外部数据库或API的复杂互动。连接器作为LLM与外部工具或服务之间的接口。它们管理数据交换和通信,使有效利用外部资源成为可能。连接器的复杂性可以变化,适应各种外部互动。技能是指LLM可以执行的专门功能。这些封装的能力,如文本摘要或语言翻译,增强了LLM处理和响应提示词的能力,即使没有直接访问外部工具。在论文“Toolformer:Language Models Can Teach Themselves to Use Tools”[8]中,作者超越了简单的工具使用,通过训练LLM决定何时使用什么工具,甚至API需要什么参数。工具包括两个不同的搜索引擎,或一个计算器。在以下示例中,LLM决定调用一个外部问答工具、一个计算器和一个Wikipedia搜索引擎。最近,伯克利的研究人员训练了一个新的LLM,名为Gorilla[9],它在使用API方面击败了GPT-4,这是一个特定但相当通用的工具。
目前,开源模型落后于专有产品,但差距正在开始缩小。Meta的LLaMa模型为开源准确性设定了新的标准,并引发了一系列变体。由于LLaMa只被授权用于研究用途,许多新的提供商已经介入训练替代基础模型(例如Together、Mosaic、Falcon、Mistral)。Meta还在[讨论](https://youtu.be/6PDk-_uhUt8?t=139)LLaMa 2的真正开源版本。当(而不是如果)开源LLM达到与GPT-3.5相当的准确度水平时,我们期望看到文本的稳定扩散时刻——包括微调模型的大量实验、共享和生产。像Replicate这样的托管公司已经在添加工具,让软件开发人员更容易使用这些模型。开发人员越来越相信,更小、经过微调的模型可以在狭窄的用例中达到最先进的准确性。我们采访过的大多数开发人员还没有深入研究LLM的操作工具。缓存相对普遍——通常基于Redis——因为它可以缩短应用程序响应时间并降低成本。Weights & Biases和MLflow(从传统机器学习移植而来)或PromptLayer和Helicone(专为LLM设计)等工具也得到了相当广泛的使用。他们可以记录、跟踪和评估LLM输出,通常是为了改进提示构建、调整管道或选择模型。还有许多正在开发的新工具来验证LLM输出(例如Guardrails)或检测提示注入攻击(例如Rebuff)。大多数这些操作工具都鼓励使用他们自己的Python客户端来进行LLM调用,因此看看这些解决方案如何随着时间的推移共存将会很有趣。