QVAC

QVAC 可使用开放模型,在 Linux、macOS、Windows、Android 和 iOS 上于本地运行 AI 工作负载。

核验日期

核心信息

以下信息由程序从官方接口读取,不经模型改写。

许可证
Apache-2.0
语言
TypeScript
维护方
tetherto
核验日期

它是什么

QVAC 可使用开放模型,在 Linux、macOS、Windows、Android 和 iOS 上于本地运行 AI 工作负载。QVAC 提供 SDK,用于以 JavaScript/TypeScript 和 Python 构建本地优先的 AI 应用和系统。QVAC 还提供 HTTP 服务器,用于把 QVAC 作为本地模型提供方。该 HTTP 服务器的 OpenAI 兼容 API 可连接 OpenCode 和 OpenClaw 等 AI 工具。

主要能力

  1. 文本生成:通过 Fabric LLM 提供用于文本生成和聊天的 LLM 推理。

  2. 文本嵌入:提供用于语义搜索、聚类和检索的向量嵌入生成。

  3. 微调:通过 LoRA 使 LLM 适应特定领域的任务。

  4. 图像生成:通过 Diffusion 后端提供文生图和图生图。

  5. 视频生成:通过 Diffusion 后端提供文生视频和图生视频。

  6. 翻译:通过 Fabric LLM 和 Bergamot 提供神经机器翻译。

怎么上手

  1. 可以使用 JS/TS SDK 运行第一个示例。

  2. 也可以使用 Python SDK 运行第一个示例。

  3. Python SDK 的安装包是自包含的:它捆绑了 QVAC worker 和 Bare 运行时,不需要 Node.js。

  4. 使用 HTTP 服务器时,先用 CLI 启动服务器,再把 QVAC 作为 OpenCode 和 OpenClaw 等 OpenAI 兼容工具的模型提供方。

  5. 各工具的设置方式不同,项目为部分工具(如 OpenCode 和 OpenClaw)提供专用插件,由插件替你运行服务器。

  6. 在 HTTP 服务器的快速入门中,模型在首次启动时下载,并预加载到内存中。

摘自 README · bash
npm i @qvac/sdk
摘自 README · js
import { loadModel, LLAMA_3_2_1B_INST_Q4_0, completion, unloadModel } from '@qvac/sdk';
try {
  const modelId = await loadModel({
    modelSrc: LLAMA_3_2_1B_INST_Q4_0,
    onProgress: (p) => {
      const mb = (n) => (n / 1e6).toFixed(1);
      const line = `▸ Downloading ${p.percentage.toFixed(0)}% (${mb(p.downloaded)}/${mb(p.total)} MB)`;
      process.stderr.write(process.stderr.isTTY ? `\r${line}` : `${line}\n`);
      if (p.percentage >= 100) process.stderr.write('\n');
    },
  });
  const history = [{ role: 'user', content: 'Explain quantum computing in one sentence' }];
  const result = completion({ modelId, history, stream: true });
  for await (const token of result.tokenStream) {
    process.stdout.write(token);
  }
  await unloadModel({ modelId });
} catch (error) {
  console.error('✖', error);
  process.exit(1);
}
摘自 README · bash
QVAC_CONFIG_PATH=./qvac.config.json node quickstart.js
摘自 README · bash
# Replace <version> with the release you want, e.g. sdk-v0.17.0:
pip install tetherto-qvac-sdk \
  -f https://github.com/tetherto/qvac/releases/expanded_assets/sdk-v<version>
摘自 README · python
import asyncio
import sys

from tetherto.qvac_sdk import Client, completion, load_model, unload_model
from tetherto.qvac_sdk.models import LLAMA_3_2_1B_INST_Q4_0

def print_progress(p):
    line = f"▸ Downloading {p.percentage:.0f}% ({p.downloaded / 1e6:.1f}/{p.total / 1e6:.1f} MB)"
    print(line, end="\r" if sys.stderr.isatty() else "\n", file=sys.stderr)
    if p.percentage >= 100:
        print(file=sys.stderr)

async def main():
    async with Client() as client:
        t = client.transport
        try:
            model_id = await load_model(
                t, model_src=LLAMA_3_2_1B_INST_Q4_0, on_progress=print_progress
            )
            run = completion(
                t,
                model_id=model_id,
                history=[
                    {"role": "user", "content": "Explain quantum computing in one sentence"},
                ],
            )
            async for event in run.events:
                if event.type == "contentDelta":
                    sys.stdout.write(event.text)
                    sys.stdout.flush()
            print()
            await unload_model(t, model_id)
        except Exception as error:
            print(f"✖ {error}", file=sys.stderr)
            return 1
    return 0

if __name__ == "__main__":
    sys.exit(asyncio.run(main()))
摘自 README · bash
python quickstart.py

适合谁

在 JavaScript 和 Python 的快速入门示例中,QVAC 会流式输出响应 token,并打印到终端。在 HTTP 服务器快速入门的 curl 示例中,响应以单个 JSON 负载返回,内含模型的回答。多模态:提供对文本、图像和其他媒体在同一上下文中的 LLM 推理。

VLA:通过 GGML 后端提供用于机器人控制的视觉-语言-动作。OCR:通过 ONNX Runtime 或 GGML 后端从图像中提取文本。BCI:通过 Whisper 后端提供脑机接口转录。

FFmpeg 音频解码器提供流式 PCM 输出,以及默认 64 MiB 的解码输出限制。图像分类与嵌入:通过 GGML/Fabric 后端,用 MobileNet 对图像分类,或生成用于图像检索的 MegaLoc 描述符。QVAC 的模型获取功能通过分布式模型注册表直接从对等节点下载 AI 模型,从而无需集中式的模型托管和分发。

该模型注册表还提供不含权重的模型描述、模型设置和张量列表,因此可在下载前评估模型能否装入内存。盲中继在设备无法跨 NAT 和防火墙直接连接时,通过中继节点路由流量,无需集中式基础设施即可保持网络连通。项目将本地优先描述为:离线运行 AI,推理针对通用硬件优化,范围从消费级应用、嵌入式系统到本地部署。

项目将跨平台列为:Linux、macOS、Windows、Android 和 iOS 共用一套代码库,使用 JavaScript/TypeScript 或 Python。示例资源提供用 QVAC SDK 构建的示例应用和概念验证。博客资源提供教程、深度解析、工程笔记和公告。

来源

本页内容整理自以下官方来源,点击可核对原文。

核验日期 ·

本页由 AI 依据上述官方来源整理,并经自动核对,未经本站实测。 发现错误?告诉我们。