Multi code-snippet generator for notebooks
Project description
📘 Machine Learning Snippet Generator (lerl)
A lightweight Python library that generates ready-to-run Machine Learning code snippets for students, beginners, and researchers working with AI algorithms.
This library does not run AI algorithms internally — instead, it returns formatted, complete Python scripts for:
- Monte Carlo Prediction
- Temporal Difference (TD(0))
- Policy Iteration
- Value Iteration (coming soon)
-
- more upcoming AI algorithms
You can copy the output, paste it into a Jupyter Notebook, Colab, VS Code, or PyCharm, and run it directly.
🚀 Features
✔ Generates complete RL scripts as strings
✔ Code always follows correct RL implementations
✔ Uses format_snippet() to return clean, properly formatted code
✔ Ideal for learning, assignments, and quick experimentation
✔ Zero dependencies for running the library itself
✔ Works in: Jupyter Notebook, Google Colab, VS Code, Spyder, PyCharm
📦 Installation
Install the package using pip:
pip install lerl
---
Upgrade:
pip install --upgrade lerl
🧠 Available Code Snippet Functions
| Function Name | Algorithm | Description |
|---|---|---|
monte_carlo_code() |
Monte Carlo Prediction | Returns a full script for MC value estimation on FrozenLake |
td_code() |
Temporal Difference (TD-0) | Generates complete TD learning code with convergence plots |
complete_policy_iteration_code() |
Policy Iteration | Returns policy evaluation + improvement + convergence visualization |
complete_value_iteration_code() |
Value Iteration | (Coming soon — ready function placeholder) |
📝 Example Usage
▶️ Generate Monte Carlo Snippet
from lerl import monte_carlo_code
print(monte_carlo_code())
▶️ Generate TD(0) Snippet
from lerl import td_code
print(td_code())
▶️ Generate Policy Iteration Code
from lerl import complete_policy_iteration_code
print(complete_policy_iteration_code())
Each function returns a complete runnable script containing:
- Gym environment setup
- Algorithm implementation
- Value function updates
- Convergence plots
- Printed results
📚 Example Output (Short Preview)
import numpy as np
import gymnasium as gym
import matplotlib.pyplot as plt
env = gym.make('FrozenLake-v1', is_slippery = 'False')
def monte_carlo(env, policy, episodes = 10000, df = 0.99):
...
(Full script provided when calling the function.)
🏗 Internal Architecture
lerl/
│
├── __init__.py
├── qrl.py # Main snippet-generating functions
├── utils.py # format_snippet() helper
└── README.md
📜 License
This project is licensed under the MIT License. Feel free to use it in academic or commercial projects.
⭐ Support
If this library helps you learn or build RL assignments, give it a ⭐ on GitHub and share it with your friends!
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
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 lerl-0.9.0.tar.gz.
File metadata
- Download URL: lerl-0.9.0.tar.gz
- Upload date:
- Size: 39.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6567696595c67919d0e2cda2b1ab37d68689f25496368ba80c264fc90842c944
|
|
| MD5 |
40bafe929f2c760055953d1d2fa135d7
|
|
| BLAKE2b-256 |
cff33b5336ab93fe52f21b093bf2725fbfa0bb2b260554a7437ec17d024bf6f7
|
File details
Details for the file lerl-0.9.0-py3-none-any.whl.
File metadata
- Download URL: lerl-0.9.0-py3-none-any.whl
- Upload date:
- Size: 40.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c0ec51053d64acb1b68c76b48c1b681e8c3fa3d898736a7038ded20659a31386
|
|
| MD5 |
bd144b237344dc98f859cf7bdb042c78
|
|
| BLAKE2b-256 |
5c0f000588f7ac0dea99dff1b0578b0dd28b001ff1bde399fa84912ae0a66625
|