This is an automated email from the ASF dual-hosted git repository.

HTHou pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/iotdb-docs.git


The following commit(s) were added to refs/heads/main by this push:
     new 33f21d8e fix timecho table ainode upgrade register chapter style 
(#1108)
33f21d8e is described below

commit 33f21d8e50ee7c12dcf5348b508dc2c39f1fdc79
Author: leto-b <[email protected]>
AuthorDate: Wed May 6 11:57:41 2026 +0800

    fix timecho table ainode upgrade register chapter style (#1108)
---
 .../Table/AI-capability/AINode_Upgrade_timecho.md  | 144 ++++++++++-----------
 .../AI-capability/AINode_Upgrade_timecho.md        | 144 ++++++++++-----------
 2 files changed, 144 insertions(+), 144 deletions(-)

diff --git 
a/src/zh/UserGuide/Master/Table/AI-capability/AINode_Upgrade_timecho.md 
b/src/zh/UserGuide/Master/Table/AI-capability/AINode_Upgrade_timecho.md
index 541357b1..3f8171eb 100644
--- a/src/zh/UserGuide/Master/Table/AI-capability/AINode_Upgrade_timecho.md
+++ b/src/zh/UserGuide/Master/Table/AI-capability/AINode_Upgrade_timecho.md
@@ -491,88 +491,88 @@ IoTDB> show models
 
 1. AINode 目前使用 v4.56.2 版本的 transformers,构建模型时需**避免继承低版本(<4.50)接口**;
 2. 模型需继承一类 AINode 的推理任务流水线(当前支持预测流水线):
-    1. 
iotdb-core/ainode/iotdb/ainode/core/inference/pipeline/basic\_pipeline.py
-
-   ```Python
-   class BasicPipeline(ABC):
-       def __init__(self, model_id, **model_kwargs):
-           self.model_info = model_info
-           self.device = model_kwargs.get("device", "cpu")
-           self.model = load_model(model_info, device_map=self.device, 
**model_kwargs)
+   * iotdb-core/ainode/iotdb/ainode/core/inference/pipeline/basic\_pipeline.py
+
+      ```Python
+      class BasicPipeline(ABC):
+          def __init__(self, model_id, **model_kwargs):
+              self.model_info = model_info
+              self.device = model_kwargs.get("device", "cpu")
+              self.model = load_model(model_info, device_map=self.device, 
**model_kwargs)
    
-       @abstractmethod
-       def preprocess(self, inputs, **infer_kwargs):
-           """
-           在推理任务开始前对输入数据进行前处理,包括形状验证和数值转换。
-           """
-           pass
+          @abstractmethod
+          def preprocess(self, inputs, **infer_kwargs):
+              """
+              在推理任务开始前对输入数据进行前处理,包括形状验证和数值转换。
+              """
+              pass
    
-       @abstractmethod
-       def postprocess(self, output, **infer_kwargs):
-           """
-           在推理任务结束后对输出结果进行后处理。
-           """
-           pass
+          @abstractmethod
+          def postprocess(self, output, **infer_kwargs):
+              """
+              在推理任务结束后对输出结果进行后处理。
+              """
+              pass
    
    
-   class ForecastPipeline(BasicPipeline):
-       def __init__(self, model_info, **model_kwargs):
-           super().__init__(model_info, model_kwargs=model_kwargs)
+      class ForecastPipeline(BasicPipeline):
+          def __init__(self, model_info, **model_kwargs):
+              super().__init__(model_info, model_kwargs=model_kwargs)
    
-       def preprocess(self, inputs: list[dict[str, dict[str, torch.Tensor] | 
torch.Tensor]], **infer_kwargs):
-           """
-           在将输入数据传递给模型进行推理之前进行预处理,验证输入数据的形状和类型。
+          def preprocess(self, inputs: list[dict[str, dict[str, torch.Tensor] 
| torch.Tensor]], **infer_kwargs):
+              """
+              在将输入数据传递给模型进行推理之前进行预处理,验证输入数据的形状和类型。
    
-           Args:
-               inputs (list[dict]):
-                   输入数据,字典列表,每个字典包含:
-                       - 'targets': 形状为 (input_length,) 或 (target_count, 
input_length) 的张量。
-                       - 'past_covariates': 可选,张量字典,每个张量形状为 (input_length,)。
-                       - 'future_covariates': 可选,张量字典,每个张量形状为 (input_length,)。
+              Args:
+                  inputs (list[dict]):
+                      输入数据,字典列表,每个字典包含:
+                          - 'targets': 形状为 (input_length,) 或 (target_count, 
input_length) 的张量。
+                          - 'past_covariates': 可选,张量字典,每个张量形状为 (input_length,)。
+                          - 'future_covariates': 可选,张量字典,每个张量形状为 
(input_length,)。
    
-               infer_kwargs (dict, optional): 推理的额外关键字参数,如:
-                   - `output_length`(int): 如果提供'future_covariates',用于验证其有效性。
+                  infer_kwargs (dict, optional): 推理的额外关键字参数,如:
+                      - `output_length`(int): 如果提供'future_covariates',用于验证其有效性。
    
-           Raises:
-               ValueError: 如果输入格式不正确(例如,缺少键、张量形状无效)。
+              Raises:
+                  ValueError: 如果输入格式不正确(例如,缺少键、张量形状无效)。
    
-           Returns:
-               经过预处理和验证的输入数据,可直接用于模型推理。
-           """
-           pass
+              Returns:
+                  经过预处理和验证的输入数据,可直接用于模型推理。
+              """
+              pass
    
-       def forecast(self, inputs, **infer_kwargs):
-           """
-           对给定输入执行预测。
+          def forecast(self, inputs, **infer_kwargs):
+              """
+              对给定输入执行预测。
    
-           Parameters:
-               inputs: 用于进行预测的输入数据。类型和结构取决于模型的具体实现。
-               **infer_kwargs: 额外的推理参数,例如:
-                   - `output_length`(int): 模型应该生成的时间点数量。
+              Parameters:
+                  inputs: 用于进行预测的输入数据。类型和结构取决于模型的具体实现。
+                  **infer_kwargs: 额外的推理参数,例如:
+                      - `output_length`(int): 模型应该生成的时间点数量。
    
-           Returns:
-               预测输出,具体形式取决于模型的具体实现。
-           """
-           pass
+              Returns:
+                  预测输出,具体形式取决于模型的具体实现。
+              """
+              pass
    
-       def postprocess(self, outputs: list[torch.Tensor], **infer_kwargs) -> 
list[torch.Tensor]:
-           """
-           在推理后对模型输出进行后处理,验证输出数据的形状并确保其符合预期维度。
+          def postprocess(self, outputs: list[torch.Tensor], **infer_kwargs) 
-> list[torch.Tensor]:
+              """
+              在推理后对模型输出进行后处理,验证输出数据的形状并确保其符合预期维度。
    
-           Args:
-               outputs:
-                   模型输出,2D张量列表,每个张量形状为 `[target_count, output_length]`。
+              Args:
+                  outputs:
+                      模型输出,2D张量列表,每个张量形状为 `[target_count, output_length]`。
    
-           Raises:
-               InferenceModelInternalException: 如果输出张量形状无效(例如,维数错误)。
-               ValueError: 如果输出格式不正确。
+              Raises:
+                  InferenceModelInternalException: 如果输出张量形状无效(例如,维数错误)。
+                  ValueError: 如果输出格式不正确。
    
-           Returns:
-               list[torch.Tensor]:
-                   后处理后的输出,将是一个2D张量列表。
-           """
-           pass
-   ```
+              Returns:
+                  list[torch.Tensor]:
+                      后处理后的输出,将是一个2D张量列表。
+              """
+              pass
+      ```
 3. 修改模型配置文件 config.json,确保包含以下字段:
    ```JSON
    {
@@ -585,13 +585,13 @@ IoTDB> show models
    }
    ```
 
-    1. 必须通过 auto\_map 指定模型的 Config 类和模型类;
-    2. 必须集成并指定推理流水线类;
-    3. 对于 AINode 
管理的内置(builtin)和自定义(user\_defined)模型,模型类别(model\_type)也作为不可重复的唯一标识。即,要注册的模型类别不得与任何已存在的模型类型重复,通过微调创建的模型将继承原模型的模型类别。
+   * 必须通过 auto\_map 指定模型的 Config 类和模型类;
+   * 必须集成并指定推理流水线类;
+   * 对于 AINode 
管理的内置(builtin)和自定义(user\_defined)模型,模型类别(model\_type)也作为不可重复的唯一标识。即,要注册的模型类别不得与任何已存在的模型类型重复,通过微调创建的模型将继承原模型的模型类别。
 4. 确保要注册的模型目录包含以下文件,且模型配置文件名称和权重文件名称不支持自定义:
-    1. 模型配置文件:config.json;
-    2. 模型权重文件:model.safetensors;
-    3. 模型代码:其它 .py 文件。
+   * 模型配置文件:config.json;
+   * 模型权重文件:model.safetensors;
+   * 模型代码:其它 .py 文件。
 
 **注册自定义模型的 SQL 语法如下所示:**
 
diff --git 
a/src/zh/UserGuide/latest-Table/AI-capability/AINode_Upgrade_timecho.md 
b/src/zh/UserGuide/latest-Table/AI-capability/AINode_Upgrade_timecho.md
index 541357b1..3f8171eb 100644
--- a/src/zh/UserGuide/latest-Table/AI-capability/AINode_Upgrade_timecho.md
+++ b/src/zh/UserGuide/latest-Table/AI-capability/AINode_Upgrade_timecho.md
@@ -491,88 +491,88 @@ IoTDB> show models
 
 1. AINode 目前使用 v4.56.2 版本的 transformers,构建模型时需**避免继承低版本(<4.50)接口**;
 2. 模型需继承一类 AINode 的推理任务流水线(当前支持预测流水线):
-    1. 
iotdb-core/ainode/iotdb/ainode/core/inference/pipeline/basic\_pipeline.py
-
-   ```Python
-   class BasicPipeline(ABC):
-       def __init__(self, model_id, **model_kwargs):
-           self.model_info = model_info
-           self.device = model_kwargs.get("device", "cpu")
-           self.model = load_model(model_info, device_map=self.device, 
**model_kwargs)
+   * iotdb-core/ainode/iotdb/ainode/core/inference/pipeline/basic\_pipeline.py
+
+      ```Python
+      class BasicPipeline(ABC):
+          def __init__(self, model_id, **model_kwargs):
+              self.model_info = model_info
+              self.device = model_kwargs.get("device", "cpu")
+              self.model = load_model(model_info, device_map=self.device, 
**model_kwargs)
    
-       @abstractmethod
-       def preprocess(self, inputs, **infer_kwargs):
-           """
-           在推理任务开始前对输入数据进行前处理,包括形状验证和数值转换。
-           """
-           pass
+          @abstractmethod
+          def preprocess(self, inputs, **infer_kwargs):
+              """
+              在推理任务开始前对输入数据进行前处理,包括形状验证和数值转换。
+              """
+              pass
    
-       @abstractmethod
-       def postprocess(self, output, **infer_kwargs):
-           """
-           在推理任务结束后对输出结果进行后处理。
-           """
-           pass
+          @abstractmethod
+          def postprocess(self, output, **infer_kwargs):
+              """
+              在推理任务结束后对输出结果进行后处理。
+              """
+              pass
    
    
-   class ForecastPipeline(BasicPipeline):
-       def __init__(self, model_info, **model_kwargs):
-           super().__init__(model_info, model_kwargs=model_kwargs)
+      class ForecastPipeline(BasicPipeline):
+          def __init__(self, model_info, **model_kwargs):
+              super().__init__(model_info, model_kwargs=model_kwargs)
    
-       def preprocess(self, inputs: list[dict[str, dict[str, torch.Tensor] | 
torch.Tensor]], **infer_kwargs):
-           """
-           在将输入数据传递给模型进行推理之前进行预处理,验证输入数据的形状和类型。
+          def preprocess(self, inputs: list[dict[str, dict[str, torch.Tensor] 
| torch.Tensor]], **infer_kwargs):
+              """
+              在将输入数据传递给模型进行推理之前进行预处理,验证输入数据的形状和类型。
    
-           Args:
-               inputs (list[dict]):
-                   输入数据,字典列表,每个字典包含:
-                       - 'targets': 形状为 (input_length,) 或 (target_count, 
input_length) 的张量。
-                       - 'past_covariates': 可选,张量字典,每个张量形状为 (input_length,)。
-                       - 'future_covariates': 可选,张量字典,每个张量形状为 (input_length,)。
+              Args:
+                  inputs (list[dict]):
+                      输入数据,字典列表,每个字典包含:
+                          - 'targets': 形状为 (input_length,) 或 (target_count, 
input_length) 的张量。
+                          - 'past_covariates': 可选,张量字典,每个张量形状为 (input_length,)。
+                          - 'future_covariates': 可选,张量字典,每个张量形状为 
(input_length,)。
    
-               infer_kwargs (dict, optional): 推理的额外关键字参数,如:
-                   - `output_length`(int): 如果提供'future_covariates',用于验证其有效性。
+                  infer_kwargs (dict, optional): 推理的额外关键字参数,如:
+                      - `output_length`(int): 如果提供'future_covariates',用于验证其有效性。
    
-           Raises:
-               ValueError: 如果输入格式不正确(例如,缺少键、张量形状无效)。
+              Raises:
+                  ValueError: 如果输入格式不正确(例如,缺少键、张量形状无效)。
    
-           Returns:
-               经过预处理和验证的输入数据,可直接用于模型推理。
-           """
-           pass
+              Returns:
+                  经过预处理和验证的输入数据,可直接用于模型推理。
+              """
+              pass
    
-       def forecast(self, inputs, **infer_kwargs):
-           """
-           对给定输入执行预测。
+          def forecast(self, inputs, **infer_kwargs):
+              """
+              对给定输入执行预测。
    
-           Parameters:
-               inputs: 用于进行预测的输入数据。类型和结构取决于模型的具体实现。
-               **infer_kwargs: 额外的推理参数,例如:
-                   - `output_length`(int): 模型应该生成的时间点数量。
+              Parameters:
+                  inputs: 用于进行预测的输入数据。类型和结构取决于模型的具体实现。
+                  **infer_kwargs: 额外的推理参数,例如:
+                      - `output_length`(int): 模型应该生成的时间点数量。
    
-           Returns:
-               预测输出,具体形式取决于模型的具体实现。
-           """
-           pass
+              Returns:
+                  预测输出,具体形式取决于模型的具体实现。
+              """
+              pass
    
-       def postprocess(self, outputs: list[torch.Tensor], **infer_kwargs) -> 
list[torch.Tensor]:
-           """
-           在推理后对模型输出进行后处理,验证输出数据的形状并确保其符合预期维度。
+          def postprocess(self, outputs: list[torch.Tensor], **infer_kwargs) 
-> list[torch.Tensor]:
+              """
+              在推理后对模型输出进行后处理,验证输出数据的形状并确保其符合预期维度。
    
-           Args:
-               outputs:
-                   模型输出,2D张量列表,每个张量形状为 `[target_count, output_length]`。
+              Args:
+                  outputs:
+                      模型输出,2D张量列表,每个张量形状为 `[target_count, output_length]`。
    
-           Raises:
-               InferenceModelInternalException: 如果输出张量形状无效(例如,维数错误)。
-               ValueError: 如果输出格式不正确。
+              Raises:
+                  InferenceModelInternalException: 如果输出张量形状无效(例如,维数错误)。
+                  ValueError: 如果输出格式不正确。
    
-           Returns:
-               list[torch.Tensor]:
-                   后处理后的输出,将是一个2D张量列表。
-           """
-           pass
-   ```
+              Returns:
+                  list[torch.Tensor]:
+                      后处理后的输出,将是一个2D张量列表。
+              """
+              pass
+      ```
 3. 修改模型配置文件 config.json,确保包含以下字段:
    ```JSON
    {
@@ -585,13 +585,13 @@ IoTDB> show models
    }
    ```
 
-    1. 必须通过 auto\_map 指定模型的 Config 类和模型类;
-    2. 必须集成并指定推理流水线类;
-    3. 对于 AINode 
管理的内置(builtin)和自定义(user\_defined)模型,模型类别(model\_type)也作为不可重复的唯一标识。即,要注册的模型类别不得与任何已存在的模型类型重复,通过微调创建的模型将继承原模型的模型类别。
+   * 必须通过 auto\_map 指定模型的 Config 类和模型类;
+   * 必须集成并指定推理流水线类;
+   * 对于 AINode 
管理的内置(builtin)和自定义(user\_defined)模型,模型类别(model\_type)也作为不可重复的唯一标识。即,要注册的模型类别不得与任何已存在的模型类型重复,通过微调创建的模型将继承原模型的模型类别。
 4. 确保要注册的模型目录包含以下文件,且模型配置文件名称和权重文件名称不支持自定义:
-    1. 模型配置文件:config.json;
-    2. 模型权重文件:model.safetensors;
-    3. 模型代码:其它 .py 文件。
+   * 模型配置文件:config.json;
+   * 模型权重文件:model.safetensors;
+   * 模型代码:其它 .py 文件。
 
 **注册自定义模型的 SQL 语法如下所示:**
 

Reply via email to