网站建设费用会计入什么费用,农村网站建设调查报告,怎么给网站加图标,wordpress 新添加页面模板一、前言
生成式人工智能领域的发展继续加速#xff0c;大型语言模型 (LLM) 的用途范围不断扩大。这些用途跨越不同的领域#xff0c;包括个人助理、文档检索以及图像和文本生成。ChatGPT 等突破性应用程序为公司进入该领域并开始使用这项技术进行构建铺平了道路。
大公司正…一、前言
生成式人工智能领域的发展继续加速大型语言模型 (LLM) 的用途范围不断扩大。这些用途跨越不同的领域包括个人助理、文档检索以及图像和文本生成。ChatGPT 等突破性应用程序为公司进入该领域并开始使用这项技术进行构建铺平了道路。
大公司正在构建自己的模型例如 Meta 及其新发布的 Llama 2以及 Microsoft 与 OpenAI 和 Meta 的合作伙伴关系这表明该领域存在大量投资。
Hugging Face 等独角兽初创公司以 40 亿美元的估值筹集资金主导了开源领域让任何人都可以轻松部署模型。然而由于成本高昂小公司不太可能在从头开始建立生产级的大语言模型与大型科技巨头竞争。
像LangChain这样的生态系统为开发人员与这些第三方 LLM 或通常所说的基础模型进行交互提供了一组有用的实用程序。LangChain 类帮助开发人员利用具有 I/O 和内存的模型并提供模型链来完成文档检索等特定任务。此外LangChain建立了标准词汇引入了生态系统中具有明确含义的“RetrievalChain”和“MemoryStore”等术语从而简化了AI工程师之间的讨论。
二、LLM模型集成问题
在前面我们介绍了一个名为Quivr的开源项目它用于构建本地知识库。然而当需要扩展多个不同的模型时功能开发变得非常复杂且难以维护。为了解决这个问题作者 Stan Girard 开发了Genoss。Genoss通过创建一个简单的API允许使用任何模型都可以像使用OpenAI的ChatGPT API一样使用相同的API接口。这样一来Quivr的模型扩展能力就完全解耦出来了只需要使用Genoss调用统一的API接口即可完成其他模型的接入包括本地LLM。
目前用于与LLM提供商进行集成的工具还存在明显的差距。随着新型和改进型模型的引入以及技术的进步工程师们希望能够自由快速地实现这些模型的新功能。
LangChain为许多模型提供了类例如OpenAI和Hugging Face这些类基于一个通用的LLM类。然而对于每个提供商需要使用不同的类。这些类具有各种方法和属性尽管你希望它们可以直接插拔使用但实际解决方案很少是那么简单的。
此外模型流式传输和嵌套链等因素进一步复杂化了问题。虽然LangChain在构建可组合部件之间的互操作性方面做得很好例如VectorStores、DocumentLoaders和Retrievers但在切换LLM模型时我们需要改进开发者的体验。
三、GenossGPT 介绍
GenossGPT提供了与GPT模型交互的通用接口使企业能够控制模型的使用。同时利用LangSmith在生产环境中提供增强的可观察性和分析功能。
Genoss是一个由LangChain支持的模型网关。它将调用任何受支持的LLM语言模型的过程标准化为一个统一的接口并与OpenAI API规范兼容。只需将基本URL更改为Genoss端点就可以轻松获得任何LLM模型的强大功能。它可以直接集成到任何支持OpenAI接口的第三方工具中。
Genoss简化了与多个提供者之间的交互和嵌入模型的繁重工作。通过简单地更改模型名称您可以在本地开源模型、OpenAI模型、AWS Bedrock模型或任何Hugging Face模型之间进行切换。 在企业环境中使用Genoss时管理员可以通过仪表板上的单一更改来更新模型。无需更新任何应用程序代码即可指向新的LLM提供者所有映射都由Genoss处理。这对于需要针对不同任务或用户层使用不同模型的应用程序非常有用。付费用户可以选择具有不同优势的模型例如增强隐私或使用特定知识进行微调而演示用户则可以使用通用且更便宜的模型。
四、Genoss 接入 Llama V2 LLM模型
Llama V2是一种先进的LLM语言模型旨在完成各种自然语言处理任务。Genoss是一个开源平台使我们能够快速运行这样的模型而Hugging Face提供了一个生态系统来托管和管理模型。
接下来我们将介绍如何使用Genoss通过Hugging Face的推理端点来运行Llama V2 LLM模型将其托管在Hugging Face服务器上。
4.1、下载项目源码
git clone https://github.com/OpenGenerativeAI/GenossGPT.git4.2、搭建开发环境
1、安装 Python 3.11 版本
安装pyenv来管理您的 Python 版本和虚拟环境
curl -sSL https://pyenv.run | bash如果您在 MacOS 上使用 pyenv 安装 python 时遇到错误请按照此评论操作。
将这些行添加到您的~/.bashrc或~/.zshrc以便能够激活pyenv virtualenv
eval $(pyenv init -)
eval $(pyenv virtualenv-init -)
eval $(pyenv init --path)重新启动Shell终端 安装正确版本Python的pyenv
pyenv install 3.11.32、安装 Poetry
安装Poetry来管理您的依赖项和工具配置
curl -sSL https://install.python-poetry.org | python - --version 1.5.1如果您之前没有安装过任何Python版本您可能需要在安装Poetry之前设置全局Python版本
pyenv global 3.11.33、创建虚拟环境
创建您的虚拟环境并将其链接到您的项目文件夹
pyenv virtualenv 3.11.3 genoss-gpt
pyenv local genoss-gpt这样每次进入项目目录时你的 virtualenv 都会被激活。
4、通过poetry安装Python依赖
poetry install --no-root安装Poetry它可以轻松安装处理 Genoss 后端所需的一切依赖。
4.3、更新配置文件
demo文件夹内有一个env.example文件。
cp .env.example .env进入demo文件夹并更新.env文件。 添加 HuggingFace API 令牌您可以在 HuggingFace 的 settings/token 下创建该令牌。 添加 OpenAI API 密钥。前往https://platform.openai.com/account/api-keys 最后指定自定义 HuggingFace 端点 URL。 4.4、部署模型 在 HuggingFace 上找到 Llama V2 型号。 将其部署在您选择的区域和云提供商中。 选择所需的 GPU 并保护它然后创建端点。 4.5、运行 Genoss 将部署模型中的 URL 添加到.env文件中。 运行命令以启动流。
PYTHONPATH. streamlit run demo/main.py 4.6、访问 Genoss
现在您可以通过推理端点访问 Genoss、HuggingFace 和 Llama V2。 您还可以在本地托管其他模型。
GitHub地址https://github.com/OpenGenerativeAI/GenossGPT
五、结论
模型接口的不一致性使得使用LLM变得比较复杂。商业和开源模型没有统一的标准接口而Genoss提供了统一的接口标准使得商业和开源模型能够更加方便地使用。通过使用Genoss开发人员可以降低学习曲线快速构建应用程序并扩展生成式AI功能的利用。
考虑到LLM的快速发展速度开发人员可以使用Genoss来测试最新的模型并在本地运行私有模型进行微调。企业可以使用Genoss来控制用户在内部和生产应用程序中对模型的使用并利用LangSmith进行可观察性、调试和测试。
本文通过使用Genoss和Hugging Face的Llama V2模型我们可以轻松地完成复杂的任务。Genoss提供了一种简化模型部署和使用的方法同时还能够实现系统的可扩展性。此外它还能与其他工具如OpenAI SDK无缝集成为用户提供更多的灵活性和便利性。