dspy.ChainOfThought
dspy.ChainOfThought(signature: Type[Signature], rationale_field: Optional[Union[OutputField, FieldInfo]] = None, rationale_field_type: Type = str, **config)
基类: Module
一个通过逐步推理来预测任务输出的模块。
参数
名称 | 类型 | 描述 | 默认值 |
---|---|---|---|
signature
|
Type[Signature]
|
模块的签名。 |
必需 |
rationale_field
|
Optional[Union[OutputField, FieldInfo]]
|
包含推理内容的字段。 |
None
|
rationale_field_type
|
类型
|
推理字段的类型。 |
str
|
**config
|
模块的配置。 |
{}
|
源代码位于 dspy/predict/chain_of_thought.py
函数
__call__(*args, **kwargs)
源代码位于 dspy/primitives/program.py
acall(*args, **kwargs)
异步
源代码位于 dspy/primitives/program.py
aforward(**kwargs)
异步
batch(examples, num_threads: Optional[int] = None, max_errors: int = 10, return_failed_examples: bool = False, provide_traceback: Optional[bool] = None, disable_progress_bar: bool = False)
使用 Parallel 模块并行处理 dspy.Example 实例列表。
:param examples: 要处理的 dspy.Example 实例列表。 :param num_threads: 用于并行处理的线程数。 :param max_errors: 在停止执行前允许的最大错误数。 :param return_failed_examples: 是否返回失败的实例和异常。 :param provide_traceback: 是否在错误日志中包含回溯信息。 :return: 结果列表,以及可选的失败实例和异常。
源代码位于 dspy/primitives/program.py
deepcopy()
深度复制模块。
这是对默认 Python deepcopy 的一个调整,它只深度复制 self.parameters()
,对于其他属性,我们只进行浅复制。
源代码位于 dspy/primitives/module.py
dump_state()
forward(**kwargs)
get_lm()
load(path)
加载已保存的模块。如果想加载整个程序而不仅仅是现有程序的状态,也可以查看 dspy.load。
参数
名称 | 类型 | 描述 | 默认值 |
---|---|---|---|
path
|
str
|
已保存状态文件的路径,应为 .json 或 .pkl 文件 |
必需 |
源代码位于 dspy/primitives/module.py
load_state(state)
map_named_predictors(func)
named_parameters()
与 PyTorch 不同,它也处理(非递归的)参数列表。
源代码位于 dspy/primitives/module.py
named_predictors()
named_sub_modules(type_=None, skip_compiled=False) -> Generator[tuple[str, BaseModule], None, None]
查找模块中的所有子模块及其名称。
例如 self.children[4]['key'].sub_module 是一个子模块。那么名称将是 'children[4][key].sub_module'。但如果子模块可以通过不同的路径访问,则只返回其中一条路径。
源代码位于 dspy/primitives/module.py
parameters()
predictors()
reset_copy()
save(path, save_program=False)
保存模块。
将模块保存到目录或文件。有两种模式: - save_program=False
: 只将模块的状态保存到 json 或 pickle 文件,具体取决于文件扩展名。 - save_program=True
: 通过 cloudpickle 将整个模块保存到目录,其中包含模型的状态和架构。
我们还保存了依赖版本,以便加载的模型可以检查是否存在关键依赖项或 DSPy 版本的版本不匹配。
参数
名称 | 类型 | 描述 | 默认值 |
---|---|---|---|
path
|
str
|
已保存状态文件的路径,当 |
必需 |
save_program
|
bool
|
如果为 True,则通过 cloudpickle 将整个模块保存到目录,否则只保存状态。 |
False
|