dspy.Module
dspy.Module(callbacks=None)
基础类: BaseModule
源代码位于 dspy/primitives/program.py
函数
__call__(*args, **kwargs)
源代码位于 dspy/primitives/program.py
acall(*args, **kwargs)
async
源代码位于 dspy/primitives/program.py
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 深度复制的调整,只深度复制 self.parameters()
,而其他属性则进行浅复制。
源代码位于 dspy/primitives/module.py
dump_state()
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
|