Examples in the MLX framework
mlx
Go to file
Y4hL ea92f623d6
Prevent llms/mlx_lm from serving the local directory as a webserver (#498)
* Don't serve local directory

BaseHTTPRequestHandler serves the current directory by default. Definitely not intended behaviour. Remove the "do_HEAD" and "do_GET" methods.

* Fix typo in method name

I assume hanlde_stream was intended to be called handle_stream

* Fix outdated typehint

load_model returns nn.Module, however fetch_from_hub was not updated to reflect the change

* Add some more type hints

* Add warnings for using in prod

Add a warning to README and runtime, discouraging use in production. The warning is the same as on the python docs for HTTPServer https://docs.python.org/3/library/http.server.html

* format

* nits

---------

Co-authored-by: Awni Hannun <awni@apple.com>
2024-02-27 19:40:42 -08:00
.circleci Fix import warning (#479) 2024-02-27 08:47:56 -08:00
bert docs: added missing imports (#375) 2024-01-25 10:44:53 -08:00
cifar Update a few examples to use compile (#420) 2024-02-08 13:00:41 -08:00
clip chore(clip): update the clip example to make it compatible with HF format (#472) 2024-02-23 06:49:53 -08:00
cvae Update a few examples to use compile (#420) 2024-02-08 13:00:41 -08:00
gcn Update a few examples to use compile (#420) 2024-02-08 13:00:41 -08:00
llms Prevent llms/mlx_lm from serving the local directory as a webserver (#498) 2024-02-27 19:40:42 -08:00
lora Bug fix in lora.py (#468) 2024-02-20 12:53:30 -08:00
mnist Update a few examples to use compile (#420) 2024-02-08 13:00:41 -08:00
normalizing_flow Update a few examples to use compile (#420) 2024-02-08 13:00:41 -08:00
speechcommands Update a few examples to use compile (#420) 2024-02-08 13:00:41 -08:00
stable_diffusion Fix Qwen2 and SD (#441) 2024-02-14 13:43:12 -08:00
t5 add speculative decoding example for llama (#149) 2023-12-28 15:20:43 -08:00
transformer_lm Typo: SGD->AdamW (#471) 2024-02-20 15:47:17 -08:00
whisper work with tuple shape (#393) 2024-02-01 13:03:47 -08:00
.gitignore Align CLI args and some smaller fixes (#167) 2023-12-22 14:34:32 -08:00
.pre-commit-config.yaml Update black version to 24.2.0 (#445) 2024-02-16 06:02:52 -08:00
ACKNOWLEDGMENTS.md Prevent llms/mlx_lm from serving the local directory as a webserver (#498) 2024-02-27 19:40:42 -08:00
CODE_OF_CONDUCT.md contribution + code of conduct 2023-11-29 12:31:18 -08:00
CONTRIBUTING.md Update CONTRIBUTING.md 2023-12-09 08:02:34 +09:00
LICENSE consistent copyright 2023-11-30 11:11:04 -08:00
README.md Example of a Convolutional Variational Autoencoder (CVAE) on MNIST (#264) 2024-02-06 20:02:27 -08:00

MLX Examples

This repo contains a variety of standalone examples using the MLX framework.

The MNIST example is a good starting point to learn how to use MLX.

Some more useful examples are listed below.

Text Models

Image Models

Audio Models

Multimodal models

  • Joint text and image embeddings with CLIP.

Other Models

  • Semi-supervised learning on graph-structured data with GCN.
  • Real NVP normalizing flow for density estimation and sampling.

Hugging Face

Note: You can now directly download a few converted checkpoints from the MLX Community organization on Hugging Face. We encourage you to join the community and contribute new models.

Contributing

We are grateful for all of our contributors. If you contribute to MLX Examples and wish to be acknowledged, please add your name to the list in your pull request.

Citing MLX Examples

The MLX software suite was initially developed with equal contribution by Awni Hannun, Jagrit Digani, Angelos Katharopoulos, and Ronan Collobert. If you find MLX Examples useful in your research and wish to cite it, please use the following BibTex entry:

@software{mlx2023,
  author = {Awni Hannun and Jagrit Digani and Angelos Katharopoulos and Ronan Collobert},
  title = {{MLX}: Efficient and flexible machine learning on Apple silicon},
  url = {https://github.com/ml-explore},
  version = {0.0},
  year = {2023},
}