Lorilla LLM - 面向API调用生成的专用AI大模型

news2024/11/24 22:29:54

Gorilla 是一种先进的大型语言模型 (LLM),旨在与各种 API 有效交互,从而增强 LLM 在实际应用中的功能。

Gorilla LLM的相关链接:官网 | github | 论文。

在这里插入图片描述

推荐:用 NSDT编辑器 快速搭建可编程3D场景

1、Gorilla LLM简介

通过使用自我指导(Self-instruction)和检索(Retrieval )技术,Gorilla 擅长选择和利用具有重叠和不断发展的功能的工具。

使用全面的 APIBench 数据集(包括 HuggingFace、TorchHub 和 TensorHub API)进行评估,Gorilla 在生成 API 调用方面超越了 GPT-4 的性能。
在这里插入图片描述

当与文档检索(Document retrieval)系统配合使用时,它展示了适应 API 文档变化的令人印象深刻的能力,增强了其输出的可靠性和适用性。
在这里插入图片描述

2、Gorilla运行机制

Gorilla 连接 API 的过程涉及几个关键步骤:

在这里插入图片描述

  • 用户提示:用户提供自然语言提示,描述他们希望使用 API 实现的特定任务或目标。
  • 检索(可选):在检索模式下,Gorilla 使用文档检索器(例如 BM25 或 GPT-Index)从数据库中获取最新的 API 文档。 然后,该文档会与用户提示连接起来,并附有一条消息,指示 Gorilla 使用它作为参考。
  • API 调用生成:Gorilla 处理用户提示(以及检索到的文档,如果适用)以生成满足用户任务或目标的适当 API 调用。 这是通过 Gorilla 经过微调的 LLaMA-7B 模型实现的,该模型专为 API 调用而设计。
  • 输出:Gorilla 将生成的 API 调用返回给用户,然后可用于与所需的 API 进行交互并完成指定的任务。

值得注意的是,Gorilla 具有很强的适应性,可以在零样本(zero-shot)和检索模式下运行,使其能够适应 API 文档的变化并随着时间的推移保持准确性。

3、Gorilla快速上手

让我们看看代码。

首先,使用pip安装OpenAI:

pip install openai

像这样配置 api_key 和 api_base:

import openai

openai.api_key = "EMPTY" # Key is ignored and does not matter
openai.api_base = "http://34.132.127.197:8000/v1"

使用 OpenAI 库创建获取 Gorilla 结果的函数:

def get_gorilla_response(prompt="I would like to translate from English to French.", model="gorilla-7b-hf-v0"):
    completion = openai.ChatCompletion.create(
      model=model,
      messages=[{"role": "user", "content": prompt}]
    )
    return completion.choices[0].message.content

执行发送提示的函数并指定想要使用的模型,在本例中为 gorilla-7b-hf-v0。

prompt = "I would like to translate from English to Chinese."
print(get_gorilla_response(prompt, model="gorilla-7b-hf-v0" ))

就是这样。 然后,你将收到来自 Huggingface API 的完整信息以及有关如何执行该请求的说明。

4、Gorilla演示

点击这里访问Gorilla演示:

在这里插入图片描述

5、结束语

Gorilla 是一个突破性的LLM,可以生成准确的 API 调用并适应文档的实时变化。 该模型为未来的LLM在与工具和系统交互方面变得更加可靠和多功能铺平了道路。

LLM未来的进步可以集中在进一步减少幻觉错误、提高对不同 API 的适应性以及扩展其处理复杂任务的能力。 潜在的应用包括充当计算基础设施的主要接口、自动化度假预订等流程以及促进各种 Web API 之间的无缝通信。


原文链接:Gorilla LLM-API调用生成 — BimAnt

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/874673.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

CentOS 项目作出声明,宣称自家 Linux 社区 “始终向所有人开放”

导读在红帽 RHEL 开源事件后,许多兼容 RHEL 的发行版最近都进行了表态,CentOS 项目也在日前作出了声明,宣称自家社区 “始终向所有人开放”。 据悉,CentOS 项目董事会日前在官方博客发布了一则公告,内容主要涉及“ Ce…

拒绝摆烂!C语言练习打卡第一天

🔥博客主页:小王又困了 📚系列专栏:每日一练 🌟人之为学,不日近则日退 ❤️感谢大家点赞👍收藏⭐评论✍️ 🗒️前言: 在前面我们学习完C语言的所以知识,当…

LangChain手记 Models,Prompts and Parsers

整理并翻译自DeepLearning.AILangChain的官方课程:Models,Prompts and Parsers 模型,提示词和解析器(Models, Prompts and Parsers) 模型:大语言模型提示词:构建传递给模型的输入的方式解析器:…

NAS搭建指南二——影视资源中心

1. 刮削 这一部分是利用 tinyMediaManager 进行影视资源的评分、简介以及图片的搜集工作tinyMediaManager 官方网站地址下载及安装过程:略我的主要修改的设置项如下所示: 使用方法: a. 点击更新媒体库 b. 选择影片–>右键单击–>…

Ubuntu 20.04(服务器版)安装 Anaconda

