DSPy-ReAct-Machina
Alternative ReAct implementation for DSPy with full conversation history in a unified context.
Installation
pip install dspy-react-machina
Quick Start
import dspy
from dspy_react_machina import ReActMachina
# Configure your LM
lm = dspy.LM(model="openai/gpt-4o-mini")
dspy.configure(lm=lm)
# Define tools
def get_weather(city: str) -> str:
"""Get current weather for a city"""
return f"Weather in {city}: 72°F, sunny"
# Create agent
agent = ReActMachina("history: dspy.History, question -> answer", tools=[get_weather])
# Chat with persistent history
history = dspy.History(messages=[])
while True:
user_input = input("You: ").strip()
if user_input.lower() in ["quit", "exit"]:
break
response = agent(question=user_input, history=history)
print(f"Agent: {response.answer}\n")
# Update history for next turn
history = response.history
Documentation
- Examples - Working examples including async and instrumentation
- Testing Conventions - Testing guidelines
Development
Setup
uv sync
uv run pre-commit install
Code Quality
uv run quality-check # Run all checks: ruff + pyright
Testing
uv run tests # Run tests
uv run tests-coverage # Run tests with coverage
uv run tests-coverage --web # Run tests with coverage and open HTML report
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
dspy_react_machina-0.1.2.tar.gz
(21.4 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file dspy_react_machina-0.1.2.tar.gz.
File metadata
- Download URL: dspy_react_machina-0.1.2.tar.gz
- Upload date:
- Size: 21.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.8.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7cf13741e12d87d3de4e144af4bcc1ee9ed68734912fffdd2410245c2a8c8a2f
|
|
| MD5 |
3f89102e153878a136e68bb6e56fe144
|
|
| BLAKE2b-256 |
e7f4b5723c8b7aa3dfe2daa9b0f6fd3ef13057a62e5657971daa04362421e5e4
|
File details
Details for the file dspy_react_machina-0.1.2-py3-none-any.whl.
File metadata
- Download URL: dspy_react_machina-0.1.2-py3-none-any.whl
- Upload date:
- Size: 26.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.8.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6cdb6eda1187d1ba01b507d3b6612500940af7ead3a0f0c066a6b742e3141631
|
|
| MD5 |
ac721c353ce942fc00c3ca3e8e025c78
|
|
| BLAKE2b-256 |
62f81cbd4bebf4e21d8b8ea883364df39680c8856d1732432121d42c24926701
|