跳转到内容
Get Started

开始使用

快速开始

三步走:接入你的数据,看它被标准化,再让 AI 在其上工作。

Mirobody 三步走:① 接入数据 → ② 数据以标准化形态返回 → ③ 让 AI 使用它。 一切兼容 OpenAI —— 你需要一个 mb_live_* 密钥和约 10 分钟。

所有 /v1 接口共用一个 base URL —— 按你账户使用的集群选择:

https://api.mirobody.ai/v1 # 全球
https://api.mirobody.cn/v1 # 中国

日本与欧盟集群正在筹备中 —— 见区域。模型提供方与定价可能因区域不同,请从实际调用的集群读取 GET /v1/models

接入你的数据

健康数据有四种形态 —— 每种形态各有一扇门进来:

数据形态典型来源录入方式端点
结构化读数设备/穿戴(由你自己接入,日聚合后写入)、手动记录结构化记录POST /v1/data —— 高频样本先自聚合;episode 型(睡眠、运动)用 time + end_time 携带时段。见设备数据 cookbook
文件/照片化验单、体检报告 PDF、手机拍照文件上传POST /v1/files —— 保存原件、抽取文本,并自动抽出标准化读数。POST /v1/standardize 可同步执行同一抽取,例如做 dry-run 预览。
带读数的叙事“头疼了一天,体温 38.2 °C”、对话口述叙事文本POST /v1/standardize —— 抽取其中的可量化读数,周边叙事被丢弃。
纯主观日记“整个下午头晕头疼”、心情记录单轮智能体调用POST /v1/responsesstore: true —— 自动从中抽取读数与持久记忆。见写日记配方

Mirobody 负责存储源数据、标准化结构化读数,并将二者提供给 AI 使用;数据如何采集、是否预处理,由你自行决定。

POST /v1/data 写入结构化读数(retention 必填),或用 POST /v1/files 上传化验报告 —— PDF、照片、表格均可:

Terminal window
# 结构化记录
curl https://api.mirobody.ai/v1/data \
-H "Authorization: Bearer $MIROBODY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"user": "alice",
"retention": "permanent",
"records": [
{"indicator": "fasting_glucose", "value": 97, "unit": "mg/dL", "time": "2026-06-16T07:30:00Z"},
{"indicator": "FBG", "value": 92, "unit": "mg/dL", "time": "2026-06-17T07:25:00Z"}
]
}'
# 或者一份文档(立即保存原件,文本稍后即可读取)
curl https://api.mirobody.ai/v1/files \
-H "Authorization: Bearer $MIROBODY_API_KEY" \
-F "user=alice" -F "file=@lab_report.pdf"

user租户隔离键 —— 为每个终端用户传入其稳定 id,数据就绝不会串。

数据以标准化形态返回

注意上面的两种写法 —— fasting_glucoseFBG。把数据读回来,两行都带有同一个 LOINC 编码、规范名称、UCUM 解析后的值以及 FHIR 镜像 id:

Terminal window
curl "https://api.mirobody.ai/v1/data?user=alice&limit=10" \
-H "Authorization: Bearer $MIROBODY_API_KEY"
{
"object": "list",
"data": [
{
"indicator": "FBG",
"value": "92 mg/dL",
"parsed_value": "92",
"parsed_unit": "mg/dL",
"loinc_code": "1558-6",
"canonical_name": "Fasting glucose [Mass/volume] in Serum or Plasma",
"fhir_resource_id": "8f3c9a1e-...",
"time": "2026-06-17T07:25:00+00",
"source": "api",
"comment": ""
}
],
"has_more": false,
"subject": "alice"
}

这就是标准化管线 —— 确定性的名称→LOINC(不让 LLM 猜码)+ UCUM + FHIR,作用于每一次结构化记录写入。要从文档抽取并标准化读数,用 POST /v1/standardize,直接传文件或已上传的 file_key 均可。

让 AI 在其上工作

一条有依据的回答只要三行 —— agent 读的是标准化序列,所以问 “glucose” 能找到写成 “FBG” 的行:

Answers API(3 行)
from openai import OpenAI
client = OpenAI(api_key="mb_live_...", base_url="https://api.mirobody.ai/v1")
print(client.chat.completions.create(model="mirobody-flash", user="alice",
messages=[{"role": "user", "content": "How is my fasting glucose trending?"}]
).choices[0].message.content)

而一个真正的 agent —— 带你自己的工具 —— 只要十行。openai-agents SDK 只需换一个 base URL 就能对接 Agent API

openai-agents SDK(10 行)
from agents import Agent, ModelSettings, Runner, function_tool, set_default_openai_client, set_tracing_disabled
from openai import AsyncOpenAI
set_default_openai_client(AsyncOpenAI(
base_url="https://api.mirobody.ai/v1", api_key="mb_live_..."))
set_tracing_disabled(True)
@function_tool
def book_appointment(date: str) -> str:
"""Book a clinic appointment for the end user (ISO date)."""
return f"Booked: {date} 09:30, Dr. Chen"
agent = Agent(name="Health assistant", model="mirobody-flash", tools=[book_appointment],
model_settings=ModelSettings(extra_body={"user": "alice"}))
print(Runner.run_sync(agent, "Check my recent glucose; book a follow-up if it's trending up.").final_output)

Mirobody 的内置工具读取 alice 的真实数据;当模型决定预约时,交接给你的函数。底层协议见 Function calling

控制台演练场采用相同流程:① 接入数据 → ② 自动标准化 → ③ Agent 或 Answers。无需写代码即可上传文件、查看抽取文本或标准化记录,并试用两个 API。