Skip to main content
GenAI Studio 是一个容器化解决方案,通过简化生成式 AI 应用在 Qualcomm Linux 系统上的创建和部署,实现快速原型设计和定制。GenAI Studio 为以下核心服务提供 与 OpenAI 兼容的 API: 文本生成、文本转语音、图像生成、图像转文本(VLM)以及语音转文本。 所有服务均可通过 Web 界面和 OpenAI 兼容的 API 端点访问。
  • GenAI Studio 不包含模型文件或容器镜像。
  • 您必须自行生成模型并构建容器镜像。
  • 确保您的主机满足要求。
  • 使用主机生成模型。
  • 使用目标设备构建 docker 容器。

高层架构

下图展示了 GenAI Studio 的高层架构。每个功能块 都作为独立的容器运行,提供隔离性、可扩展性和可延展性。这样就可以在 不影响现有服务的情况下,以附加容器的形式添加新的模态。
每个端点都有特定的端口。请在端点端口号中查看端口号。
GenAI Studio 的高层架构,展示容器化用例和后端交互 下表列出了每个端点及其关联的端口号。 端点端口号

用户交互

用户通过托管在主机上的网页,或通过来自第三方应用的 OpenAI 兼容端点 API 调用来访问 GenAI Studio。

请求路由到目标设备

网页或 API 调用与运行在目标设备(例如 Qualcomm Dragonwing™ IQ9)上的 orchestrator 服务通信,并将 UI 上的每个用户操作转换为对后端服务的 相应 REST API 调用。

编排层

orchestrator 容器充当中央枢纽。它接收请求、管理会话历史、 处理多轮对话的连续性(KV-cache),并聚合来自各个模态 容器的响应,为用户呈现统一的体验。 容器化架构和可扩展性: 每个功能块(orchestrator、文本到文本、文本转语音、文本到图像、图像转文本、语音转文本)都作为独立的容器运行。 这提供了以下优势:
  • 服务之间相互隔离。
  • 可扩展性,因为每个服务可根据用例独立扩展。
  • 可延展性,因为您可以以附加容器的形式添加新的模态或模型。
有关更详细的信息,请参阅各个相应用例的文档。

文本到文本

此应用使用 Genie API 运行文本到文本大语言模型(LLM)。 它提供一个持久(常驻)的 LLM 服务器,支持以下功能:
  • 根据用户提示生成 LLM 回复(文本到文本)。
  • 复用预加载的模型,避免每次请求都重新加载。
  • 用于模型/会话重置和模型重新加载的控制端点。
  • 直接从 UI 更新系统提示。
  • 会话历史,允许 UI 获取先前的消息。
GenAI studio 各组件在文本生成用例中的调用流程及其相互交互方式。 有关更多信息,请参阅 text-to-text README 和 code flow 文件。

文本到图像

下图展示了文本到图像容器中的示例调用流程序列。 GenAI studio 各组件在应用中的调用流程及其相互交互方式。 有关更多信息,请参阅 text-to-image README 和 code flow 文件。

图像转文本

图像转文本容器使用视觉语言模型(VLM),以自然语言描述图像,支持视觉理解和内容审核用例。 有关更多信息,请参阅 image-to-text README 和 code flow 文件。

文本转语音

下图展示了文本转语音容器中的示例调用流程序列。 GenAI studio 各组件在应用中的调用流程及其相互交互方式。 有关更多信息,请参阅 text-to-speech README。

语音转文本

下图展示了语音转文本容器中的示例调用流程序列。 GenAI studio 各组件在应用中的调用流程及其相互交互方式。 有关更多信息,请参阅 speech-to-text README 和 code flow 文件。

设置 GenAI Studio

GenAI Studio 在 IQ9 上受支持,同时支持 Qualcomm Linux 发行版和 Qualcomm IoT 平台上的 Ubuntu。
GenAI Studio 不附带语言模型。您必须使用 AI Hub 生成模型。
  1. 在主机上,从 CodeLinaro 下载适用于您的 EVK 的预编译 Qualcomm Linux 构建镜像。
  2. 从主机将镜像刷写到目标设备。
    在 QLI 上,依赖 Qualcomm 的 DSP 库和 Docker 已预装。
  3. 将仓库克隆到目标设备并进入本地目录:
  4. 在主机上准备 SDK(可选)。
    仅当您要启用完整技术栈或私有 STT 或 TTS 服务时才需要执行此步骤。
  5. 在目标设备上的示例应用仓库根目录中,完成预检:
    在运行预检之前,请确保设备已正确完成配置。 有关初始设备配置,请参阅 device setup。
  6. 为目标设备准备模型。 有关更多信息,请参阅各服务的模型生成和设置文档。
    在 /opt/genai-studio-models 下准备模型文件夹。
  7. 构建基础镜像(一次性设置)。
  8. 构建服务镜像。 请参阅各服务的 README 文件(例如 core-services/README.md), 以确保所有必需的文件均已就位。
  9. 使用 docker-compose 启动服务。 有关在运行 docker-compose 之前建议设置的环境变量, 请参阅 README。
  10. 运行服务健康检查和功能检查,验证所有服务都在运行:
  11. 运行统一测试套件:
    有关功能端点检查和测试,请参阅 functional endpoint test 和各个服务的 README 文件。
如果有任何服务无法收集日志,请参阅该服务 docs 文件夹中的故障排除和常见问题文档。 要检查服务日志,请运行以下命令: