{"id":18179311,"url":"https://github.com/shambac/shamboflow","last_synced_at":"2026-02-19T06:32:16.775Z","repository":{"id":257804003,"uuid":"860973256","full_name":"ShambaC/shamboflow","owner":"ShambaC","description":"Fierce tensorflow competitor","archived":false,"fork":false,"pushed_at":"2024-12-24T19:44:34.000Z","size":382,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-27T15:04:22.135Z","etag":null,"topics":["cuda","cupy","machine-learning","numpy","pypi-package"],"latest_commit_sha":null,"homepage":"https://pypi.org/project/shamboflow/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ShambaC.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-09-21T16:55:04.000Z","updated_at":"2025-02-21T05:28:37.000Z","dependencies_parsed_at":null,"dependency_job_id":"e4ff64e2-bdc8-401e-ad89-a9a16fef656f","html_url":"https://github.com/ShambaC/shamboflow","commit_stats":null,"previous_names":["shambac/shamboflow"],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ShambaC%2Fshamboflow","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ShambaC%2Fshamboflow/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ShambaC%2Fshamboflow/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ShambaC%2Fshamboflow/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ShambaC","download_url":"https://codeload.github.com/ShambaC/shamboflow/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246700324,"owners_count":20819858,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cuda","cupy","machine-learning","numpy","pypi-package"],"created_at":"2024-11-02T18:08:44.724Z","updated_at":"2026-02-19T06:32:16.762Z","avatar_url":"https://github.com/ShambaC.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n    \u003cimg src=\"https://files.catbox.moe/j06xze.png\"\u003e\n\u003c/div\u003e\n\n![Python](https://img.shields.io/badge/python-3.9%20%7C%203.10%20%7C%203.11%20%7C%203.12-white?style=for-the-badge\u0026labelColor=gray\u0026color=blue)\n[![PyPI - Version](https://img.shields.io/pypi/v/shamboflow?style=for-the-badge\u0026link=https%3A%2F%2Fpypi.org%2Fproject%2Fshamboflow%2F)](https://pypi.org/project/shamboflow/)\n![GitHub Actions Workflow Status](https://img.shields.io/github/actions/workflow/status/ShambaC/shamboflow/python-publish.yml?style=for-the-badge)\n![GitHub Release Date](https://img.shields.io/github/release-date/ShambaC/shamboflow?display_date=published_at\u0026style=for-the-badge)\n![PyPI - Downloads](https://img.shields.io/pypi/dm/shamboflow?style=for-the-badge\u0026color=black)\n\n\n\u003e [!IMPORTANT]\n\u003e This is an elaborate meme I put a lot of effort into.\n\u003e So please, no one sue me.\n\nShamboFlow is an open source API for creating machine learning models. It is only available in python.\n\nShamboFlow is super fast drop in replacemnet for TensorFlow (Read adds nothing, not even performance improvement). It is build from scratch (Read, using numpy) and comes with Cuda GPU support out of the box. I will tell the story at the end of this file on how this came to be. \n\nOn a serious note, I always wanted to implement a neural network using just numpy and no additional libraries and this gave me an excuse to do so. And so I did. I made this in a week. Learned a lot of stuff in the process and it was a stressfull and fun experience. This library is dependent on numpy as stated but also uses cupy to add GPU support. Other two dependencies are tqdm for progress bar and colorama for colorful texts. I will probably work more on this as I have already put in quite some effort.\n\n# Documentation\n[![Static Badge](https://img.shields.io/badge/API-docs-black?style=for-the-badge)](https://shambac.github.io/shamboflow/)\n\n[![Static Badge](https://img.shields.io/badge/Guide-In_Progress-black?style=for-the-badge)](https://pingutinguorg.gitbook.io/shamboflow)\n\n# Install\n\nInstall using the pip package.\n```bash\n$ pip install shamboflow\n```\n\nTo update ShamboFlow to the latest version, add `--upgrade` flag to the above command\n\n# Example\n\nA small example program that shows how to create a simple ANN with 3-2-1 topology and train it with data to perform predictions.\n\n## Define the model and train it\n\n```python\nimport numpy as np\n\n# Dataset\nx_data = np.array([[1, 0, 1]])\ny_data = np.array([[1]])\n\n# Parameters\nlearning_rate = 0.9\ntrain_epochs = 20\n\n# Import the library\nimport shamboflow as sf\n\n# Create a model\nmodel = sf.models.Sequential()\n# Add layers\nmodel.add(sf.layers.Dense(3))\nmodel.add(sf.layers.Dense(2, activation='sigmoid'))\nmodel.add(sf.layers.Dense(1, activation='sigmoid'))\n\n# Compile the model\nmodel.compile(learning_rate=learning_rate, loss='mean_squared_error', verbose=True)\n\n# Callbacks\ncheckpoint = sf.callbacks.ModelCheckpoint(monitor='loss', save_best_only=True, verbose=True)\n\n# Train the model with the dataset\nmodel.fit(\n    x_data,\n    y_data,\n    epochs=train_epochs,\n    callbacks=[checkpoint]\n)\n\n# Save the trained model to disk\nmodel.save('model.meow')\n```\n\n## Load the saved model and predict\n```python\nimport numpy as np\nimport shamboflow as sf\n\nmodel = sf.models.load_model(\"./model.meow\")\n\na = np.array([[1, 0, 1]])\n\nres = model.predict(a)\nprint(res)\n```\n\n# Story\nIts storytime.\n\nLast week we had a class on Neural Networks at university. At the end of the class, our professor told us to implement the given network in python. Now, previously he had told us to not use any libraries to perform our tasks as that would just ruin the purpose of learning algorithms. So, I got excited that I am gonna implement a neural network using just python. Then he told us that we can use libraries for making the network. And I was a little bummed. My [friend](https://github.com/Shreyashi07) jokingly told me that, \"No you have to make it\". And I said, if I finish it within a week, will you use it in the assignment. My friends agreed to it.\n\nSo, here it is. My library. I am so gonna make them use this for the assignments.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshambac%2Fshamboflow","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fshambac%2Fshamboflow","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshambac%2Fshamboflow/lists"}