name: homl3
channels:
  - conda-forge
  - defaults
dependencies:
  - ftfy=6.0  # used only in chapter 15 by the transformers library
  - graphviz  # used only in chapter 5 for dot files
  - gym=0.19  # used only in chapter 17
  - ipython=7.28  # a powerful Python shell
  - ipywidgets=7.6  # optionally used only in chapter 11 for tqdm in Jupyter
  - joblib=0.14  # used only in chapter 2 to save/load Scikit-Learn models
  - jupyterlab=3.2  # to edit and run Jupyter notebooks
  - matplotlib=3.4  # beautiful plots. See tutorial tools_matplotlib.ipynb
  - nbdime=3.1  # optional tool to diff Jupyter notebooks
  - nltk=3.6  # optionally used in chapter 3, exercise 4
  - numexpr=2.7  # used only in the Pandas tutorial for numerical expressions
  - numpy=1.19  # Powerful n-dimensional arrays and numerical computing tools
  - opencv=4.5  # used only in chapter 17 by TF Agents for image preprocessing
  - pandas=1.3  # data analysis and manipulation tool
  - pillow=8.3  # image manipulation library, (used by matplotlib.image.imread)
  - pip  # Python's package-management system
  - py-xgboost=1.4  # used only in chapter 6 for optimized Gradient Boosting
  - pyglet=1.5  # used only in chapter 17 to render environments
  - pyopengl=3.1  # used only in chapter 17 to render environments
  - python=3.8  # Python! Not using latest version as some libs lack support
  - python-graphviz  # used only in chapter 5 for dot files
  #- pyvirtualdisplay=2.2  # used only in chapter 17 if on headless server
  - requests=2.26  # used only in chapter 18 for REST API queries
  - scikit-learn=1.0  # machine learning library
  - scipy=1.7  # scientific/technical computing library
  - tqdm=4.62  # a progress bar library
  - wheel  # built-package format for pip
  - widgetsnbextension=3.5  # interactive HTML widgets for Jupyter notebooks
  - pip:
    - tensorboard-plugin-profile~=2.5.0  # profiling plugin for TensorBoard
    - tensorboard~=2.7.0  # TensorFlow's visualization toolkit
    - tensorflow-addons~=0.14.0  # used only in chapter 15 for a seq2seq impl.
    - tensorflow-datasets~=4.4.0  # datasets repository, ready to use
    - tensorflow-hub~=0.12.0  # trained ML models repository, ready to use
    - tensorflow-probability~=0.14.1  # Optional. Probability/Stats lib.
    - tensorflow-serving-api~=2.6.0  # or tensorflow-serving-api-gpu if gpu
    - tensorflow~=2.6.0  # Deep Learning library
    - tf-agents~=0.10.0  # Reinforcement Learning lib based on TensorFlow
    - tfx~=1.3.0  # platform to deploy production ML pipelines
    - transformers~=4.11.3  # Natural Language Processing lib for TF or PyTorch
    - urlextract~=1.4.0  # optionally used in chapter 3, exercise 4
    - gym[box2d,atari,accept-rom-license]~=0.21.0  # used only in chapter 18

# Specific lib versions to avoid conflicts
  - attrs=20.3
  - click=7.1
  - packaging=20.9
  - six=1.15
  - typing-extensions=3.7
