Skip to main content

Target Synthesis Agent

An intelligent AI-powered agent for generating and synthesizing target variables for machine learning tasks. This tool analyzes data characteristics and business context to create optimal target variables for various ML applications.

🚀 Features

  • AI-Powered Analysis: Leverages advanced LLM models to analyze data and business context
  • Multiple Data Sources: Works with both SQL databases and pandas DataFrames
  • Customizable Workflows: Supports various ML approaches and synthesis strategies
  • Comprehensive Testing: Includes a complete test suite for reliability
  • Extensible Architecture: Easy to extend with custom components and integrations

📦 Installation

Prerequisites

  • Python 3.10+
  • Git
  • uv package manager (recommended)

Setup

  1. Clone the repository

    git clone https://github.com/stepfnAI/target_synthesis_agent.git
    cd target_synthesis_agent/
    git checkout dev
    
  2. Set up the virtual environment and install dependencies

    uv venv --python=3.10 venv
    source venv/bin/activate
    uv pip install -e ".[dev]"
    
  3. Clone and install the blueprint dependency

    cd ..
    git clone https://github.com/stepfnAI/sfn_blueprint.git
    cd sfn_blueprint
    git switch dev
    uv pip install -e .
    cd ../target_synthesis_agent
    
  4. Set up environment variables

    # Optional: Configure LLM provider (default: openai)
    export LLM_PROVIDER="your_llm_provider"
    
    # Optional: Configure LLM model (default: gpt-4)
    export LLM_MODEL="your_llm_model"
    
    # Required: Your LLM API key
    export LLM_API_KEY="your_llm_api_key"
    

🛠️ Usage

Basic SQL Usage

python examples/sql_basic_usage.py

🧪 Testing

Run the complete test suite:

pytest tests/ -s

Or run individual test files:

pytest tests/conftest.py -s
pytest tests/test_agent.py -s
pytest tests/test_utils.py -s

🏗️ Architecture

The Target Synthesis Agent is built with a modular architecture:

  • Core Components:

    • agent.py: Main SQL-based implementation
    • models.py: Data models and schemas
    • utils.py: Utility functions and helpers
    • constants.py: Configuration and prompts
  • Dependencies:

    • sfn-blueprint: Core framework and utilities
    • pandas: Data manipulation
    • sqlalchemy: Database interactions
    • scikit-learn: ML utilities

🤝 Contributing

We welcome contributions! Please follow these steps:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

📧 Contact

For questions or support, please contact support@stepfunction.ai

🙏 Acknowledgments

  • Built with ❤️ by StepFunction AI
  • Uses sfn-blueprint for core functionality
  • Inspired by modern MLOps best practices

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

target_synthesis_agent-1.0.24.tar.gz (40.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

target_synthesis_agent-1.0.24-py3-none-any.whl (33.2 kB view details)

Uploaded Python 3

File details

Details for the file target_synthesis_agent-1.0.24.tar.gz.

File metadata

  • Download URL: target_synthesis_agent-1.0.24.tar.gz
  • Upload date:
  • Size: 40.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for target_synthesis_agent-1.0.24.tar.gz
Algorithm Hash digest
SHA256 3a5130be74f8e324063e0fe6093b61f4f6b4fdf92a00c9a54926cf23f7c8f138
MD5 e4dee64b61a5cfe7ebad3d372fed0f2c
BLAKE2b-256 bb45b5388a0a32d557eb924175f154c8e53b77e1ddf1d5054f850399e8d35ecc

See more details on using hashes here.

File details

Details for the file target_synthesis_agent-1.0.24-py3-none-any.whl.

File metadata

  • Download URL: target_synthesis_agent-1.0.24-py3-none-any.whl
  • Upload date:
  • Size: 33.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for target_synthesis_agent-1.0.24-py3-none-any.whl
Algorithm Hash digest
SHA256 1d95f3d2354d489a6d56ca972604a2a42db2fb378923b7473f3e9f212598d0cf
MD5 1874cc0b39d1dec9bbdd4cbd8c67a880
BLAKE2b-256 49a3eee262e176e14470d607fd2eba053a051d6a59c4f6115952956510b1db40

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page