Skip to main content

A Python library for debugging python files and notebooks using GROQ

Project description

PyDebugger

PyDebuggerTools is a Python library designed to enhance error debugging in both .ipynb and .py scripts. It provides a detailed explanation of errors and suggests possible corrections using the power of LangChain and advanced traceback analysis.

Features

  • Environment-Aware Debugging: Automatically detects whether the code is running in a .py file or a Jupyter Notebook and adapts its behavior accordingly.
  • Error Analysis and Correction: Extracts error details (like line number, file name, and traceback) and generates concise explanations with possible solutions.
  • Code Context Display: For .py files, displays the code context where the error occurred, highlighting the relevant lines.
  • Seamless Integration with LangChain: Uses LangChain's AI capabilities to provide intelligent error solutions.

Installation

Install the package using pip:

pip install PyDebugTools

Usage

Basic Example

from PyDebugTool.debug import PyDebugger

debugger = PyDebugger(langchain_model="llama3-8b-8192", api_key="your_groq_api_key")
debugger.enable()

How It Works

  1. Initialization: Create an instance of PyDebugTool by specifying your LangChain model and API key.
  2. Enable Debugger: Call enable() to activate error handling.
  3. Error Handling: When an error occurs, PyDebugger will intercept it and display detailed insights along with possible fixes.

Detailed Behavior

  • In .ipynb files: Overrides the default IPython traceback display to show enhanced error details and solutions.
  • In .py Scripts: Replaces the default Python exception hook to provide enriched error handling in the console.

Example Code

When an error occurs, PyDebugger might display something like this:

from PyDebugTool.debug import PyDebugger

debugger = PyDebugger(langchain_model="llama3-8b-8192", api_key="your_groq_api_key")
debugger.enable()

import tensorflow as tf
Traceback (most recent call last):
  File "C:\Users\Sambit Mallick\Desktop\mlops\LLM_TOOL_SOFTWARE\test.py", line 6, in <module>
    import tensorflow as tf
ModuleNotFoundError: No module named 'tensorflow'

┌─────────────────────────────── 🤖 PyDebugger ───────────────────────────────┐
│ The error is caused by the Python interpreter not being able to find the    │
│ TensorFlow module. This is likely because TensorFlow is not installed in    │
│ the Python environment being used to run the script.                        │
│                                                                             │
│ To correct this error, you can install TensorFlow using pip:                │
│                                                                             │
│ `pip install tensorflow`                                                    │
│                                                                             │
│ Alternatively, you can install it using conda if you are using Anaconda:    │
│                                                                             │
│ `conda install tensorflow`                                                  │
└─────────────────────────────────────────────────────────────────────────────┘

Dependencies

  • langchain_groq
  • IPython
  • rich

License

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

Contributing

Contributions are welcome! Please submit issues and pull requests to improve the library.

Author

Sambit Mallick - Feel free to reach out for collaboration or queries.

Acknowledgments

  • Powered by LangChain and Groq LLM.

Project details


Download files

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

Source Distribution

PyDebugTools-0.1.2.tar.gz (4.9 kB view details)

Uploaded Source

Built Distribution

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

PyDebugTools-0.1.2-py3-none-any.whl (4.9 kB view details)

Uploaded Python 3

File details

Details for the file PyDebugTools-0.1.2.tar.gz.

File metadata

  • Download URL: PyDebugTools-0.1.2.tar.gz
  • Upload date:
  • Size: 4.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.11.9

File hashes

Hashes for PyDebugTools-0.1.2.tar.gz
Algorithm Hash digest
SHA256 53b980d0cc42fef4c1c3114e77088b2a160034ad2fcb73209e6957886edd9736
MD5 b9b5ad9b5ec32b8187d20ce913dc3416
BLAKE2b-256 ef94084bb99997ea639ac39d96fbeffb8311ae7990d4e3384d7feec3ba2af2ce

See more details on using hashes here.

File details

Details for the file PyDebugTools-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: PyDebugTools-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 4.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.11.9

File hashes

Hashes for PyDebugTools-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 bdd41ab773718944c7f1a1149bc21de908972f93c7742ee65e18d56fdf2112fc
MD5 53ed71eaf573d4c426e73d23ea6eb17f
BLAKE2b-256 1e29fd05f040e46c02bdc516739b0557175b146b3c2eec276282127698f7e972

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 Pingdom Monitoring Sentry Error logging StatusPage Status page