diff --git a/content/_meta.js b/content/_meta.js
index 4f19837..8333746 100644
--- a/content/_meta.js
+++ b/content/_meta.js
@@ -1,7 +1,9 @@
export default {
index: "文档中心",
"getting-started": "快速开始",
- models: "AI 模型接入",
- guides: "使用指南",
+ integrations: "工具接入",
+ guides: "开发指南",
+ concepts: "核心概念",
faq: "常见问题",
+ legal: "法律条款",
};
diff --git a/content/concepts/_meta.js b/content/concepts/_meta.js
new file mode 100644
index 0000000..badee25
--- /dev/null
+++ b/content/concepts/_meta.js
@@ -0,0 +1,3 @@
+export default {
+ overview: "核心概念",
+};
diff --git a/content/concepts/overview.mdx b/content/concepts/overview.mdx
new file mode 100644
index 0000000..93306ce
--- /dev/null
+++ b/content/concepts/overview.mdx
@@ -0,0 +1,74 @@
+---
+title: 核心概念
+sidebarTitle: 核心概念
+description: Token、上下文窗口、模型 ID 与计费
+---
+
+# 核心概念
+
+理解以下概念,有助于控制成本、避免超长报错,并正确对接 [HTTP API](/docs/guides/http_api) 与 [OpenAI SDK](/docs/guides/openai_compatible)。
+
+## Token 与 usage
+
+**Token** 是模型处理文本的基本单位,可粗略理解为「字 / 词」的切分片段。不同模型分词方式不同,**中文、英文、数字、符号** 的 token 数未必与字符数 1:1 对应。
+
+每次成功的 Chat Completions 响应(非流式)通常包含 `usage` 字段,例如:
+
+```json
+"usage": {
+ "prompt_tokens": 100,
+ "completion_tokens": 200,
+ "total_tokens": 300
+}
+```
+
+- **prompt_tokens**:输入侧(含 `messages` 与部分系统开销)
+- **completion_tokens**:模型生成内容
+- 控制台 **使用记录** 与 **费用账单** 按平台计价规则据此扣费
+
+流式调用结束后,也可能在最后一个 chunk 或汇总接口中提供 usage,以实际返回为准。
+
+## 上下文窗口
+
+**上下文窗口** 指单次请求中,模型能处理的 **最大 token 总量**(通常包括用户输入、历史多轮、模型输出;部分推理模型还包含中间推理 token)。
+
+若对话过长:
+
+1. **超出部分可能被截断**,导致模型「忘记」 earlier 内容
+2. 可能直接返回参数或长度类错误
+
+**建议:**
+
+- 在 [模型广场](https://console.haiyushuke.com/models) 查看各模型上下文上限
+- 长文档场景优先选用 **长上下文** 模型,或做分段摘要 + RAG
+- 多模态输入(图片、音频等)常有 **更严格的输入限制**,以模型说明为准
+
+## 模型 ID
+
+**模型 ID** 是 API 中 `model` 字段的字符串,是调用时的唯一标识。
+
+- 必须从 **控制台模型广场** 复制,勿臆造或沿用其他平台的名称
+- API Key 可配置 **可用模型** 子集;请求未授权的 ID 会失败
+- 厂商升级版本时 ID 可能变化(如 `glm-5` → `glm-5.1`),需关注控制台公告
+
+详见 [工具接入概览](/docs/integrations/overview) 与控制台 **模型广场**。
+
+## API Key 与控制台登录
+
+- **API Key**:用于 `Authorization: Bearer`,调用 **网关 API**
+- **控制台 JWT / Session**:仅用于登录 **console.haiyushuke.com** 管理资源
+
+二者不可混用。Key 泄露风险高,须 [妥善保管](/docs/guides/api_keys)。
+
+## 余额与扣费
+
+调用前账户需有足够 **余额**(预付费模式)。扣费一般发生在请求成功并完成计量之后;余额不足时返回 **402** / `INSUFFICIENT_BALANCE`。见 [计费与财务](/docs/guides/billing)。
+
+## 统一网关
+
+海宇数科 **统一网关** 对上游多厂商做路由与计量:您面对的是一个 Base URL 与一套 Key 体系,底层模型由平台调度至对应供应商。因此文档与控制台以 **海宇模型 ID** 为准,而非各厂商原站产品名。
+
+## 延伸阅读
+
+- [快速开始](/docs/getting-started)
+- [常见问题](/docs/faq)
diff --git a/content/faq.mdx b/content/faq.mdx
index bd77501..aa45a9f 100644
--- a/content/faq.mdx
+++ b/content/faq.mdx
@@ -1,32 +1,128 @@
---
title: 常见问题
-description: 接入与使用中的常见问题解答
+description: 接入、账号、计费与错误排查
---
# 常见问题
-## 返回 401 Unauthorized
+## 账号与实名认证
-- 检查 `Authorization: Bearer` 后是否有多余空格
-- 确认 Key 未被禁用、未过期
-- 确认请求发往正确的 Base URL
+### 为什么无法创建 API Key 或充值?
-## 返回 429 Too Many Requests
+创建 API Key、使用体验中心、充值与查看完整财务信息前,需先在 **账户中心 → 实名认证** 完成认证。若页面提示「请先完成实名认证」,按指引提交材料即可。
-表示触发 **限流**。请降低并发、实现指数退避重试,或联系商务提升配额。
+### 个人认证和企业认证有什么区别?
-## 模型不存在 / model_not_found
+- **个人认证**:满足个人开发者试调用、在线充值与 API 接入。
+- **企业认证**:满足企业对公结算、发票与合规要求;**对公转账充值** 仅企业认证用户可用。
-模型 ID 拼写错误或账号未开通该模型。请在 **模型广场** 复制准确 ID。
+### 实名核验次数有限制吗?
-## 如何对账?
+个人/企业/法人相关核验接口有 **每日次数上限**(如单日 10 次)。若提示「今日核验次数已达上限」,请次日再试或联系客服。
-控制台 **账单** 模块可按日查看调用量与费用;企业客户可申请导出明细与发票。
+### 如何修改登录密码?
-## 是否支持私有化部署?
+**账户中心 → 账号设置** 中通过手机号验证修改密码;忘记密码可在登录页使用 **忘记密码** 流程。
-企业方案支持专有云与私有化,请通过官网 [联系我们](/#contact) 获取方案与 POC 安排。
+---
-## 文档有错误怎么办?
+## 接入与 API
-文档随产品迭代更新;若发现过时信息,请通过控制台反馈或邮件联系技术支持。
+### Base URL 和路径是什么?
+
+- Base URL:`https://api.haiyushuke.com/v1`
+- 对话补全:`POST /chat/completions`
+- 鉴权:`Authorization: Bearer `
+
+与 OpenAI 官方 SDK 兼容时,仅需修改 `apiKey` 与 `baseURL`。详见 [OpenAI SDK 兼容](/docs/guides/openai_compatible) 与 [核心概念 · Token](/docs/concepts/overview#token-与-usage)。
+
+### 返回 401 Unauthorized
+
+- 确认 Header 为 `Bearer `,Bearer 与 Key 之间有一个空格
+- Key 是否已 **禁用** 或 **过期**
+- 是否误用了控制台登录 JWT 代替 API Key
+- 请求是否发往正确的网关域名
+
+### 返回 403 Forbidden
+
+常见原因:
+
+- 未完成实名认证却访问受限能力(控制台内功能)
+- API Key 绑定的 **模型列表** 不包含当前请求的 `model`
+- **IP 白名单** 未包含调用方出口 IP
+
+### 返回 402 / 余额不足还能调用吗?
+
+不能。业务码一般为 `INSUFFICIENT_BALANCE`,表示账户余额不足以完成扣费。请在 **财务 → 账户充值** 充值,或在 **通知管理** 中设置余额告警。
+
+### 返回 429 Too Many Requests
+
+表示触发 **限流**(网关或上游)。请降低并发、对可重试错误做指数退避,或联系商务提升配额。
+
+### 模型不存在 / model_not_found
+
+- 检查 `model` 字符串是否与 **模型广场** 中的 ID 完全一致(区分大小写与后缀)
+- 确认该 Key 的 **可用模型** 范围是否包含此模型
+- 新模型上线后若不可用,刷新模型列表或联系支持确认开通状态
+
+### 流式调用没有输出或中途断开
+
+- 请求体需设置 `"stream": true`
+- 客户端需持续读取 SSE,并处理网络超时与代理缓冲
+- 详见 [流式调用](/docs/guides/streaming)
+
+### 能否在前端网页直接调用 API?
+
+**不建议。** API Key 会暴露在浏览器中。请由后端服务器持有 Key 并转发请求。
+
+---
+
+## 计费与账单
+
+### 如何计费?
+
+通常按模型的 **输入 token** 与 **输出 token** 单价从余额扣减;部分多模态模型按分辨率或时长分档,以模型广场说明为准。
+
+### 如何对账?
+
+- **使用记录**:按次查看模型、用量与费用
+- **费用账单**:按月汇总
+- 企业客户如需定制导出,请 [联系我们](/#contact)
+
+### 如何开发票?
+
+**财务 → 发票开具**(需实名认证)。按页面选择已结清账单并填写开票信息;具体规则以控制台为准。
+
+### 充值未到账怎么办?
+
+在 **充值明细** 查看订单状态;在线支付可能存在几分钟延迟。长时间未到账请保留订单号并联系客服。
+
+---
+
+## 控制台与产品
+
+### 控制台「开发文档」在哪里?
+
+侧栏 **开发文档**、模型卡片 **接入文档**、底部 **常见问题** 均跳转至官网 **文档中心**(本站 `/docs`)。
+
+### 智能报告和 Agent 技能如何接入?
+
+官网 [智能报告](/reports) 与 [Agent 技能](/agents) 介绍场景与示例;Skill 安装能力持续开放,可关注控制台与官网公告。
+
+### 是否支持私有化部署?
+
+企业方案支持专有云与私有化部署,请通过 [联系我们](/#contact) 获取方案与 POC 安排。
+
+---
+
+## 其他
+
+### 文档有错误或过时怎么办?
+
+文档随产品迭代更新。若与控制台展示不一致,以控制台为准,并欢迎通过客服或 main@haiyushuke.cn 反馈。
+
+### 如何获取技术支持?
+
+- 控制台侧栏 **在线客服**
+- 官网 [联系我们](/#contact)
+- 邮件 main@haiyushuke.cn
diff --git a/content/getting-started.mdx b/content/getting-started.mdx
index 8ae6dea..585a6dd 100644
--- a/content/getting-started.mdx
+++ b/content/getting-started.mdx
@@ -1,44 +1,88 @@
---
title: 快速开始
-description: 五分钟完成 API Key 创建与首次调用
+description: 注册、环境配置、API Key 与首次调用
---
# 快速开始
-按以下步骤即可在海宇数科平台完成首次模型调用。
+本指南对应开放平台常见的「分钟级接入」流程(参见 [智谱 · 快速开始](https://docs.bigmodel.cn/cn/guide/start/introduction) 类文档结构),步骤以 **海宇数科控制台与网关** 为准。
## 1. 注册并登录控制台
-访问 [控制台](https://console.haiyushuke.com),使用企业邮箱或手机号完成注册。首次登录建议完成实名/企业认证(若你方环境要求)。
+访问 [控制台](https://console.haiyushuke.com),使用手机号注册并登录。
-## 2. 创建 API Key
+## 2. 完成实名认证
-1. 进入 **设置 → API Key**
-2. 点击 **创建密钥**,填写名称(如 `prod-backend`)
-3. 复制密钥并妥善保存(仅展示一次)
+创建 **API Key**、使用 **体验中心**、**账户充值** 与查看完整 **财务** 信息前,需完成实名认证:
-## 3. 选择模型与端点
+1. 侧栏 **账户中心 → 实名认证**
+2. 按页面指引提交个人或企业认证材料
+3. 认证通过后,上述功能即可正常使用
-在 **模型广场** 或 **接入文档** 中确认:
+企业用户若需 **对公转账充值**,须完成 **企业认证**。
-- 模型 ID(如 `gpt-4o-mini`、`deepseek-chat`)
-- 兼容协议(一般为 OpenAI Chat Completions)
+## 3. 配置开发环境(可选)
-## 4. 发起测试请求
+在集成代码的机器上设置环境变量,避免硬编码 Key:
+
+```bash
+export HAIYUSHUKE_API_KEY="你的密钥"
+export HAIYUSHUKE_BASE_URL="https://api.haiyushuke.com/v1"
+```
+
+SDK 安装:
+
+```bash
+# Node.js
+npm install openai
+
+# Python
+pip install openai
+```
+
+详见 [OpenAI SDK 兼容](/docs/guides/openai_compatible)。
+
+## 4. 为账户充值(可选)
+
+预付费环境下,请进入 **财务 → 账户充值** 完成充值后再调用 API。
+
+## 5. 创建 API Key
+
+1. 侧栏 **API Key** → **创建**
+2. 填写名称(如 `dev-backend`)
+3. 可选:可用模型、额度、过期时间、IP 白名单
+4. **立即复制并保存** 完整密钥(仅展示一次)
+
+## 6. 选择模型 ID
+
+在控制台 **模型广场** 确认 `model` ID;也可在 **体验中心** 试调用后再写入代码。IDE 配置见 [工具接入概览](/docs/integrations/overview)。
+
+## 7. 发起测试请求
+
+**HTTP(curl):**
```bash
curl https://api.haiyushuke.com/v1/chat/completions \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
- "model": "gpt-4o-mini",
+ "model": "deepseek-chat",
"messages": [{"role": "user", "content": "你好,请用一句话介绍海宇数科"}]
}'
```
-成功时响应 JSON 中包含 `choices[0].message.content`。
+成功时 JSON 含 `choices[0].message.content` 与 `usage`。接口细节见 [HTTP API](/docs/guides/http_api)。
+
+## 8. 核对用量
+
+在 **财务 → 使用记录** 查看 token 与费用;理解 **Token** 含义见 [核心概念](/docs/concepts/overview)。
## 下一步
-- 按厂商阅读 [OpenAI 接入](/docs/models/openai)、[Claude 接入](/docs/models/claude)
-- 了解 [流式调用](/docs/guides/streaming) 与 [API Key 管理](/docs/guides/api_keys)
+| 目标 | 文档 |
+| --- | --- |
+| 用 SDK 接入 | [OpenAI SDK 兼容](/docs/guides/openai_compatible) |
+| 流式 UI | [流式调用](/docs/guides/streaming) |
+| 配置 IDE | [Cursor](/docs/integrations/cursor)、[Claude Code](/docs/integrations/claude_code) 等 |
+| 运维与计费 | [API Key](/docs/guides/api_keys)、[计费与财务](/docs/guides/billing) |
+| 排错 | [常见问题](/docs/faq) |
diff --git a/content/guides/_meta.js b/content/guides/_meta.js
index 3016f80..3f6966c 100644
--- a/content/guides/_meta.js
+++ b/content/guides/_meta.js
@@ -1,5 +1,8 @@
export default {
- console: "???",
+ http_api: "HTTP API",
+ openai_compatible: "OpenAI 兼容 SDK",
+ console: "控制台",
api_keys: "API Key",
- streaming: "????",
+ streaming: "流式调用",
+ billing: "计费与财务",
};
diff --git a/content/guides/api_keys.mdx b/content/guides/api_keys.mdx
index adc833e..dd0ed0c 100644
--- a/content/guides/api_keys.mdx
+++ b/content/guides/api_keys.mdx
@@ -1,26 +1,55 @@
---
title: API Key 管理
sidebarTitle: API Key
-description: 创建、轮换与权限最佳实践
+description: 创建、轮换、额度与白名单最佳实践
---
# API Key 管理
+在控制台侧栏 **API Key** 中管理所有调用凭证。创建与管理前需完成 **实名认证**。
+
## 创建
-控制台 → **设置 → API Key** → **创建**。建议命名包含环境与用途,例如 `prod-report-agent`。
+1. 点击 **创建**
+2. 填写名称(建议包含环境与用途,如 `prod-report-agent`)
+3. 可选配置:
+ - **可用模型**:限制该 Key 只能调用指定模型
+ - **额度上限 / 剩余额度**:控制总消耗
+ - **过期时间**:到期后 Key 自动失效
+ - **IP 白名单**:仅允许 listed IP 调用(留空表示不限制,生产环境建议配置)
+
+创建成功后请 **立即复制并保存** 完整密钥;之后列表仅显示脱敏前缀。
+
+## 鉴权方式
+
+HTTP 请求头:
+
+```http
+Authorization: Bearer <你的 API Key>
+Content-Type: application/json
+```
+
+OpenAI SDK 中将该 Key 设为 `apiKey`,`baseURL` 设为 `https://api.haiyushuke.com/v1`(见 [OpenAI 兼容 SDK](/docs/guides/openai_compatible))。
## 存储
-- 使用环境变量:`HAIYUSHUKE_API_KEY`
-- 密钥管理系统(KMS / Vault)中保存,勿提交至 Git
+- 环境变量:如 `HAIYUSHUKE_API_KEY`
+- 密钥管理系统(KMS / Vault),勿提交至 Git 或镜像层
## 轮换流程
-1. 创建新 Key
-2. 在应用配置中灰度切换
-3. 确认流量稳定后禁用旧 Key
+1. 创建新 Key(可先绑定相同模型与 IP 策略)
+2. 在应用配置中灰度切换
+3. 观察 **使用记录** 确认旧 Key 无流量后 **禁用** 旧 Key
## 泄露应急
-若 Key 已泄露:立即 **禁用** 该 Key → 新建 → 排查仓库与 CI 日志是否残留。
+1. 控制台中 **禁用** 泄露的 Key
+2. 新建 Key 并更新部署
+3. 检查 Git 历史、CI 日志、前端 bundle 是否残留
+4. 若曾未设 IP 白名单,建议新 Key 启用白名单
+
+## 相关文档
+
+- [快速开始](/docs/getting-started)
+- [常见问题:401 与 Key](/docs/faq#返回-401-unauthorized)
diff --git a/content/guides/billing.mdx b/content/guides/billing.mdx
new file mode 100644
index 0000000..2b1695e
--- /dev/null
+++ b/content/guides/billing.mdx
@@ -0,0 +1,43 @@
+---
+title: 计费与财务
+sidebarTitle: 计费与财务
+description: 充值、账单、使用记录与发票说明
+---
+
+# 计费与财务
+
+模型调用按 **输入 token / 输出 token**(或模型广场标注的计价单位)从账户 **余额** 扣费。请在控制台 **财务** 菜单中查看与充值。
+
+## 模块说明
+
+| 菜单 | 作用 |
+| --- | --- |
+| 财务总览 | 当前余额、近期消耗与快捷入口 |
+| 账户充值 | 在线充值(需先完成实名认证) |
+| 充值明细 | 充值订单与到账状态 |
+| 费用账单 | 按月汇总模型与相关服务费用 |
+| 使用记录 | 单次调用的模型、用量与扣费明细 |
+| 发票开具 | 对已结清账单申请增值税发票(需实名认证) |
+
+## 计费逻辑(概要)
+
+1. 发起 API 或体验中心调用前,账户需有足够余额。
+2. 请求成功后,系统按模型定价与实际上下 token 用量记账。
+3. 余额不足时,网关可能返回 **402 Payment Required**(业务码 `INSUFFICIENT_BALANCE`),请先 [账户充值](https://console.haiyushuke.com/finance/recharge)。
+
+具体单价以 **模型广场** 各模型卡片为准;促销或「特惠」模型以控制台标注为准。
+
+## 余额告警
+
+在 **账户中心 → 通知管理** 中可配置余额阈值与通知方式,避免生产流量因余额耗尽中断。
+
+## 对账建议
+
+- 日常:用 **使用记录** 按模型、时间筛选,与业务日志中的 request id 对照。
+- 月度:导出或查看 **费用账单**,与财务系统对账。
+- 企业客户:如需明细导出、合同价或专票流程,请通过 [联系我们](/#contact) 联系商务。
+
+## 相关文档
+
+- [控制台使用指南](/docs/guides/console)
+- [常见问题:余额与账单](/docs/faq#余额不足还能调用吗)
diff --git a/content/guides/console.mdx b/content/guides/console.mdx
index 8f68ebf..baca5a0 100644
--- a/content/guides/console.mdx
+++ b/content/guides/console.mdx
@@ -8,23 +8,38 @@ description: 控制台主要功能与导航说明
控制台地址:[https://console.haiyushuke.com](https://console.haiyushuke.com)
-## 主要模块
+## 侧栏模块
-1. **概览**:用量、余额与近期调用趋势
-2. **模型广场**:浏览可用模型、定价与能力说明
-3. **API Key**:创建、轮换、禁用密钥
-4. **调用日志**(若已开通):按时间筛选请求与错误
-5. **账单**:充值、发票与明细导出
+| 模块 | 说明 |
+| --- | --- |
+| 数据看板 | 用量与账户概览(持续完善中) |
+| 模型广场 | 浏览国内模型、价格、能力标签;复制模型 ID;**接入文档** 跳转官网 [工具接入](/docs/integrations/overview) |
+| 体验中心 | 登录且实名认证后,在线对话试调用 |
+| API Key | 创建与管理调用凭证、额度与 IP 白名单 |
+| 开发文档 | 跳转至官网 [文档中心](/docs) |
+| 财务 | 总览、充值、充值明细、账单、使用记录、发票 |
+| 账户中心 | 账号设置、实名认证、通知管理 |
+
+侧栏底部 **常见问题** 同样跳转至官网文档 [FAQ](/docs/faq);**在线客服** 打开企业微信客服。
## 推荐工作流
-1. 创建 API Key
-2. 在模型广场选择目标模型
-3. 使用 SDK 或 cURL 完成联调
-4. 在概览与调用日志中核对用量
+1. 完成 **实名认证**
+2. **账户充值**(若账户需预付费)
+3. 在 **模型广场** 选定模型,在 **体验中心** 验证效果
+4. 在 **API Key** 创建密钥并限制模型范围
+5. 在 Cursor 等工具或业务服务中配置 `baseURL` 与 Key,见 [工具接入概览](/docs/integrations/overview)
+6. 在 **使用记录** / **费用账单** 中核对用量
## 权限与安全
-- 为不同环境(开发 / 预发 / 生产)使用不同 Key
-- 定期轮换 Key;泄露后立即 **禁用** 并新建
-- 生产环境勿将 Key 写入前端 bundle
+- 开发、预发、生产使用 **不同 API Key**,便于泄露时单独轮换
+- 生产环境勿将 Key 写入前端静态资源或公开仓库
+- 为 Key 配置 **IP 白名单** 可降低密钥泄露风险
+- Key 泄露后:立即 **禁用** → 新建 Key → 排查 CI 与日志是否残留
+
+## 相关文档
+
+- [API Key 管理](/docs/guides/api_keys)
+- [计费与财务](/docs/guides/billing)
+- [工具接入概览](/docs/integrations/overview)
diff --git a/content/guides/http_api.mdx b/content/guides/http_api.mdx
new file mode 100644
index 0000000..61fbe98
--- /dev/null
+++ b/content/guides/http_api.mdx
@@ -0,0 +1,95 @@
+---
+title: HTTP API 调用
+sidebarTitle: HTTP API
+description: RESTful Chat Completions 接口说明
+---
+
+# HTTP API 调用
+
+海宇数科网关提供与 OpenAI 兼容的 **RESTful HTTP API**,适用于任意编程语言、curl、API 网关或服务 mesh,无需安装专用 SDK。
+
+## 基本信息
+
+| 项目 | 值 |
+| --- | --- |
+| Base URL | `https://api.haiyushuke.com/v1` |
+| 对话补全 | `POST /chat/completions` |
+| Content-Type | `application/json` |
+| 鉴权 | `Authorization: Bearer ` |
+
+API Key 在控制台 **API Key** 创建;详见 [API Key 管理](/docs/guides/api_keys)。
+
+## 请求示例
+
+```bash
+curl https://api.haiyushuke.com/v1/chat/completions \
+ -H "Authorization: Bearer YOUR_API_KEY" \
+ -H "Content-Type: application/json" \
+ -d '{
+ "model": "deepseek-chat",
+ "messages": [
+ {"role": "system", "content": "你是简洁的企业助手。"},
+ {"role": "user", "content": "什么是 Token?"}
+ ],
+ "temperature": 0.7,
+ "max_tokens": 1024
+ }'
+```
+
+## 请求体常用字段
+
+| 字段 | 类型 | 说明 |
+| --- | --- | --- |
+| `model` | string | **必填**。控制台模型广场中的 ID |
+| `messages` | array | **必填**。`role`:`system` / `user` / `assistant` |
+| `temperature` | number | 可选,采样随机性,常见 0–2 |
+| `max_tokens` | integer | 可选,限制本次最大生成 token |
+| `stream` | boolean | 可选,`true` 时返回 SSE,见 [流式调用](/docs/guides/streaming) |
+
+部分模型支持更多参数(如 `top_p`、`stop` 等),与 OpenAI 兼容子集一致;不支持的字段可能被忽略或返回参数错误。
+
+## 响应结构(非流式)
+
+成功时 HTTP **200**,JSON 主体包含:
+
+- `id`:请求标识
+- `choices[].message.content`:模型回复文本
+- `usage`:token 统计,用于对账,见 [核心概念](/docs/concepts/overview#token-与-usage)
+
+```json
+{
+ "choices": [
+ {
+ "message": { "role": "assistant", "content": "..." },
+ "finish_reason": "stop"
+ }
+ ],
+ "usage": {
+ "prompt_tokens": 12,
+ "completion_tokens": 48,
+ "total_tokens": 60
+ }
+}
+```
+
+## 错误与 HTTP 状态码
+
+| 状态 | 常见原因 |
+| --- | --- |
+| 401 | Key 无效、过期、禁用或 Authorization 格式错误 |
+| 402 | 账户余额不足(`INSUFFICIENT_BALANCE`) |
+| 403 | Key 无该模型权限、IP 不在白名单等 |
+| 429 | 限流,需退避重试 |
+| 4xx/5xx | 参数错误、模型不存在或上游异常,见响应 body 中的 `message` / `code` |
+
+更多排查见 [常见问题](/docs/faq)。
+
+## 流式响应
+
+设置 `"stream": true` 后,响应为 **SSE** 增量块,格式与 OpenAI 流式兼容。客户端须持续读取直至 `[DONE]`,并处理断线重试。
+
+## 下一步
+
+- [OpenAI SDK 兼容](/docs/guides/openai_compatible)
+- [快速开始](/docs/getting-started)
+- [工具接入概览](/docs/integrations/overview)(Cursor、Claude Code 等)
diff --git a/content/guides/openai_compatible.mdx b/content/guides/openai_compatible.mdx
new file mode 100644
index 0000000..6bea9dc
--- /dev/null
+++ b/content/guides/openai_compatible.mdx
@@ -0,0 +1,99 @@
+---
+title: OpenAI 兼容 SDK
+sidebarTitle: OpenAI 兼容 SDK
+description: 使用 OpenAI 官方 SDK 对接海宇数科网关(协议兼容,模型为国内 ID)
+---
+
+# OpenAI SDK 兼容
+
+若您已有基于 **OpenAI 官方 SDK** 的应用,迁移到海宇数科通常只需两步:
+
+1. 将 `baseURL`(或 `base_url`)改为 `https://api.haiyushuke.com/v1`
+2. 将 `apiKey` 改为在海宇控制台创建的 **API Key**
+
+协议兼容 **Chat Completions**(`client.chat.completions.create`),便于零学习成本切换。
+
+## 环境变量(推荐)
+
+```bash
+# Linux / macOS
+export HAIYUSHUKE_API_KEY="sk-..."
+export HAIYUSHUKE_BASE_URL="https://api.haiyushuke.com/v1"
+```
+
+```powershell
+# Windows PowerShell
+$env:HAIYUSHUKE_API_KEY="sk-..."
+$env:HAIYUSHUKE_BASE_URL="https://api.haiyushuke.com/v1"
+```
+
+## Node.js
+
+安装依赖:
+
+```bash
+npm install openai
+```
+
+```ts
+import OpenAI from "openai";
+
+const client = new OpenAI({
+ apiKey: process.env.HAIYUSHUKE_API_KEY,
+ baseURL: process.env.HAIYUSHUKE_BASE_URL ?? "https://api.haiyushuke.com/v1",
+});
+
+const completion = await client.chat.completions.create({
+ model: "deepseek-chat",
+ messages: [{ role: "user", content: "Hello" }],
+});
+
+console.log(completion.choices[0]?.message?.content);
+```
+
+## Python
+
+安装依赖:
+
+```bash
+pip install openai
+```
+
+```python
+import os
+from openai import OpenAI
+
+client = OpenAI(
+ api_key=os.environ["HAIYUSHUKE_API_KEY"],
+ base_url=os.environ.get("HAIYUSHUKE_BASE_URL", "https://api.haiyushuke.com/v1"),
+)
+
+resp = client.chat.completions.create(
+ model="deepseek-chat",
+ messages=[{"role": "user", "content": "Hello"}],
+)
+print(resp.choices[0].message.content)
+```
+
+## 流式
+
+与 OpenAI 相同,设置 `stream=True` / `stream: true`,详见 [流式调用](/docs/guides/streaming)。
+
+## LangChain 等框架
+
+在 LangChain 中配置自定义 `baseURL` 与 API Key 即可指向海宇网关(具体类名随 LangChain 版本而异,原则与上文一致)。模型名填控制台 **模型 ID**。
+
+## 与直连 OpenAI 的差异
+
+| 项目 | 说明 |
+| --- | --- |
+| 模型名 | 使用海宇 **模型广场 ID**,非 OpenAI 原站名称(若不同) |
+| 账号与计费 | 海宇控制台余额与 **使用记录**,与 OpenAI 账单无关 |
+| 能力边界 | 以各模型在海宇侧实际上线能力为准(工具调用、多模态等) |
+| 密钥 | 必须使用 **API Key**,不能使用控制台登录 JWT |
+
+## 相关文档
+
+- [HTTP API 调用](/docs/guides/http_api)
+- [工具接入概览](/docs/integrations/overview)
+- [API Key 管理](/docs/guides/api_keys)
diff --git a/content/guides/streaming.mdx b/content/guides/streaming.mdx
index a6a8c8b..6957bb6 100644
--- a/content/guides/streaming.mdx
+++ b/content/guides/streaming.mdx
@@ -6,7 +6,7 @@ description: SSE 流式输出接入说明
# 流式调用
-在请求体中设置 `"stream": true`,服务端以 SSE 形式返回增量内容。
+在请求体中设置 `"stream": true`,服务端以 SSE 形式返回增量内容。协议与 OpenAI 流式兼容;HTTP 基础见 [HTTP API](/docs/guides/http_api)。
## cURL
@@ -14,14 +14,14 @@ description: SSE 流式输出接入说明
curl https://api.haiyushuke.com/v1/chat/completions \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
- -d '{"model":"gpt-4o-mini","stream":true,"messages":[{"role":"user","content":"写一首四句诗"}]}'
+ -d '{"model":"deepseek-chat","stream":true,"messages":[{"role":"user","content":"写一首四句诗"}]}'
```
## OpenAI SDK(Node)
```ts
const stream = await client.chat.completions.create({
- model: "gpt-4o-mini",
+ model: "deepseek-chat",
stream: true,
messages: [{ role: "user", content: "你好" }],
});
diff --git a/content/index.mdx b/content/index.mdx
index 405ed61..e8e0da8 100644
--- a/content/index.mdx
+++ b/content/index.mdx
@@ -1,1126 +1,66 @@
---
title: 文档中心
-description: 海宇数科大模型服务接入与使用文档
+description: 海宇数科一站式大模型 API 与智能报告开发文档
---
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
+# 平台介绍
-## 文档结构
+海宇数科面向企业与开发者,提供 **国内大模型统一网关**、**控制台自助接入** 与 **智能报告 / Agent 技能** 能力。网关采用 **OpenAI 兼容** HTTP 协议,便于接入 Cursor、Claude Code 等编程工具及自有业务服务。
-| 模块 | 说明 |
+> 本站文档按「了解平台 → 选国内模型 → 接工具 / 写代码 → 运维计费」组织;**不提供** GPT、Claude 等海外原厂模型。
+
+## 平台优势
+
+| 能力 | 说明 |
| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
+| **国内模型矩阵** | DeepSeek、智谱 GLM、通义、Kimi、MiniMax、豆包等,在 **模型广场** 统一展示价格、能力与模型 ID |
+| **OpenAI 兼容协议** | `POST /v1/chat/completions`;改 `baseURL` 与 API Key 即可对接多数 SDK 与 IDE |
+| **工具接入** | [Cursor](/docs/integrations/cursor)、[Claude Code](/docs/integrations/claude_code)、[Continue](/docs/integrations/continue)、[Cline](/docs/integrations/cline) 等配置说明 |
+| **控制台闭环** | 体验中心、API Key、使用记录、账单、发票与余额告警 |
+| **企业场景** | [智能报告](/reports)、[Agent 技能](/agents) |
+
+## 查看模型
+
+- **官网 [模型广场](/models)**:对外展示目录
+- **控制台 [模型广场](https://console.haiyushuke.com/models)**:复制 **模型 ID**、查看计价与能力
+
+`model` 请求参数须与控制台 ID **完全一致**(例如 `deepseek-chat`、`glm-5.1`,以实际上线为准)。
+
+## 极速体验
+
+1. 登录 [控制台](https://console.haiyushuke.com) → **实名认证**
+2. **体验中心** 选择国内模型试调用
+3. 创建 **API Key**,按 [工具接入概览](/docs/integrations/overview) 或 [快速开始](/docs/getting-started) 配置客户端
+
+## 快速开始
+
+[快速开始](/docs/getting-started):注册、Key、首次 HTTP 调用、核对使用记录。
+
+## 接入方式
+
+| 类型 | 文档 |
+| --- | --- |
+| IDE / 编程助手 | [工具接入概览](/docs/integrations/overview) → Cursor、Claude Code 等 |
+| HTTP / SDK | [HTTP API](/docs/guides/http_api)、[OpenAI 兼容 SDK](/docs/guides/openai_compatible)、[流式调用](/docs/guides/streaming) |
+| 运维 | [控制台](/docs/guides/console)、[API Key](/docs/guides/api_keys)、[计费与财务](/docs/guides/billing) |
+
+## 核心概念
+
+[Token、上下文与模型 ID](/docs/concepts/overview)
## 服务地址
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
+| 用途 | 地址 |
| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
+| 控制台 | [https://console.haiyushuke.com](https://console.haiyushuke.com) |
+| API Base URL | `https://api.haiyushuke.com/v1` |
-## 服务地址
+## 推荐阅读路径
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
+1. [快速开始](/docs/getting-started) → [Cursor 接入](/docs/integrations/cursor)
+2. 业务后端:[HTTP API](/docs/guides/http_api) → [计费与财务](/docs/guides/billing)
+3. 排错:[常见问题](/docs/faq)
## 需要帮助?
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
-
-欢迎查阅海宇数科大模型服务的技术文档。本站面向开发者与集成方,涵盖账号与密钥、各模型接入方式、控制台使用说明以及常见问题。
-
-## 文档结构
-
-| 模块 | 说明 |
-| --- | --- |
-| [快速开始](/docs/getting-started) | 注册、创建 API Key、发起第一次请求 |
-| [AI 模型接入](/docs/models/openai) | 按厂商查看 Base URL、鉴权与示例 |
-| [使用指南](/docs/guides/console) | 控制台、密钥管理与流式调用 |
-| [常见问题](/docs/faq) | 计费、限流、错误码与排查 |
-
-## 服务地址
-
-- **控制台**:`https://console.haiyushuke.com`
-- **OpenAI 兼容 API**(示例):`https://api.haiyushuke.com/v1`
-
-> 实际网关域名以控制台「接入信息」页展示为准;下文示例中的域名请替换为你的环境配置。
-
-## 需要帮助?
-
-产品咨询与技术支持可通过官网 [联系我们](/#contact) 或控制台工单入口提交。
+[常见问题](/docs/faq) · [用户协议](/docs/legal/user-agreement) · [隐私政策](/docs/legal/privacy) · [联系我们](/#contact) · [企业微信客服](https://work.weixin.qq.com/kfid/kfc1f8fc41acaca0895)
diff --git a/content/integrations/_meta.js b/content/integrations/_meta.js
new file mode 100644
index 0000000..82c631d
--- /dev/null
+++ b/content/integrations/_meta.js
@@ -0,0 +1,7 @@
+export default {
+ overview: "接入概览",
+ cursor: "Cursor",
+ claude_code: "Claude Code",
+ continue: "Continue",
+ cline: "Cline",
+};
diff --git a/content/integrations/claude_code.mdx b/content/integrations/claude_code.mdx
new file mode 100644
index 0000000..5f565c0
--- /dev/null
+++ b/content/integrations/claude_code.mdx
@@ -0,0 +1,56 @@
+---
+title: Claude Code 接入
+sidebarTitle: Claude Code
+description: 在 Claude Code CLI 中对接自定义 API(OpenAI 兼容)
+---
+
+# Claude Code 接入
+
+**Claude Code** 是面向终端的 AI 编程助手。不同版本对「自定义后端」的支持方式可能不同;海宇数科网关当前对外主要提供 **OpenAI Chat Completions 兼容** 接口(`https://api.haiyushuke.com/v1`),**不提供** Anthropic 海外 Claude 原厂模型。
+
+若你的 Claude Code 版本支持 **OpenAI 兼容 Base URL** 或可在配置中指定 OpenAI 风格端点,可按下列方式接入;若仅支持 Anthropic 原生 API,则需改用 [Cursor](/docs/integrations/cursor)、[Continue](/docs/integrations/continue) 等工具,或通过业务后端自行调用 [HTTP API](/docs/guides/http_api)。
+
+## 前置条件
+
+- 控制台已 **实名认证**,已创建 **API Key**
+- 已在 **模型广场** 选定国内模型 ID(勿填海外 `claude-*` 名称)
+
+## 配置思路(OpenAI 兼容)
+
+在 Claude Code 的环境变量或配置文件中(以官方文档为准),尝试设置与海宇网关等价的 OpenAI 兼容项,例如:
+
+```bash
+# 示例:名称以 Claude Code 当前版本文档为准
+export OPENAI_API_KEY="YOUR_HAIYUSHUKE_API_KEY"
+export OPENAI_BASE_URL="https://api.haiyushuke.com/v1"
+```
+
+将 **模型名** 设为控制台模型 ID,例如:
+
+```bash
+# 示例模型 ID,请替换为模型广场实际值
+export ANTHROPIC_MODEL="deepseek-chat"
+```
+
+> 部分 CLI 仍使用 `ANTHROPIC_*` 前缀命名环境变量,但后端实际走的是您配置的 Base URL;请以 Claude Code 官方说明为准,并确认其请求是否落在 `/v1/chat/completions` 兼容路径上。
+
+## 验证
+
+1. 在控制台 **体验中心** 用同一模型 ID 发送一条消息
+2. 在 Claude Code 中发起简单任务(如解释一个本地文件)
+3. 在 **财务 → 使用记录** 查看是否产生对应调用
+
+## 故障排查
+
+| 现象 | 建议 |
+| --- | --- |
+| 401 | 检查 API Key、是否误用登录 token |
+| 403 | Key 未授权该模型 ID,或 IP 白名单限制 |
+| 402 | 余额不足,前往充值 |
+| 协议不匹配 | 换用 Cursor / Continue,或直接用 HTTP/SDK 集成 |
+
+## 相关文档
+
+- [工具接入概览](/docs/integrations/overview)
+- [Cursor 接入](/docs/integrations/cursor)
+- [常见问题](/docs/faq)
diff --git a/content/integrations/cline.mdx b/content/integrations/cline.mdx
new file mode 100644
index 0000000..8d16e0b
--- /dev/null
+++ b/content/integrations/cline.mdx
@@ -0,0 +1,33 @@
+---
+title: Cline 接入
+sidebarTitle: Cline
+description: 在 VS Code 的 Cline 扩展中使用海宇 OpenAI 兼容 API
+---
+
+# Cline 接入
+
+[Cline](https://github.com/cline/cline)(原 Claude Dev)是 VS Code 中的自主编程扩展,支持通过 **OpenAI 兼容 API** 使用自定义模型。
+
+## 前置条件
+
+- 控制台创建 **API Key**,并确认可用模型包含目标 ID
+
+## 配置步骤
+
+1. 打开 VS Code → Cline 侧边栏 → **Settings**(设置)
+2. 选择 API Provider 为 **OpenAI Compatible** / **OpenAI**(以扩展当前版本为准)
+3. 填写:
+ - **Base URL**:`https://api.haiyushuke.com/v1`
+ - **API Key**:海宇 API Key
+ - **Model ID**:模型广场中的 ID(如 `glm-5.1`、`deepseek-chat` 等)
+4. 保存并新建任务测试
+
+## 注意
+
+- 扩展界面若默认展示海外模型名称,请 **手动改为** 控制台国内模型 ID。
+- 复杂 Agent 任务消耗 token 较多,请关注 [计费与财务](/docs/guides/billing) 与余额告警。
+
+## 相关文档
+
+- [Cursor 接入](/docs/integrations/cursor)
+- [工具接入概览](/docs/integrations/overview)
diff --git a/content/integrations/continue.mdx b/content/integrations/continue.mdx
new file mode 100644
index 0000000..f88f23f
--- /dev/null
+++ b/content/integrations/continue.mdx
@@ -0,0 +1,39 @@
+---
+title: Continue 接入
+sidebarTitle: Continue
+description: 在 VS Code / JetBrains 的 Continue 插件中使用海宇 API
+---
+
+# Continue 接入
+
+[Continue](https://continue.dev) 是 VS Code、JetBrains 等 IDE 中的开源 AI 编程插件,支持配置 **OpenAI 兼容** 模型提供商。
+
+## 前置条件
+
+- 海宇控制台 **API Key** 与国内模型 ID(见 [模型广场](https://console.haiyushuke.com/models))
+
+## 配置示例
+
+在 Continue 配置文件 `config.yaml`(或旧版 `config.json`)中增加自定义 OpenAI 兼容提供商,例如:
+
+```yaml
+models:
+ - name: Haiyu DeepSeek
+ provider: openai
+ model: deepseek-chat
+ apiKey: YOUR_HAIYUSHUKE_API_KEY
+ apiBase: https://api.haiyushuke.com/v1
+```
+
+请将 `model` 替换为你在模型广场复制的 **准确 ID**;可配置多个条目对应不同模型。
+
+## 注意
+
+- `apiBase` 需包含 `/v1` 前缀,与海宇网关一致。
+- 不要使用未在海宇上线的海外模型 ID。
+- Key 勿写入公开仓库;本地 config 建议加入 `.gitignore`。
+
+## 相关文档
+
+- [工具接入概览](/docs/integrations/overview)
+- [OpenAI 兼容 SDK](/docs/guides/openai_compatible)
diff --git a/content/integrations/cursor.mdx b/content/integrations/cursor.mdx
new file mode 100644
index 0000000..dd270a0
--- /dev/null
+++ b/content/integrations/cursor.mdx
@@ -0,0 +1,50 @@
+---
+title: Cursor 接入
+sidebarTitle: Cursor
+description: 在 Cursor 中配置海宇数科 API 与国内模型
+---
+
+# Cursor 接入
+
+[Cursor](https://cursor.com) 支持使用 **OpenAI 兼容** 自定义接口。将 Base URL 指向海宇数科网关后,可在 Cursor 中选择控制台已上线的 **国内模型 ID** 进行补全与对话。
+
+## 前置条件
+
+1. 登录 [控制台](https://console.haiyushuke.com),完成 **实名认证**
+2. 在 **API Key** 创建密钥,并确认 Key 的 **可用模型** 包含你要用的模型 ID
+3. 在 **模型广场** 复制目标模型 ID(例如 `deepseek-chat`、`glm-5.1` 等,以实际列表为准)
+
+## 配置步骤
+
+1. 打开 Cursor → **Settings**(设置)
+2. 进入 **Models** 或 **OpenAI API** 相关区域(版本不同菜单名可能略有差异)
+3. 填写:
+ - **OpenAI API Key**:海宇控制台创建的 API Key
+ - **Override OpenAI Base URL**(或 Custom OpenAI Endpoint):`https://api.haiyushuke.com/v1`
+4. 在模型列表中添加 **自定义模型名**,名称必须与模型广场 **模型 ID 完全一致**
+5. 保存后在新对话中选择该模型进行测试
+
+## 示例(settings.json 片段)
+
+若你通过 `settings.json` 管理配置,可参考(键名以 Cursor 当前版本为准):
+
+```json
+{
+ "openai.apiKey": "YOUR_HAIYUSHUKE_API_KEY",
+ "openai.baseUrl": "https://api.haiyushuke.com/v1"
+}
+```
+
+自定义模型请在 Cursor 的 Models 界面添加,ID 使用控制台复制的字符串。
+
+## 使用建议
+
+- **不要** 使用 `gpt-4o`、`claude-sonnet` 等海外模型名;平台未提供这些模型。
+- 生产环境 Key 不要提交到 Git;可配合 Key 的 **IP 白名单**。
+- 若补全无响应,先在 **体验中心** 用同一模型 ID 验证,再查 [常见问题](/docs/faq)。
+
+## 相关文档
+
+- [工具接入概览](/docs/integrations/overview)
+- [API Key 管理](/docs/guides/api_keys)
+- [计费与财务](/docs/guides/billing)
diff --git a/content/integrations/overview.mdx b/content/integrations/overview.mdx
new file mode 100644
index 0000000..f38efd7
--- /dev/null
+++ b/content/integrations/overview.mdx
@@ -0,0 +1,39 @@
+---
+title: 工具接入概览
+sidebarTitle: 接入概览
+description: 在 Cursor、Claude Code 等客户端中使用海宇数科 API
+---
+
+# 工具接入概览
+
+海宇数科提供 **OpenAI 兼容** 的 `https://api.haiyushuke.com/v1` 网关。多数支持「自定义 OpenAI Base URL + API Key」的 IDE / 编程助手,均可指向海宇,并在请求中使用控制台 **模型广场** 里的 **国内模型 ID**(如 DeepSeek、智谱 GLM、通义、Kimi、MiniMax 等)。
+
+> 当前平台 **不提供** OpenAI GPT、Anthropic Claude 等海外原厂模型;请勿在文档或客户端中填写 `gpt-*`、`claude-*` 等海外 ID,一律以 [控制台模型广场](https://console.haiyushuke.com/models) 为准。
+
+## 接入三要素
+
+| 项 | 值 |
+| --- | --- |
+| API Base URL | `https://api.haiyushuke.com/v1` |
+| API Key | 控制台 **API Key** 中创建(非登录密码) |
+| Model | 模型广场复制的 **模型 ID** |
+
+创建 Key、实名认证与充值说明见 [快速开始](/docs/getting-started)、[API Key 管理](/docs/guides/api_keys)。
+
+## 按工具查看
+
+| 工具 | 文档 | 说明 |
+| --- | --- | --- |
+| Cursor | [Cursor 接入](/docs/integrations/cursor) | 覆盖 OpenAI Base URL,适合日常编码 |
+| Claude Code | [Claude Code 接入](/docs/integrations/claude_code) | CLI 助手,需确认客户端协议与网关兼容 |
+| Continue | [Continue 接入](/docs/integrations/continue) | VS Code / JetBrains 插件 |
+| Cline | [Cline 接入](/docs/integrations/cline) | VS Code 自主编程扩展 |
+
+## 通用 HTTP / SDK
+
+不通过 IDE 而由业务服务调用时,请阅 [HTTP API](/docs/guides/http_api)、[OpenAI 兼容 SDK](/docs/guides/openai_compatible)。
+
+## 常见问题
+
+- Key 无效、402 余额不足、403 模型未授权:见 [常见问题](/docs/faq)
+- Token 与上下文:见 [核心概念](/docs/concepts/overview)
diff --git a/content/legal/_meta.js b/content/legal/_meta.js
new file mode 100644
index 0000000..354fdce
--- /dev/null
+++ b/content/legal/_meta.js
@@ -0,0 +1,4 @@
+export default {
+ "user-agreement": "用户协议",
+ privacy: "隐私政策",
+};
diff --git a/content/legal/privacy.mdx b/content/legal/privacy.mdx
new file mode 100644
index 0000000..0735966
--- /dev/null
+++ b/content/legal/privacy.mdx
@@ -0,0 +1,73 @@
+---
+title: 隐私政策
+description: 海宇数科 AI 模型控制台个人信息保护政策
+---
+
+# 隐私政策
+
+**更新日期:2026 年 6 月 28 日**
+
+**海宇数科(广东横琴)科技有限公司**(以下简称「我们」)重视您的个人信息保护。本政策说明您在使用**海宇数科 AI 模型控制台**(以下简称「本平台」)时,我们如何收集、使用、存储、共享与保护您的个人信息,以及您享有的权利。
+
+请您在使用注册、登录、模型调用、充值、实名认证等功能前仔细阅读本政策。您使用本平台即表示您理解并同意我们按本政策处理相关信息;若您不同意,请停止使用并可联系我们咨询。
+
+## 一、我们收集的信息
+
+- **账户信息**:手机号码、邮箱、登录密码(加密存储)、昵称或您主动填写的资料。
+- **身份与认证信息**:个人实名或企业认证所需的姓名、证件信息、企业名称、统一社会信用代码、营业执照影像、法人及联系人信息等(以您提交的认证材料为准)。
+- **交易与用量信息**:充值记录、账单、发票抬头、API 调用量、模型名称、时间戳及与计费相关的日志。
+- **设备与日志信息**:IP 地址、浏览器类型、访问时间、操作日志、错误日志,用于安全风控、故障排查与统计分析。
+- **您主动提交的内容**:在线体验中的对话内容、您上传用于业务处理的文件或文本(若功能开放),以及您通过客服渠道提供的反馈。
+
+## 二、我们如何使用信息
+
+- 为您提供注册登录、短信验证、模型 API 鉴权、用量统计、账单与开票、企业认证审核等核心功能。
+- 保障账户与 API 密钥安全,识别异常登录、滥用调用或欺诈行为,并进行必要的风险提示或处置。
+- 改进产品体验、分析聚合后的使用趋势,以及向您发送与服务相关的通知(如安全提醒、政策更新、账单通知)。
+- 履行法律法规规定的义务,配合有权机关依法提出的要求。
+
+## 三、Cookie 与同类技术
+
+我们可能使用 Cookie、本地存储或类似技术维持登录状态、记住偏好并统计访问量。您可通过浏览器设置管理 Cookie,但关闭后部分功能可能无法正常使用。
+
+## 四、信息的共享、委托处理与公开披露
+
+我们不会出售您的个人信息。仅在以下情形共享或委托处理:为实现功能所必需的云服务、短信、支付、实名核验等合作方(我们要求其遵守保密与安全义务);法律法规要求或经您明确同意;为保护您、我们或其他用户的生命财产安全所必需。
+
+企业认证、支付结果等可能涉及向监管或税务合规所需的合作方传输必要字段,范围以完成该业务所必需为限。
+
+未经您同意,我们不会公开披露您的个人信息,法律强制要求的情况除外。
+
+## 五、信息的存储与跨境
+
+我们在中华人民共和国境内存储个人信息,存储期限为实现本政策目的所必需的最短时间,或法律法规要求的留存期限。超出期限后我们将删除或匿名化处理。
+
+若未来因业务需要向境外提供个人信息,我们将依法履行安全评估、标准合同或征得您的单独同意等义务,并更新本政策。
+
+## 六、您的权利
+
+您有权访问、更正、删除您的个人信息,撤回同意、注销账户,以及获取个人信息副本(法律法规另有规定的除外)。
+
+您可通过控制台「账户设置」、认证页面或联系客服行使上述权利。我们将在验证身份后合理期限内答复。
+
+若您认为我们处理个人信息的行为损害您的合法权益,可向网信、电信等主管部门投诉或举报,或依法提起诉讼。
+
+## 七、未成年人保护
+
+本平台主要面向企业用户与具有完全民事行为能力的成年人。若您为未成年人,请在监护人指导下阅读本政策并使用服务;我们不会主动面向未成年人提供定向营销。
+
+## 八、安全措施
+
+我们采用访问控制、传输加密、密钥分级管理、日志审计等技术和管理措施保护您的信息。尽管已尽合理努力,互联网环境仍存在风险,请您妥善保管账户与 API 密钥。
+
+## 九、政策更新
+
+我们可能适时修订本政策,修订版本将公布于文档中心并更新生效日期。重大变更我们将通过显著方式提示;若您继续使用,即表示接受更新后的政策。相关服务条款见 [用户协议](/docs/legal/user-agreement)。
+
+## 十、联系我们
+
+如您对本政策或个人信息处理有任何疑问、意见或投诉,请通过 [控制台在线客服](https://work.weixin.qq.com/kfid/kfc1f8fc41acaca0895) 或邮件 [main@haiyushuke.cn](mailto:main@haiyushuke.cn) 联系我们。
+
+个人信息保护负责人联系渠道同上。
+
+海宇数科(广东横琴)科技有限公司
diff --git a/content/legal/user-agreement.mdx b/content/legal/user-agreement.mdx
new file mode 100644
index 0000000..a7a80b7
--- /dev/null
+++ b/content/legal/user-agreement.mdx
@@ -0,0 +1,74 @@
+---
+title: 用户协议
+description: 海宇数科 AI 模型控制台用户服务协议
+---
+
+# 用户协议
+
+**更新日期:2026 年 6 月 28 日**
+
+欢迎使用**海宇数科 AI 模型控制台**(以下简称「本平台」或「控制台」)。本协议由您与**海宇数科(广东横琴)科技有限公司**(以下简称「我们」)订立。
+
+请您在注册、登录或使用本平台提供的模型接入、在线体验、API 密钥、账户充值与账单等服务前,仔细阅读并充分理解本协议。您点击同意、完成注册或实际使用服务,即视为您已接受本协议全部条款。
+
+## 一、服务说明
+
+本平台面向企业用户与开发者,提供大语言模型及多模态模型的统一接入、控制台在线体验、API 调用、用量与账单管理、企业实名认证等功能。具体可用模型、计费方式与功能以 [控制台](https://console.haiyushuke.com) 页面及本 [文档中心](/docs) 公示为准。
+
+我们有权根据业务需要调整模型列表、价格、接口形态或功能模块,并将通过控制台公告、站内通知或文档中心等方式告知;若调整对您已生效的订单或权益产生重大影响,我们将依法或依约另行说明。
+
+## 二、账户注册与安全
+
+您应使用真实、合法、有效的手机号或邮箱注册账户,并妥善保管登录密码、短信验证码及 API 密钥。账户下的全部操作视为您的行为,您须对因保管不善导致的损失自行承担责任。
+
+您不得冒用他人身份注册、批量注册恶意账户、转让或出借账户。发现账户被盗用或异常使用时,请立即联系我们并修改密码、轮换 API 密钥。
+
+为符合监管要求及保障交易安全,我们可能要求您完成个人或企业实名认证;未完成认证时,部分功能(如开票、部分模型或更高额度)可能受限。详见 [常见问题 · 实名认证](/docs/faq#账号与实名认证)。
+
+## 三、使用规范
+
+您在使用模型 API、在线体验或相关工具时,应遵守中华人民共和国法律法规及公序良俗,不得利用本平台生成、传播违法信息,不得从事欺诈、侵权、干扰网络安全、未经授权的数据抓取或其他损害我们或第三方合法权益的行为。
+
+您向模型提交的提示词、上传的内容及通过 API 输出的结果,其合法性、权利归属由您负责。您应确保已获得必要授权,不得输入国家秘密、他人个人信息或商业秘密等依法禁止或未经授权处理的内容。
+
+您不得对本平台进行反向工程、绕过鉴权、压测攻击、滥用接口频率,不得将 API 密钥嵌入公开客户端或向不可信第三方泄露。Key 管理要求见 [API Key 管理](/docs/guides/api_keys)。
+
+## 四、费用与支付
+
+本平台部分服务为有偿服务。您充值或消费产生的费用、计费单位、扣费顺序及发票规则以控制台「费用中心」及 [计费与财务](/docs/guides/billing) 说明为准。
+
+通过第三方支付完成的充值,除法律另有规定外,虚拟余额或已消耗用量一般不支持无理由退款;错误充值或系统异常扣费,您可凭凭证联系我们核实处理。
+
+## 五、知识产权
+
+本平台软件、界面设计、文档、商标及我们提供的模型服务相关权利归我们或相应权利人所有。未经书面许可,您不得复制、修改、传播或用于本协议以外的商业目的。
+
+在法律法规允许的范围内,您对依法享有权利的输入内容保留相应权利;对于模型输出,您可在遵守本协议及模型 / provider 使用政策的前提下用于约定场景。若输出涉及第三方权利,您应自行评估并承担合规责任。
+
+## 六、隐私保护
+
+我们处理个人信息的方式详见 [隐私政策](/docs/legal/privacy)。该政策为本协议的重要组成部分,与本协议具有同等法律效力。
+
+## 七、免责声明与责任限制
+
+模型输出由人工智能自动生成,可能存在不准确、不完整或过时的情况,不构成专业意见(包括但不限于法律、医疗、财务建议)。您应自行判断并承担使用后果。
+
+因不可抗力、网络故障、第三方服务中断、您自身设备或操作原因导致的服务不可用或数据丢失,我们在法律允许范围内不承担责任;我们将尽力维护服务稳定与安全。
+
+在法律允许的最大范围内,我们对您因使用本平台产生的间接损失、预期利润损失等不承担责任;我们的总赔偿责任以您就相关争议服务在过去十二个月内已向我们支付的费用为上限(如无付费则为零),法律另有强制性规定的除外。
+
+## 八、协议变更与终止
+
+我们可修订本协议,修订后将公布于本平台、文档中心并注明生效日期。若您不同意修订内容,应停止使用并申请注销账户;继续使用视为接受修订。
+
+若您严重违反本协议,我们有权暂停或终止向您提供服务、冻结账户余额或依法向主管部门报告。您可随时停止使用并申请注销账户;注销后我们将依法删除或匿名化处理您的个人信息,法律法规另有要求的除外。
+
+## 九、法律适用与争议解决
+
+本协议的订立、执行与解释适用中华人民共和国大陆地区法律。因本协议产生的争议,双方应友好协商;协商不成的,提交我们住所地有管辖权的人民法院诉讼解决。
+
+## 十、联系我们
+
+如您对本协议有疑问,请通过 [控制台在线客服](https://work.weixin.qq.com/kfid/kfc1f8fc41acaca0895) 或发送邮件至 [main@haiyushuke.cn](mailto:main@haiyushuke.cn) 与我们联系。
+
+海宇数科(广东横琴)科技有限公司
diff --git a/content/models/_meta.js b/content/models/_meta.js
deleted file mode 100644
index 802d050..0000000
--- a/content/models/_meta.js
+++ /dev/null
@@ -1,5 +0,0 @@
-export default {
- openai: "OpenAI",
- claude: "Claude (Anthropic)",
- deepseek: "DeepSeek",
-};
diff --git a/content/models/claude.mdx b/content/models/claude.mdx
deleted file mode 100644
index b19655a..0000000
--- a/content/models/claude.mdx
+++ /dev/null
@@ -1,42 +0,0 @@
----
-title: Claude 接入
-sidebarTitle: Claude
-description: Anthropic Claude 系列模型接入说明
----
-
-# Claude (Anthropic) 接入
-
-Claude 模型可通过 **OpenAI 兼容接口** 或 **Anthropic Messages API** 接入(以控制台开通能力为准)。
-
-## OpenAI 兼容方式(推荐迁移)
-
-```bash
-curl https://api.haiyushuke.com/v1/chat/completions \
- -H "Authorization: Bearer YOUR_API_KEY" \
- -H "Content-Type: application/json" \
- -d '{
- "model": "claude-sonnet-4-20250514",
- "messages": [{"role": "user", "content": "总结以下三点:安全、成本、延迟"}]
- }'
-```
-
-将 `model` 替换为控制台提供的 Claude 模型 ID。
-
-## 系统提示与多轮对话
-
-与 OpenAI 相同,使用 `messages` 数组:
-
-```json
-{
- "model": "claude-sonnet-4-20250514",
- "messages": [
- { "role": "system", "content": "你是企业知识库助手,回答需简洁。" },
- { "role": "user", "content": "什么是 RAG?" }
- ]
-}
-```
-
-## 注意事项
-
-- 部分 Claude 特性(如扩展思考、工具调用)需使用对应 API 形态,请参考控制台该模型的「能力标签」。
-- 长上下文模型请留意单次请求的 `max_tokens` 与账单中的输入 token 统计。
diff --git a/content/models/deepseek.mdx b/content/models/deepseek.mdx
deleted file mode 100644
index 6210e49..0000000
--- a/content/models/deepseek.mdx
+++ /dev/null
@@ -1,32 +0,0 @@
----
-title: DeepSeek 接入
-sidebarTitle: DeepSeek
-description: DeepSeek 系列模型接入说明
----
-
-# DeepSeek 接入
-
-DeepSeek 模型通过统一网关暴露,协议为 **OpenAI Chat Completions 兼容**。
-
-## 示例
-
-```bash
-curl https://api.haiyushuke.com/v1/chat/completions \
- -H "Authorization: Bearer YOUR_API_KEY" \
- -H "Content-Type: application/json" \
- -d '{
- "model": "deepseek-chat",
- "messages": [{"role": "user", "content": "用列表说明大模型网关的三项优势"}]
- }'
-```
-
-## 模型选择建议
-
-| 场景 | 建议 |
-| --- | --- |
-| 通用对话 / 代码 | `deepseek-chat` |
-| 复杂推理(若已开通) | 控制台标注的 Reasoner 类模型 ID |
-
-## 与 OpenAI SDK 共用配置
-
-仅需修改 `model` 字段,无需更换 SDK;`baseURL` 与 API Key 与 [OpenAI 接入](/docs/models/openai) 相同。
diff --git a/content/models/openai.mdx b/content/models/openai.mdx
deleted file mode 100644
index 6b37acb..0000000
--- a/content/models/openai.mdx
+++ /dev/null
@@ -1,62 +0,0 @@
----
-title: OpenAI 接入
-sidebarTitle: OpenAI
-description: 通过 OpenAI 兼容协议接入 GPT 系列模型
----
-
-# OpenAI 兼容接入
-
-海宇数科对 OpenAI 官方 SDK 及 HTTP API 提供兼容层,便于现有应用零改造迁移。
-
-## 端点
-
-| 项目 | 值 |
-| --- | --- |
-| Base URL | `https://api.haiyushuke.com/v1` |
-| Chat Completions | `POST /chat/completions` |
-| 鉴权 | `Authorization: Bearer ` |
-
-## Node.js(官方 SDK)
-
-```ts
-import OpenAI from "openai";
-
-const client = new OpenAI({
- apiKey: process.env.HAIYUSHUKE_API_KEY,
- baseURL: "https://api.haiyushuke.com/v1",
-});
-
-const completion = await client.chat.completions.create({
- model: "gpt-4o-mini",
- messages: [{ role: "user", content: "Hello" }],
-});
-
-console.log(completion.choices[0]?.message?.content);
-```
-
-## Python
-
-```python
-from openai import OpenAI
-
-client = OpenAI(
- api_key="YOUR_API_KEY",
- base_url="https://api.haiyushuke.com/v1",
-)
-
-resp = client.chat.completions.create(
- model="gpt-4o-mini",
- messages=[{"role": "user", "content": "Hello"}],
-)
-print(resp.choices[0].message.content)
-```
-
-## 常用参数
-
-- `temperature`:0–2,控制随机性
-- `max_tokens`:最大生成 token
-- `stream: true`:开启流式,见 [流式调用](/docs/guides/streaming)
-
-## 模型 ID
-
-请在控制台 **模型广场** 查看当前可用 ID;名称可能随供应商更新,以控制台为准。
diff --git a/e2e/smoke.spec.ts b/e2e/smoke.spec.ts
index a3239a1..2023aa4 100644
--- a/e2e/smoke.spec.ts
+++ b/e2e/smoke.spec.ts
@@ -16,17 +16,35 @@ test.describe("站点冒烟", () => {
/智能报告/,
);
await expect(page.locator("#reports")).toBeVisible();
- await expect(page.getByText("KYB 企业核验")).toBeVisible();
+ await expect(page.getByText("企业综合风险报告")).toBeVisible();
const exampleBtn = page
.locator("#reports")
.getByRole("button", { name: "查看智能体报告示例" })
.first();
await exampleBtn.scrollIntoViewIfNeeded();
- await exampleBtn.click();
- await expect(page.getByRole("dialog")).toBeVisible();
- await expect(page.getByRole("dialog")).toContainText("核验结论");
+ await exampleBtn.click({ force: true });
+ await expect(page.locator(".report-example-overlay")).toBeVisible({
+ timeout: 10_000,
+ });
+ await expect(page.locator(".report-example-overlay")).toContainText(
+ "敬请期待",
+ );
+ await page
+ .locator(".report-example-overlay")
+ .getByRole("button", { name: "关闭" })
+ .click();
+ await expect(page.locator(".report-example-overlay")).toHaveCount(0);
await expect(page.locator("#models")).toBeVisible();
+ const businessConsult = page.getByRole("button", { name: "商务咨询" });
+ await businessConsult.scrollIntoViewIfNeeded();
+ await expect(businessConsult).toBeVisible();
+ await businessConsult.click();
+ await expect(
+ page.getByRole("dialog", { name: "商务咨询" }),
+ ).toContainText("扫描二维码");
+ await page.getByRole("button", { name: "关闭" }).click();
+
const squareLink = page.getByRole("link", { name: "模型广场" }).first();
await squareLink.click();
await expect(page).toHaveURL(/\/models$/);
@@ -41,12 +59,12 @@ test.describe("站点冒烟", () => {
"AI 新闻资讯",
);
await page
- .getByRole("link", { name: "智能报告模板库 2.0 发布" })
+ .getByRole("link", { name: "用户协议与隐私政策正式发布" })
.first()
.click();
- await expect(page).toHaveURL(/\/news\/report-templates-2/);
+ await expect(page).toHaveURL(/\/news\/legal-policies-published/);
await expect(page.getByRole("heading", { level: 1 })).toContainText(
- "智能报告模板库 2.0 发布",
+ "用户协议与隐私政策正式发布",
);
expect(
@@ -83,12 +101,27 @@ test.describe("站点冒烟", () => {
),
).toBeVisible({ timeout: 15_000 });
await expect(page.getByRole("link", { name: "快速开始" }).first()).toBeVisible();
- await page.getByRole("link", { name: "OpenAI" }).first().click();
- await expect(page).toHaveURL(/\/docs\/models\/openai/);
+ await page.getByRole("link", { name: "Cursor" }).first().click();
+ await expect(page).toHaveURL(/\/docs\/integrations\/cursor/);
await expect(page.locator(".docs-prose h1, .docs-prose h2").first()).toContainText(
- "OpenAI",
+ "Cursor",
);
- await expect(page.getByText("chat/completions")).toBeVisible();
+ await expect(page.getByText("api.haiyushuke.com")).toBeVisible();
+ });
+
+ test("文档中心法律条款页可访问", async ({ page }) => {
+ const agreement = await page.goto("/docs/legal/user-agreement", {
+ waitUntil: "domcontentloaded",
+ });
+ expect(agreement?.ok()).toBeTruthy();
+ await expect(page.locator(".docs-prose h1").first()).toContainText("用户协议");
+ await expect(page.locator(".docs-prose")).toContainText("服务说明");
+
+ const privacy = await page.goto("/docs/legal/privacy", {
+ waitUntil: "domcontentloaded",
+ });
+ expect(privacy?.ok()).toBeTruthy();
+ await expect(page.locator(".docs-prose h1").first()).toContainText("隐私政策");
});
test("全局样式编译通过(无 Turbopack CSS 报错页)", async ({ page }) => {
diff --git a/playwright.config.ts b/playwright.config.ts
index 9799fc3..525d6bd 100644
--- a/playwright.config.ts
+++ b/playwright.config.ts
@@ -1,6 +1,6 @@
import { defineConfig, devices } from "@playwright/test";
-const baseURL = process.env.PLAYWRIGHT_BASE_URL ?? "http://127.0.0.1:3000";
+const baseURL = process.env.PLAYWRIGHT_BASE_URL ?? "http://localhost:3000";
export default defineConfig({
testDir: "./e2e",
diff --git a/public/qrcode.jpg b/public/qrcode.jpg
new file mode 100644
index 0000000..f317cee
Binary files /dev/null and b/public/qrcode.jpg differ
diff --git a/src/app/(site)/news/[slug]/page.tsx b/src/app/(site)/news/[slug]/page.tsx
index b850697..340ddc9 100644
--- a/src/app/(site)/news/[slug]/page.tsx
+++ b/src/app/(site)/news/[slug]/page.tsx
@@ -7,7 +7,9 @@ import { NewsCoverImage } from "@/components/news-cover-image";
import {
getAllNewsSlugs,
getNewsBySlug,
+ newsArticleHasCover,
} from "@/content/news-articles";
+import { site } from "@/content/site";
import {
articleMetadata,
newsArticleJsonLd,
@@ -29,13 +31,20 @@ export async function generateMetadata({
if (!article) {
return { title: "文章未找到", robots: { index: false, follow: false } };
}
+ const coverImage = newsArticleHasCover(article)
+ ? article.image
+ : site.brandAssets.logo;
+ const coverAlt = newsArticleHasCover(article)
+ ? (article.imageAlt ?? article.title)
+ : site.brandAssets.logoAlt;
+
return articleMetadata({
title: article.title,
description: article.summary,
path: `/news/${slug}`,
publishedTime: `${article.date}T08:00:00+08:00`,
- imagePath: article.image,
- imageAlt: article.imageAlt,
+ imagePath: coverImage,
+ imageAlt: coverAlt,
});
}
@@ -58,14 +67,16 @@ export default async function NewsDetailPage({ params }: PageProps) {
← 返回资讯列表
-
-
-
+ {newsArticleHasCover(article) ? (
+
+
+
+ ) : null}
{article.tag}
diff --git a/src/app/(site)/page.tsx b/src/app/(site)/page.tsx
index 8aecb89..1ab6e5d 100644
--- a/src/app/(site)/page.tsx
+++ b/src/app/(site)/page.tsx
@@ -8,6 +8,7 @@ import { SectionModels } from "@/components/section-models";
import { SectionEnterprise } from "@/components/section-enterprise";
import { SectionNews } from "@/components/section-news";
import { SectionContact } from "@/components/section-contact";
+import { HomeFloatingConsult } from "@/components/home-floating-consult";
import { ScrollReveal, ScrollRevealHero } from "@/components/scroll-reveal";
import { canonicalAbsoluteUrl } from "@/lib/site-url";
@@ -51,6 +52,7 @@ export default function Home() {
+
>
);
}
diff --git a/src/app/sitemap.ts b/src/app/sitemap.ts
index 3e866cc..e12a684 100644
--- a/src/app/sitemap.ts
+++ b/src/app/sitemap.ts
@@ -16,6 +16,18 @@ export default function sitemap(): MetadataRoute.Sitemap {
"/docs",
"/docs/getting-started",
"/docs/faq",
+ "/docs/integrations/overview",
+ "/docs/integrations/cursor",
+ "/docs/integrations/claude_code",
+ "/docs/integrations/continue",
+ "/docs/integrations/cline",
+ "/docs/guides/http_api",
+ "/docs/guides/openai_compatible",
+ "/docs/guides/console",
+ "/docs/guides/api_keys",
+ "/docs/guides/streaming",
+ "/docs/guides/billing",
+ "/docs/concepts/overview",
] as const;
const staticEntries: MetadataRoute.Sitemap = staticPaths.map((path) => ({
diff --git a/src/components/home-floating-consult.tsx b/src/components/home-floating-consult.tsx
new file mode 100644
index 0000000..f3fcedc
--- /dev/null
+++ b/src/components/home-floating-consult.tsx
@@ -0,0 +1,75 @@
+"use client";
+
+import { useState } from "react";
+import { site } from "@/content/site";
+import { WechatQrDialog } from "@/components/wechat-qr-dialog";
+
+export function HomeFloatingConsult() {
+ const [qrOpen, setQrOpen] = useState(false);
+ const { customerService } = site.links;
+
+ return (
+ <>
+
+ setQrOpen(false)} />
+ >
+ );
+}
diff --git a/src/components/intelligent-report-grid.tsx b/src/components/intelligent-report-grid.tsx
index 5264975..6d93255 100644
--- a/src/components/intelligent-report-grid.tsx
+++ b/src/components/intelligent-report-grid.tsx
@@ -83,26 +83,32 @@ export function IntelligentReportGrid() {
{active.example.meta}
- {active.example.sections.map((sec) => (
-
-
- {sec.heading}
-
- {"body" in sec && sec.body ? (
- {sec.body}
- ) : null}
- {"bullets" in sec && sec.bullets ? (
-
- {sec.bullets.map((item) => (
- - {item}
- ))}
-
- ) : null}
-
- ))}
+ {"comingSoon" in active.example && active.example.comingSoon ? (
+
+ 敬请期待
+
+ ) : (
+ active.example.sections.map((sec) => (
+
+
+ {sec.heading}
+
+ {"body" in sec && sec.body ? (
+ {sec.body}
+ ) : null}
+ {"bullets" in sec && sec.bullets ? (
+
+ {sec.bullets.map((item) => (
+ - {item}
+ ))}
+
+ ) : null}
+
+ ))
+ )}
) : (
- 入 {model.priceIn} / 出 {model.priceOut}
+ 入(未命中) {model.priceIn}
+ {model.priceCacheIn ? ` / 入(缓存命中) ${model.priceCacheIn}` : ""}
+ {model.priceCacheCreation ? ` / 入(缓存创建) ${model.priceCacheCreation}` : ""} / 出{" "}
+ {model.priceOut}
)}
diff --git a/src/components/news-list-card.tsx b/src/components/news-list-card.tsx
index e4437c0..1fb85ce 100644
--- a/src/components/news-list-card.tsx
+++ b/src/components/news-list-card.tsx
@@ -33,6 +33,11 @@ export function NewsListCard({
const summaryClamp =
layout === "primary" ? "news-list-card__summary news-list-card__summary--clamp" : "";
+ const hasCover = Boolean(article.image);
+ const articleClassWithMedia = hasCover
+ ? articleClass
+ : `${articleClass} news-list-card--no-cover`;
+
const mediaLinkClass =
layout === "default"
? "news-list-card__media-link relative block aspect-video w-full overflow-hidden bg-hairline no-underline hover:no-underline"
@@ -41,14 +46,16 @@ export function NewsListCard({
: "news-list-card__media-link relative block w-full shrink-0 overflow-hidden no-underline hover:no-underline";
return (
-
-
-
-
+
+ {hasCover && article.image ? (
+
+
+
+ ) : null}
{article.tag}
diff --git a/src/components/section-contact.tsx b/src/components/section-contact.tsx
index 685a858..1261bcb 100644
--- a/src/components/section-contact.tsx
+++ b/src/components/section-contact.tsx
@@ -58,36 +58,41 @@ export function SectionContact() {
- {/* */}
+
diff --git a/src/components/site-footer.tsx b/src/components/site-footer.tsx
index b82edc4..f4b79f5 100644
--- a/src/components/site-footer.tsx
+++ b/src/components/site-footer.tsx
@@ -1,3 +1,4 @@
+import Image from "next/image";
import Link from "next/link";
import { site } from "@/content/site";
import { resolveSiteHref } from "@/lib/nav-href";
@@ -13,12 +14,13 @@ function isExternalHref(href: string) {
export function SiteFooter() {
const f = site.footer;
+ const businessQr = site.contact.business;
return (