Basic Usage
Simple Problem Solving
import dspy
from braid import BraidReasoning
# Configure DSPy
lm = dspy.OpenAI(model="gpt-4", api_key="your-api-key")
dspy.configure(lm=lm)
# Create BRAID module
braid = BraidReasoning()
# Solve a problem
result = braid(problem="If a train travels 120 km in 2 hours, what is its speed?")
print(f"Answer: {result.answer}")
print(f"\nGRD:\n{result.grd}")
print(f"\nReasoning Steps:")
for step in result.reasoning_steps:
print(f" {step['step_number']}. {step['label']}: {step['result']}")
Using Pre-generated GRD
from braid import BraidReasoning
braid = BraidReasoning()
pre_generated_grd = """```mermaid
flowchart TD
Start[Problem Analysis] --> Identify[Identify values]
Identify --> Calculate[Calculate]
Calculate --> Answer[Final Answer]
```"""
result = braid(problem="Your problem", grd=pre_generated_grd)
print(result.answer)
Custom Configuration
from braid import BraidReasoning
braid = BraidReasoning(
use_generator=True,
max_execution_steps=15,
validate_grd=True
)