AI

LocalAI:自托管 OpenAI API 兼容推理服务器

LocalAI 是一个自托管的 OpenAI API 兼容推理服务器,用于本地 LLM、图片生成、音频转录和 TTS,支持 GPU 加速。

Keeping this site alive takes effort — your support means everything.
無程式碼也能輕鬆打造專業LINE官方帳號!一鍵導入模板,讓AI助你行銷加分! 無程式碼也能輕鬆打造專業LINE官方帳號!一鍵導入模板,讓AI助你行銷加分!
LocalAI:自托管 OpenAI API 兼容推理服务器

在本地运行 AI 模型具有无可否认的优势:完全的数据隐私、无需 API 费用、离线操作,以及对模型选择和配置的完全控制。但用本地 AI 服务替代云 AI 服务通常需要拼凑不同的工具——一个用于 LLM,另一个用于图片生成,第三个用于语音识别。LocalAI 通过提供一个单一的、OpenAI API 兼容的服务器来解决这种碎片化问题,该服务器涵盖全方位的 AI 能力。

LocalAI 是 OpenAI API 的直接替代品,完全运行在您自己的硬件上。任何与 OpenAI API 配合使用的应用程序——从简单的聊天界面到复杂的智能体框架——都可以通过更改一个配置参数(API 基础 URL)重定向到 LocalAI。

该项目支持 LLM 文本生成(通过 llama.cpp、vLLM 和 Transformers 后端)、图片生成(Stable Diffusion、FLUX)、音频转录(Whisper)、文本转语音(Piper、Coqui)、嵌入(用于 RAG 管道)和函数调用。所有这些都通过数千个现有工具和库已经使用的相同标准 OpenAI API 端点提供服务。


LocalAI 的架构是如何工作的?

LocalAI 提供一个统一的 API 服务器,将请求路由到适当的模型后端。

graph TD
    A[客户端应用程序\nOpenAI SDK / LangChain / Curl] --> B[LocalAI API 服务器\nOpenAI 兼容端点]
    B --> C{按端点路由}
    C -->|/v1/chat/completions| D[LLM 后端\nllama.cpp / vLLM / Transformers]
    C -->|/v1/images/generations| E[图片后端\nStable Diffusion / FLUX]
    C -->|/v1/audio/transcriptions| F[转录后端\nWhisper / Whisper.cpp]
    C -->|/v1/audio/speech| G[TTS 后端\nPiper / Coqui TTS]
    C -->|/v1/embeddings| H[嵌入后端\nSentence Transformers]
    C -->|/v1/models| I[模型管理\n列出可用模型]

模块化后端系统允许每种能力使用最合适的推理引擎,同时向客户端呈现一致的 API 接口。


LocalAI 支持哪些模型后端?

LocalAI 支持多个推理后端,每个针对不同的模型类型和能力进行了优化。

能力后端选项关键特性
LLM 文本生成llama.cpp、vLLM、Transformers、Mamba多后端、广泛的模型支持
图片生成Diffusers、ComfyUIStable Diffusion 1.5/XL、FLUX、SD3
音频转录Whisper、Whisper.cpp多语言、多种模型大小
文本转语音Piper、Coqui、Edge-TTS多种声音、语言
嵌入Sentence Transformers本地 RAG 支持
视觉/LMMLLava、BakLLaVA图片理解

无需更改 API 即可切换后端的能力允许用户针对其特定的硬件和质量要求进行优化。


如何配置和部署 LocalAI?

LocalAI 支持针对不同基础设施场景的多种部署方法。

部署方法命令最适合
Docker(推荐)docker run -p 8080:8080 localai/localai:v2大多数用户,GPU 透传
Docker 带 GPUdocker run --gpus all localai/localai:v2-gpu-nvidiaGPU 加速
KubernetesHelm chart生产集群
二进制发布下载 + 运行裸机、无 Docker
从源码构建make build自定义修改

Docker 部署是最常见的方法,提供预构建的 CPU-only、CUDA 和 Apple Silicon 镜像。


LocalAI 如何与现有工具集成?

LocalAI 与 OpenAI API 的兼容性意味着它可以与几乎所有 OpenAI 兼容的工具配合使用。

工具类别示例集成方法
聊天界面ChatBox、Open WebUI、NextChat将基础 URL 设置为 LocalAI
智能体框架LangChain、AutoGen、CrewAI更新 API 基础配置
开发工具OpenAI Python SDK、curl更改 api_base 参数
RAG 管道LangChain RAG、LlamaIndex使用 LocalAI 作为 LLM + 嵌入
CI/CD 管道使用本地 AI 的自动化测试将测试指向本地端点

典型的集成涉及更改 openai.api_base = "http://localhost:8080/v1",并将任何现有的 OpenAI 兼容代码指向 LocalAI。


常见问题

什么是 LocalAI? LocalAI 是一个自托管的、OpenAI API 兼容的推理服务器,允许您完全在自己的硬件上运行 LLM、图片生成模型、音频转录和文本转语音。它提供了 OpenAI API 的直接替代品,可与任何现有的 OpenAI 兼容客户端库配合使用,使本地 AI 部署变得像更改 URL 一样简单。

LocalAI 提供哪些能力? LocalAI 通过单个 API 支持多种 AI 模态:文本生成(通过 llama.cpp、vLLM、Transformers 的 LLM)、图片生成(Stable Diffusion、FLUX)、音频转录(Whisper)、文本转语音(Piper、Coqui)、嵌入(all-MiniLM、BGE、自定义 RAG 模型)和函数调用。所有能力都通过 OpenAI 兼容的 REST API 暴露。

LocalAI 如何实现 OpenAI API 兼容性? LocalAI 实现了与 OpenAI 相同的 REST API 端点:/v1/completions/v1/chat/completions/v1/embeddings/v1/images/generations/v1/audio/transcriptions/v1/audio/speech。任何与 OpenAI 配合使用的客户端库或工具都可以通过更改基础 URL 重定向到 LocalAI,实现无缝的本地部署而无需更改应用程序代码。

LocalAI 需要什么硬件? 硬件要求取决于所服务的模型。LLM 需要 4-48GB+ RAM,具体取决于模型大小和量化(Q4 7B 在 6GB 上运行)。图片生成需要 8-24GB GPU 显存。转录和 TTS 可以在 CPU 上运行。所有工作负载都支持 GPU 加速(NVIDIA CUDA、AMD ROCm、Apple Metal)。仅 CPU 操作可用于文本生成和较小模型。

LocalAI 与 Ollama 相比如何? LocalAI 和 Ollama 都提供本地 LLM 服务,但它们的范围不同。LocalAI 旨在成为完整的 OpenAI API 替代品,通过单个服务器覆盖文本、图片、音频和嵌入。Ollama 主要关注 LLM 文本生成,具有更简单的模型管理系统。LocalAI 提供更广泛的模态支持;Ollama 提供更简单的模型分发和管理。


延伸阅读

TAG
CATEGORIES