semvec/pypi-packages huggingface dataset:
minigrad-python 0.1.1
A minimal deep learning framework with automatic differentiation
License: MIT
Requires Python: >=3.6

# minigrad

**minigrad** is a toy implementation of an autograd engine, inspired by Andrej Karpathy's [micrograd](https://github.com/karpathy/micrograd) project, with and API similar to that of **PyTorch**. It supports both CPU and GPU operations using `NumPy` and `CuPy`, respectively.

My goal with minigrad is to explore and learn the internals of deep learning frameworks — minigrad is not optimized for speed or efficiency. As of now it provides basic tensor operations, back propagation, neural network layers, optimizers, and loss functions.

## Features

- **Tensor Operations**: Supports basic tensor operations with automatic differentiation.
- **CPU and GPU Support**: Use `NumPy` for CPU operations and `CuPy` for GPU operations.
- **Neural Networks**: Includes simple layers like `Linear` and activations like `ReLU`
- **Optimizers**: Implements basic optimizers like `SGD`.
- **Loss Functions**: Provides loss functions like `MSELoss`.

## Requirements

If you plan to use CuPy with GPU support, make sure you have the following installed:

- **CUDA Toolkit**: Ensure that the appropriate CUDA Toolkit is installed on your machine. You can download it from [NVIDIA CUDA Website](https://developer.nvidia.com/cuda-downloads).

- `nvcc`: The CUDA compiler (`nvcc`) should be available in your environment, as it is used to detect the installed CUDA version. You can check if `nvcc` is installed by running:

```bash
nvcc --version
```

## Installation

To install minigrad:

```bash
pip install minigrad-python
```

## Usage

### Basic Usage

```python
import minigrad as mg

a = mg.Tensor([1, 2, 3], device='gpu')
b = mg.Tensor([2, 3, 4], device='gpu')
c = a + b
d = c.sum()
d.backward()
print(a.grad)
print(b.grad)
```

### Training a Neural Network

- A very simple example of training a neural network can be found in `examples/simple_nn.py`
- TODO: Add more examples.

## Run Tests

To run the unit tests and benchmarks for the project

```bash
pytest
```
SendEmailPy3 1.1.2
Easy email sending for Python 3
License: MIT
Keywords: send, email, python

# Email Sender Module
## Abstracted module for sending emails
### This module was made so that you don't have to worry about writing the code for sending emails yourself. This module can be used with multiple different email clients, and can be used to send multiple emails.

##### License must be followed while using this package.

## Documentation

### Parameters (required for all functions and methods)

Subject, content, receiver, username (sender's), password (sender's)
Additonal parameters: filepath

### Recommended import statement
```py
import sendemailpy3 as smpy
```

### Mail Commands
#### Gmail
```py
smpy.send_gmail(...)
```

#### Outlook
```py
smpy.send_outlook_email(...)
```

#### Yahoo Mail
```py
smpy.send_yahoo_email(...)
```

#### Proton Mail
```py
smpy.send_proton_email(...)
```

### Sending an email using procedural syntax
```py
import sendemailpy3 as smpy

smpy.send_gmail(...)
```

### Sending an email using object-oriented syntax
```py
import sendemailpy3 as smpy

email_sender = smpy.EmailSender()
email.send_gmail(...)
```