• 构建LangChain应用程序的示例代码:31、连接大型语言模型与机器学习社区的系统-HuggingGPT教程


    HuggingGPT:连接大型语言模型(ChatGPT)与机器学习社区(Hugging Face)的系统

    🔥 论文: HuggingGPT: Bridging the Gap Between Large Language Models and the ML Community
    🚀 项目: JARVIS on GitHub
    🤗 空间: HuggingGPT Space on Hugging Face

    设置工具

    我们从Transformers Agent设置了可用的工具。它包括由Transformers支持的工具库以及一些定制工具,如图像生成器、视频生成器、文本下载器等。

    from transformers import load_tool
    
    # 加载Transformers支持的工具列表
    hf_tools = [
        load_tool(tool_name)
        for tool_name in [
            "document-question-answering",    # 文档问答
            "image-captioning",               # 图像描述
            "image-question-answering",       # 图像问答
            "image-segmentation",             # 图像分割
            "speech-to-text",                 # 语音转文本
            "summarization",                  # 文本摘要
            "text-classification",            # 文本分类
            "text-question-answering",        # 文本问答
            "translation",                    # 翻译
            "huggingface-tools/text-to-image", # 文本到图像转换
            "huggingface-tools/text-to-video", # 文本到视频转换
            "text-to-speech",                 # 文本到语音转换
            "huggingface-tools/text-download", # 文本下载
            "huggingface-tools/image-transformation", # 图像转换
        ]
    ]
    

    设置模型和HuggingGPT

    我们创建一个HuggingGPT的实例,并使用ChatGPT作为控制器来管理上述工具。

    from langchain_experimental.autonomous_agents import HuggingGPT
    from langchain_openai import OpenAI
    
    # 设置环境变量,指定OpenAI API的基础URL
    %env OPENAI_API_BASE=http://localhost:8000/v1
    
    # 创建OpenAI模型实例,使用gpt-3.5-turbo模型
    llm = OpenAI(model_name="gpt-3.5-turbo")
    # 创建HuggingGPT代理实例,传入大型语言模型和工具列表
    agent = HuggingGPT(llm, hf_tools)
    

    运行示例

    给定一段文本,展示一个相关的图像和视频。

    # 运行代理,根据文本内容展示图像和视频
    agent.run("please show me a video and an image of 'a boy is running'")
    

    总结

    本文介绍了HuggingGPT系统,这是一个将大型语言模型(如ChatGPT)与机器学习社区(如Hugging Face)连接起来的系统。通过设置Transformers Agent提供的工具库和一些定制工具,HuggingGPT能够执行多种任务,包括文档问答、图像描述、图像问答等。通过创建HuggingGPT实例并使用ChatGPT作为控制器,可以管理和调度这些工具来执行复杂的任务。示例中展示了如何使用HuggingGPT根据文本内容展示相关的图像和视频。

    扩展知识

    • Transformers:一个由Hugging Face开发的开源库,用于自然语言处理任务,支持多种预训练模型。
    • Hugging Face:一个开源的机器学习模型库,提供大量的预训练模型和工具,广泛应用于自然语言处理和其他机器学习任务。
    • 大型语言模型(LLM):如ChatGPT,是一种预训练的深度学习模型,能够生成或理解自然语言文本。
    • API:应用程序编程接口,允许不同的软件应用程序之间进行交互。
    • 环境变量:在操作系统中定义的变量,可以被应用程序读取以配置其行为。
  • 相关阅读:
    pytorch 手写数字识别例子
    Python 实现获取【昨天】日期
    Linux的TCP连接问题解决调优观察
    WMS库位管理
    HarmonyOS—低代码开发Demo示例
    Redis怎么保证数据不丢失
    node笔记_koa框架是什么?
    使用webSocket实现对数据的实时推送
    notepad++编辑多个位置
    Centos7离线安装ALISQL5.6.32-8
  • 原文地址:https://blog.csdn.net/wangjiansui/article/details/139632480