OpenVINO™ GenAI 是一个库,包含了最流行的生成式 AI 模型流水线、优化的执行方法和示例,它们运行在高效的 OpenVINO Runtime 之上。
该库对 PC 和笔记本电脑执行友好,并针对资源消耗进行了优化。它无需外部依赖即可运行生成式模型,因为它已经包含了所有核心功能(例如,通过 openvino-tokenizers 进行分词)。

阅读博客,开始您的 OpenVINO GenAI 初体验:
sh
pip install openvino-genaish
optimum-cli export openvino --model TinyLlama/TinyLlama-1.1B-Chat-v1.0 --weight-format int4 --trust-remote-code TinyLlama_1_1b_v1_ov运行推理:
```python
import openvino_genai as ov_genai
pipe = ov_genai.LLMPipeline("TinyLlama_1_1b_v1_ov", "CPU") # 使用 CPU 或 GPU 作为设备,无需任何其他代码更改
print(pipe.generate("What is OpenVINO?", max_new_tokens=100))
```
OpenVINO™ GenAI 库提供了非常轻量级的 C++ 和 Python API,用于运行以下生成式 AI 应用场景:
- 使用大语言模型 (LLM) 进行文本生成 - 与本地 Llama、Phi、Qwen 等模型聊天
- 使用视觉语言模型 (VLM) 进行图像处理 - 使用 LLaVa、MiniCPM-V 等模型分析图像/视频
- 使用扩散模型进行图像生成 - 使用 Stable Diffusion 和 Flux 模型生成图像
- 使用 Whisper 进行语音识别 - 使用 Whisper 模型将语音转换为文本
- 使用 SpeechT5 进行语音生成 - 使用 SpeechT5 TTS 模型将文本转换为语音
- 使用文本嵌入进行语义搜索 - 为文档和查询计算嵌入向量,以在 RAG 工作流中实现高效检索
- 用于检索增强生成 (RAG) 的文本重排序 - 分析文档和查询的相关性和准确性,用于您的 RAG 工作流
该库高效支持文本和图像生成场景的 LoRA 适配器:
- 每个模型可加载多个适配器
- 为每次生成选择活动适配器
- 通过 alpha 混合将多个适配器与系数混合使用
所有场景都运行在支持 CPU、GPU 和 NPU 推理的 OpenVINO Runtime 之上。平台支持矩阵请参见此处。
OpenVINO™ GenAI 库提供了一种透明的方式来使用最先进的生成优化技术:
- 推测解码:使用两个不同大小的模型,并定期使用大模型来纠正小模型的结果。更详细的概述请参见此处。
- KV 缓存令牌驱逐算法:通过修剪影响较小的令牌来减少 KV 缓存的大小。
- 稀疏注意力:通过仅关注注意力矩阵中最重要的区域来加速预填充阶段。OpenVINO GenAI 目前支持两种模式:Tri-shape 和 XAttention。更多详情请参见此处。
此外,OpenVINO™ GenAI 库实现了连续批处理方法,以便在 LLM 服务中使用 OpenVINO。连续批处理库可用于 LLM 服务框架,并支持以下功能:
- 前缀缓存:在内部缓存先前生成请求的片段和相应的 KV 缓存条目,并在查询重复时使用它们。
连续批处理功能在 OpenVINO Model Server (OVMS) 中用于服务 LLM,更多详情请参见此处。
OpenVINO™ GenAI 仓库采用 Apache License Version 2.0 许可证。
通过向项目贡献代码,您同意其中的许可证和版权条款,并根据这些条款发布您的贡献。