Skip to content

0xMatthieu/Architecture_assistant

Repository files navigation

Architecture Assistant

This project is designed to help design and promote the best TTControl ECU architecture. It includes tools for reading datasheets, generating reports, and checking architecture requirements.

Features

  • Read Datasheets: Extracts content from PDF datasheets.
  • Generate Reports: Creates PDF or Excel reports based on architecture and price data.
  • Check Requirements: Validates that all necessary architecture requirements are met.

Project Structure

The project is organized into several key files and directories:

  • Main.py: The entry point of the application, responsible for initializing and running the agent.
  • ai_agent.py: Configures the AI model and manages the interaction with the agent.
  • Utils.py: Contains utility functions for reading datasheets, generating reports, and handling Excel files.
  • price_strategy_agent.py: Implements tools for generating price and architecture reports and managing the price strategy agent.
  • architecture_agent.py: Provides tools for checking architecture requirements and formatting architecture data.
  • Data/: Directory containing datasheets and price lists used by the application.
  • .env: Environment configuration file for setting up necessary environment variables.

Project Architecture

The Architecture Assistant project is structured to facilitate the design and promotion of TTControl ECU architectures. Here's an overview of the architecture:

  • Main.py: Serves as the entry point of the application, initializing and running the agent.
  • ai_agent.py: Manages the configuration of the AI model and handles interactions with the agent.
  • Utils.py: Provides utility functions for reading datasheets, generating reports, and handling Excel files.
  • price_strategy_agent.py: Contains tools for generating price and architecture reports and managing the price strategy agent.
  • architecture_agent.py: Offers tools for checking architecture requirements and formatting architecture data.
  • Data/: A directory that stores datasheets and price lists used by the application.
  • .env: A configuration file for setting up necessary environment variables.

The project leverages a modular design, with each component responsible for specific functionalities, ensuring scalability and ease of maintenance.

Setup

  1. Clone the Repository:

    git clone <repository-url>
    cd Architecture_assistant
  2. Install Dependencies: Ensure you have Python installed, then run:

    pip install -r requirements.txt
  3. Environment Variables: Create a .env file in the root directory and add any necessary environment variables.

Usage

  • Generate a Report: Use the generate_report tool to create a report in the desired format.

    from price_strategy_agent import generate_report
    report_path = generate_report(Architectures='[...]', format_file='pdf')
  • Check Architecture Requirements: Use the check_requirements tool to ensure all necessary fields are provided.

    from architecture_agent import check_requirements
    result = check_requirements(PWM_needed='...', CAN_needed='...', Safety='...')

Contributing

Contributions are welcome! Please fork the repository and submit a pull request.

License

This project is licensed under the MIT License.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages