用于在生产中操作大型语言模型 (LLM) 的开放平台。轻松微调、服务、部署和监控任何法学硕士。
简介
OpenLLM 是一个开源平台,旨在促进大型语言模型 (LLM) 在实际应用中的部署和操作。借助 OpenLLM,您可以在任何开源 LLM 上运行推理,将其部署在云端或本地,并构建强大的 AI 应用程序。
主要特点包括:
🚂最先进的 LLM:对各种开源 LLM 和模型运行时的集成支持,包括但不限于 Llama 2、StableLM、Falcon、Dolly、Flan-T5、ChatGLM 和 StarCoder。
🔥灵活的 API:使用单个命令通过 RESTful API 或 gRPC 为 LLM 提供服务。您可以使用 Web UI、CLI、Python/JavaScript 客户端或您选择的任何 HTTP 客户端与模型进行交互。
⛓️自由构建:对 LangChain、BentoML、LlamaIndex、OpenAI 端点和 Hugging Face 的一流支持,让您可以通过将 LLM 与其他模型和服务组合来轻松创建自己的 AI 应用程序。
🎯简化部署:自动生成 LLM 服务器 Docker 映像或通过 ☁️ BentoCloud部署为无服务器端点,它可以轻松管理 GPU 资源,根据流量进行扩展,并确保成本效益。
🤖️带上你自己的法学硕士:微调任何法学硕士以满足你的需求。您可以加载 LoRA 层来微调模型,以获得特定任务的更高准确性和性能。模型的统一微调 API ( LLM.tuning()) 即将推出。
⚡ 量化:使用LLM.int8、SpQR (int4)、AWQ、 GPTQ和SqueezeLLM等量化技术以更少的计算和内存成本运行推理。
📡 Streaming:通过服务器发送事件(SSE)支持令牌流。您可以使用/v1/generate_stream 端点来流式传输来自 LLM 的响应。
🔄 连续批处理:通过vLLM支持连续批处理,以提高总吞吐量。
OpenLLM 专为致力于构建基于 LLM 的生产就绪应用程序的 AI 应用程序开发人员而设计。它提供了一套全面的工具和功能,用于微调、服务、部署和监控这些模型,从而简化了法学硕士的端到端部署工作流程。
快速开始
以下提供了如何在本地开始使用 OpenLLM 的说明。
先决条件
您已安装 Python 3.8(或更高版本)和 pip.我们强烈建议使用虚拟环境来防止包冲突。
安装 OpenLLM
使用pip以下命令安装 OpenLLM:
pip install openllm
要验证安装,请运行:
$ openllm -h
Usage: openllm [OPTIONS] COMMAND [ARGS]...
██████╗ ██████╗ ███████╗███╗ ██╗██╗ ██╗ ███╗ ███╗
██╔═══██╗██╔══██╗██╔════╝████╗ ██║██║ ██║ ████╗ ████║
██║ ██║██████╔╝█████╗ ██╔██╗ ██║██║ ██║ ██╔████╔██║
██║ ██║██╔═══╝ ██╔══╝ ██║╚██╗██║██║ ██║ ██║╚██╔╝██║
╚██████╔╝██║ ███████╗██║ ╚████║███████╗███████╗██║ ╚═╝ ██║
╚═════╝ ╚═╝ ╚══════╝╚═╝ ╚═══╝╚══════╝╚══════╝╚═╝ ╚═╝.
An open platform for operating large language models in production.
Fine-tune, serve, deploy, and monitor any LLMs with ease.
Options:
-v, --version Show the version and exit.
-h, --help Show this message and exit.
Commands:
build Package a given models into a BentoLLM.
import Setup LLM interactively.
models List all supported models.
prune Remove all saved models, (and optionally bentos) built with OpenLLM locally.
query Query a LLM interactively, from a terminal.
start Start a LLMServer for any supported LLM.
start-grpc Start a gRPC LLMServer for any supported LLM.
Extensions:
build-base-container Base image builder for BentoLLM.
dive-bentos Dive into a BentoLLM.
get-containerfile Return Containerfile of any given Bento.
get-prompt Get the default prompt used by OpenLLM.
list-bentos List available bentos built by OpenLLM.
list-models This is equivalent to openllm models...
playground OpenLLM Playground.
启动LLM服务器
OpenLLM 允许您使用 快速启动 LLM 服务器openllm start。例如,要启动 phi-2 服务器,请运行以下命令:
TRUST_REMOTE_CODE=True openllm start microsoft/phi-2
这将在http://0.0.0.0:3000/处启动服务器 。如果之前尚未注册,OpenLLM 会将模型下载到 BentoML 本地模型存储。要查看本地模型,请运行bentoml models list.
要与服务器交互,您可以访问 http://0.0.0.0:3000/的 Web UI或使用 发送请求 curl。您还可以使用OpenLLM的内置Python客户端与服务器交互:
import openllm
client = openllm.client.HTTPClient('http://localhost:3000')
client.query('Explain to me the difference between "further" and "farther"')
或者,使用以下 openllm query 命令查询模型:
export OPENLLM_ENDPOINT=http://localhost:3000
openllm query 'Explain to me the difference between "further" and "farther"'
OpenLLM 无缝支持许多模型及其变体。您可以指定要提供服务的模型的不同变体。例如:
openllm start
最后编辑:Jeebiz 更新时间:2025-05-12 09:20