0、Anaconda介绍 Anaconda是一个开源的Python发行版本,包含了包括Python、Conda、科学计算库等180多个科学包及其依赖项。因此,安装了Anaconda就不用再单独安装CUDA、Python等。 CUDA,在进行深度学习的时候,需要用到GPU&#xf…

生信分析pandas数据处理 Python简明教程 | 视频18

开源生信 Python教程 生信专用简明 Python 文字和视频教程 源码在:https://github.com/Tong-Chen/Bioinfo_course_python 目录 背景介绍 编程开篇为什么学习Python如何安装Python如何运行Python命令和脚本使用什么编辑器写Python脚本Python程序事例Python基本语法 数…

软件开发中常用数据结构介绍:C语言链表

工作之余来写写C语言相关知识,以免忘记。今天就来聊聊C语言链表,我是分享人M哥,目前从事车载控制器的软件开发及测试工作。 学习过程中如有任何疑问,可底下评论! 如果觉得文章内容在工作学习中有帮助到你,麻…

干不完根本干不完,我也不想加班,快来围观时间管理大师

时间不够用,怎么办? 成功不靠加班。生产队的驴都不加班,你加什么班?到点就下班,该玩玩,该学习认真学,累了就睡觉。 你可以做任何事,但不必做所有事。 时间管理,不是管…

(十七)大数据实战——Hive的hiveserver2服务安装部署

前言 HiveServer2 是 Apache Hive 的一个服务器端组件,用于支持客户端与 Hive 进行交互和执行查询。HiveServer2服务的作用是提供jdbc/odbc接口,为用户提供远程访问Hive数据的功能。HiveServer2 允许多个客户端同时连接并与 Hive 交互。这些客户端可以通…

HOT91-不同路径

leetcode原题链接:不同路径 题目描述 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )…

shell编程免交互

免交互 定义: 一键执行,无需人工干预,不需要人为控制,就可以完成的操作,继续自动化运维 免交互在linux中的运用: 对于Linux操作系统中,有许多操作都会触及到交互(根据系统的指示做…

OpenCV项目开发实战--相机校准—并附实例Python/C++代码实现

介绍 相机标定是计算机视觉中的一项基本任务在 3D 重建、对象跟踪、增强现实和图像分析等各种应用中至关重要。准确的校准通过校正失真和估计相机的内在和外在参数来确保精确的测量和可靠的分析。这本综合指南深入探讨了相机校准的原理、技术和算法。我们探索获取相机的内在和…

在 Linux 虚拟机上使用 Azure 自定义脚本扩展版本

参考 azure创建虚拟机,创建虚拟机注意入站端口规则开放80端口、 2.转到资源,点击扩展应用程序,创建存储账户,创建容器,上传文件,选择文件,会自动执行部署。 apt-get update -y && apt-get insta…

电信流失用户画像

三大运营商电信、联通、移动,都想扩大自己的客户群体。据研究,获取新客户所需的成本远高于保留现有客户的成本。因此为了满足在激烈竞争中的优势,提前预测出用户是否会流失,采取保留措施成为一大挑战。本文和你一起探索电信流失客…

挤牙膏的iPhone15真不值,实在太敷衍,看完基本没了购买欲望

随着苹果大概会如往年那样在9月13日发布iPhone15,目前iPhone15四款手机的消息已经基本剧透,没啥秘密可言,从透露的消息可以看出低配的iPhone15实在太鸡肋,不值得消费者购买。 据悉iPhone15和iPhone15 plus将采用灵动岛设计&#x…

systrace: 系统级跟踪工具的解析

关于作者:CSDN内容合伙人、技术专家, 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 ,擅长java后端、移动开发、人工智能等,希望大家多多支持。 目录 一、导读二、概览三、获取systrace文件3.1 通过python命令获取3.1.…

HCIP学习-ospf3

前置内容 HICA学习--ospf动态路由协议_板栗妖怪的博客-CSDN博客 HCIA学习--ospf配置_板栗妖怪的博客-CSDN博客 HCIP学习--ospf1_板栗妖怪的博客-CSDN博客 HICP学习--ospf2_板栗妖怪的博客-CSDN博客 5类、7类路由类型 概念 5、7类的路由会纯在一个类型1和类型2的区别 设备…

Jlink RTT工具打印日志

背景 平常调试代码中使用串口打印log,往往需要接出串口引脚,比较麻烦,并且串口打印速度较慢,串口的中断可能会影响代码的执行效率。 SEGGER RTT支持使用J-link调试器输出来自目标微控制器的信息,也可以接收输入&#…

Python 潮流周刊#15:如何分析异步任务的性能?

△点击上方“Python猫”关注 ,回复“1”领取电子书 你好,我是猫哥。这里每周分享优质的 Python、AI 及通用技术内容,大部分为英文。标题取自其中一则分享,不代表全部内容都是该主题,特此声明。 本周刊精心筛选国内外的…

dubbo3-高级特性

dubbo-admin 1.dubbo-admin管理平台,是图形化的管理页面 2.从注册中心中获取所有的提供者/消费者进行配置管理 3.路由规则,动态配置,服务降级,访问控制,权重调整,负载均衡等管理功能 dubbo-admin是一个前…