dspy.dspy_signature_defaults

dspy.dspy_signature_defaults(signature)

Generate default empty values for all output fields in a DSPy signature.

This function extracts all output fields from a DSPy signature and creates a dictionary with appropriate default empty values for each field based on its type annotation.

Parameters

Name Type Description Default
signature dspy.Signature A DSPy signature object containing field definitions with type annotations required

Returns

Name Type Description
Dict[str, Any] A dictionary mapping field names to their default empty values. Only includes fields marked as output fields.

Examples

>>> import dspy
>>> from localllm import dspy_signature_defaults
>>> class MySignature(dspy.Signature):
...     question: str = dspy.InputField()
...     answer: str = dspy.OutputField()
...     names: list[str] = dspy.OutputField()
...     count: int = dspy.OutputField()
>>> defaults = dspy_signature_defaults(MySignature)
>>> defaults
{'answer': None, 'names': [], 'count': None}

Notes:

  • Only processes fields with __dspy_field_type == “output”
  • Input fields are excluded from the result
  • Uses get_default_for_type() to determine appropriate defaults