作用
Generation Server 是 UltraRAG 中负责 调用和部署大语言模型(LLM) 的核心模块。 它接收来自 Prompt Server 构建的输入提示(Prompt),并生成相应的输出结果。 该模块支持 文本生成 与 图像-文本多模态生成 两种模式,可灵活适配不同任务场景(如问答、推理、总结、视觉问答等)。 Generation Server 原生兼容以下主流后端:vLLM、HuggingFace 以及 OpenAI。使用示例
文本生成
以下示例展示了如何使用 Generation Server 执行一个基础的文本生成任务。该流程通过 Prompt Server 构建输入提示后,调用 LLM 生成回答,并最终完成结果提取与评估。examples/vanilla_llm.yaml
examples/parameters/vanilla_llm_parameter.yaml
多模态推理
在多模态场景下,Generation Server 不仅可以处理文本输入,还能结合图像等视觉信息完成更复杂的推理任务。下面通过一个示例展示如何实现。 我们先准备一个示例数据集(包含图像路径):data/test.jsonl
get_data 函数中新增字段 multimodal_path,
用于指定图像输入路径。
如何新增字段请参考新增加载数据集字段。
examples/vanilla_vlm.yaml
examples/parameters/vanilla_vlm_parameter.yaml
部署模型
UltraRAG 完全兼容 OpenAI API 接口规范,因此任何符合该接口标准的模型都可以直接接入,无需额外适配或修改代码。 以下示例展示如何使用 vLLM 部署本地模型。 step1: 后台部署模型 以 Qwen3-32B 为例,建议使用多卡并行以保证推理速度。 Screen (宿主机直接运行)- 新建会话会话:
- 启动命令:
script/vllm_serve.sh
- 退出会话:按下
Ctrl + A + D可退出并保持服务在后台运行。 如需重新进入该会话,可执行:
examples/parameters/vanilla_llm_parameter.yaml