Skip to content

MaaS 算力即服务概览

什么是 MaaS

MaaS(Model as a Service / Machine as a Service)是 H3C 提供的 AI 算力服务化方案,将 GPU 算力和 AI 模型能力以 API 服务的形式对外提供,用户无需购买和维护 GPU 硬件。

传统模式:
  企业购买 GPU 服务器 → 自建 AI 平台 → 训练/部署模型
  问题:前期投入大,利用率低,运维复杂

MaaS 模式:
  企业通过 API 调用 AI 能力
  按调用量付费,无需关心底层硬件
  优势:快速上线,弹性扩展,成本可控

H3C MaaS 产品体系

H3C MaaS 平台
├── 算力服务(Compute as a Service)
│   ├── GPU 实例(按需/包月)
│   ├── 推理加速实例
│   └── 训练集群(弹性)
├── 模型服务(Model as a Service)
│   ├── 基础大模型 API
│   │   ├── 文本生成(LLM)
│   │   ├── 图像生成(Diffusion)
│   │   ├── 语音识别(ASR)
│   │   └── 图像理解(Vision)
│   ├── 行业模型 API
│   │   ├── 政务文档处理
│   │   ├── 金融风控
│   │   └── 医疗影像分析
│   └── 自定义模型托管
└── 开发工具
    ├── SDK(Python/Java/Go)
    ├── Playground(在线体验)
    └── Prompt 工程工具

算力池化架构

物理 GPU 资源池
├── A100 集群(训练优化)
│   ├── 节点1:8× A100 80GB
│   ├── 节点2:8× A100 80GB
│   └── ...(共 100 节点)
├── A10 集群(推理优化)
│   ├── 节点1:4× A10 24GB
│   └── ...(共 200 节点)
└── T4 集群(轻量推理)
    └── ...(共 500 节点)

虚拟化层(GPU 切分):
  MIG(Multi-Instance GPU):将 A100 切分为 7 个独立实例
  vGPU:将 GPU 虚拟化,多用户共享

调度层:
  根据用户请求,动态分配 GPU 资源
  支持抢占式调度(低优先级任务让出资源)

API 调用示例

文本生成 API

python
import requests

# H3C MaaS API 调用
response = requests.post(
    "https://maas.h3c.com/v1/chat/completions",
    headers={
        "Authorization": "Bearer your-api-key",
        "Content-Type": "application/json"
    },
    json={
        "model": "h3c-llm-70b",
        "messages": [
            {"role": "system", "content": "你是一个专业的云计算技术顾问"},
            {"role": "user", "content": "请帮我设计一个高可用的 Web 应用架构"}
        ],
        "temperature": 0.7,
        "max_tokens": 2048,
        "stream": False
    }
)

result = response.json()
print(result["choices"][0]["message"]["content"])

图像理解 API

python
import base64
import requests

# 读取图片并 base64 编码
with open("server-rack.jpg", "rb") as f:
    image_data = base64.b64encode(f.read()).decode()

response = requests.post(
    "https://maas.h3c.com/v1/chat/completions",
    headers={"Authorization": "Bearer your-api-key"},
    json={
        "model": "h3c-vision-7b",
        "messages": [
            {
                "role": "user",
                "content": [
                    {"type": "text", "text": "请识别图中的服务器型号和状态"},
                    {"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{image_data}"}}
                ]
            }
        ]
    }
)

Embedding API(向量化)

python
import requests
import numpy as np

def get_embeddings(texts: list[str]) -> list[list[float]]:
    """将文本转换为向量"""
    response = requests.post(
        "https://maas.h3c.com/v1/embeddings",
        headers={"Authorization": "Bearer your-api-key"},
        json={
            "model": "h3c-embedding-v2",
            "input": texts
        }
    )
    return [item["embedding"] for item in response.json()["data"]]

# 语义搜索示例
query = "如何配置 CloudOS 高可用"
documents = [
    "CloudOS 管理节点支持 3 节点 HA 部署...",
    "Ceph 存储集群需要至少 3 个 OSD 节点...",
    "虚拟机热迁移需要共享存储支持..."
]

query_vec = get_embeddings([query])[0]
doc_vecs = get_embeddings(documents)

# 计算余弦相似度
similarities = [
    np.dot(query_vec, doc_vec) / (np.linalg.norm(query_vec) * np.linalg.norm(doc_vec))
    for doc_vec in doc_vecs
]

best_match_idx = np.argmax(similarities)
print(f"最相关文档: {documents[best_match_idx]}")
print(f"相似度: {similarities[best_match_idx]:.4f}")

RAG 应用开发

基于 H3C MaaS 构建企业知识库问答系统:

python
from langchain.embeddings import OpenAIEmbeddings
from langchain.vectorstores import Chroma
from langchain.chat_models import ChatOpenAI
from langchain.chains import RetrievalQA
from langchain.document_loaders import DirectoryLoader
from langchain.text_splitter import RecursiveCharacterTextSplitter

# 1. 加载企业文档
loader = DirectoryLoader("./h3c-docs/", glob="**/*.md")
documents = loader.load()

# 2. 文档切分
splitter = RecursiveCharacterTextSplitter(
    chunk_size=500,
    chunk_overlap=50
)
chunks = splitter.split_documents(documents)

# 3. 向量化并存储
embeddings = OpenAIEmbeddings(
    openai_api_base="https://maas.h3c.com/v1",
    openai_api_key="your-api-key",
    model="h3c-embedding-v2"
)
vectorstore = Chroma.from_documents(chunks, embeddings, persist_directory="./chroma_db")

# 4. 构建问答链
llm = ChatOpenAI(
    openai_api_base="https://maas.h3c.com/v1",
    openai_api_key="your-api-key",
    model_name="h3c-llm-70b",
    temperature=0
)

qa_chain = RetrievalQA.from_chain_type(
    llm=llm,
    chain_type="stuff",
    retriever=vectorstore.as_retriever(search_kwargs={"k": 5}),
    return_source_documents=True
)

# 5. 问答
result = qa_chain({"query": "CloudOS 支持哪些存储后端?"})
print(f"回答: {result['result']}")
print(f"来源文档: {[doc.metadata['source'] for doc in result['source_documents']]}")

计费模型

MaaS 计费方式:

算力服务:
  GPU 实例(按需):0.8-12 元/小时(按 GPU 型号)
  GPU 实例(包月):折扣 30-50%

模型 API:
  文本生成:0.01 元/1000 tokens(输入)
             0.03 元/1000 tokens(输出)
  Embedding:0.001 元/1000 tokens
  图像生成:0.1 元/张(1024×1024)

免费额度(新用户):
  100 万 tokens 文本生成
  10 万次 Embedding
  有效期 3 个月

褚成志的云与计算笔记