InteractionContext¶
說明:本檔定義傳入 Scheduling 子模組的常用欄位集合,可作為模組間溝通的標準結構。
為 pydantic / dspy Signature 範例.
欄位清單¶
| 欄位 | 型別 | 必要性 | 說明 |
|---|---|---|---|
dialog_history | str | optional | 過去對話紀錄(可為空),供 LLM 作為上下文。 |
user_input | str | required | 使用者當前輸入或請求描述。 |
previous_signature_output | List[PreviousSignature] | optional | 先前模組輸出清單(每項包含 module, signature, content)。 |
pipeline | List[str] | optional | 完整 pipeline 名稱陣列(依執行順序)。 |
current_pipeline_index | int | optional | 目前 pipeline 的索引(從 0 開始)。 |
pydantic案例¶
from typing import List, Any, Optional
import dspy
class InteractionContext(dspy.Signature):
"""通用互動上下文封包(InteractionContext)。"""
dialog_history: Optional[str] = dspy.InputField(desc="過去的對話紀錄(可為空),供 LLM 作為上下文。")
user_input: str = dspy.InputField(desc="使用者當前輸入或請求描述。")
previous_signature_output: Optional[List[dict]] = dspy.InputField(desc="先前模組的 signature 清單,每項包含 module, signature, content。")
pipeline: Optional[List[str]] = dspy.InputField(desc="完整的 pipeline 名稱陣列(依執行順序)。")
current_pipeline_index: Optional[int] = dspy.InputField(desc="目前 pipeline 的索引(從 0 開始)。")
time_interval_data: Optional[Any] = dspy.InputField(desc="可用時間窗或時段資訊;在某些子模組(例如 DraftAction)中可能為必填。")