FLAML 2.3.6__tar.gz → 2.4.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (122) hide show
  1. {FLAML-2.3.6 → flaml-2.4.0}/FLAML.egg-info/PKG-INFO +119 -56
  2. {FLAML-2.3.6 → flaml-2.4.0}/FLAML.egg-info/requires.txt +36 -61
  3. {FLAML-2.3.6 → flaml-2.4.0}/PKG-INFO +119 -56
  4. {FLAML-2.3.6 → flaml-2.4.0}/README.md +9 -45
  5. flaml-2.4.0/flaml/autogen/__init__.py +12 -0
  6. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/automl.py +31 -7
  7. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/data.py +21 -5
  8. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/ml.py +19 -2
  9. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/model.py +9 -6
  10. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/nlp/huggingface/training_args.py +8 -0
  11. flaml-2.4.0/flaml/automl/spark/__init__.py +94 -0
  12. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/spark/utils.py +22 -10
  13. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/task/time_series_task.py +1 -1
  14. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/time_series/tcn.py +2 -1
  15. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/time_series/tft.py +37 -6
  16. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/time_series/ts_data.py +10 -0
  17. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/time_series/ts_model.py +30 -3
  18. {FLAML-2.3.6 → flaml-2.4.0}/flaml/default/greedy.py +1 -0
  19. {FLAML-2.3.6 → flaml-2.4.0}/flaml/default/portfolio.py +1 -0
  20. {FLAML-2.3.6 → flaml-2.4.0}/flaml/fabric/mlflow.py +39 -21
  21. {FLAML-2.3.6 → flaml-2.4.0}/flaml/tune/searcher/blendsearch.py +26 -7
  22. {FLAML-2.3.6 → flaml-2.4.0}/flaml/tune/searcher/suggestion.py +84 -14
  23. {FLAML-2.3.6 → flaml-2.4.0}/flaml/tune/space.py +1 -1
  24. {FLAML-2.3.6 → flaml-2.4.0}/flaml/tune/tune.py +12 -4
  25. flaml-2.4.0/flaml/version.py +1 -0
  26. {FLAML-2.3.6 → flaml-2.4.0}/pyproject.toml +0 -1
  27. {FLAML-2.3.6 → flaml-2.4.0}/setup.py +33 -46
  28. {FLAML-2.3.6 → flaml-2.4.0}/test/test_autovw.py +24 -8
  29. FLAML-2.3.6/flaml/autogen/__init__.py +0 -3
  30. FLAML-2.3.6/flaml/automl/spark/__init__.py +0 -34
  31. FLAML-2.3.6/flaml/version.py +0 -1
  32. {FLAML-2.3.6 → flaml-2.4.0}/FLAML.egg-info/SOURCES.txt +0 -0
  33. {FLAML-2.3.6 → flaml-2.4.0}/FLAML.egg-info/dependency_links.txt +0 -0
  34. {FLAML-2.3.6 → flaml-2.4.0}/FLAML.egg-info/top_level.txt +0 -0
  35. {FLAML-2.3.6 → flaml-2.4.0}/LICENSE +0 -0
  36. {FLAML-2.3.6 → flaml-2.4.0}/NOTICE.md +0 -0
  37. {FLAML-2.3.6 → flaml-2.4.0}/flaml/__init__.py +0 -0
  38. {FLAML-2.3.6 → flaml-2.4.0}/flaml/autogen/agentchat/__init__.py +0 -0
  39. {FLAML-2.3.6 → flaml-2.4.0}/flaml/autogen/agentchat/agent.py +0 -0
  40. {FLAML-2.3.6 → flaml-2.4.0}/flaml/autogen/agentchat/assistant_agent.py +0 -0
  41. {FLAML-2.3.6 → flaml-2.4.0}/flaml/autogen/agentchat/conversable_agent.py +0 -0
  42. {FLAML-2.3.6 → flaml-2.4.0}/flaml/autogen/agentchat/groupchat.py +0 -0
  43. {FLAML-2.3.6 → flaml-2.4.0}/flaml/autogen/agentchat/user_proxy_agent.py +0 -0
  44. {FLAML-2.3.6 → flaml-2.4.0}/flaml/autogen/code_utils.py +0 -0
  45. {FLAML-2.3.6 → flaml-2.4.0}/flaml/autogen/extensions/__init__.py +0 -0
  46. {FLAML-2.3.6 → flaml-2.4.0}/flaml/autogen/math_utils.py +0 -0
  47. {FLAML-2.3.6 → flaml-2.4.0}/flaml/autogen/oai/__init__.py +0 -0
  48. {FLAML-2.3.6 → flaml-2.4.0}/flaml/autogen/oai/completion.py +0 -0
  49. {FLAML-2.3.6 → flaml-2.4.0}/flaml/autogen/oai/openai_utils.py +0 -0
  50. {FLAML-2.3.6 → flaml-2.4.0}/flaml/autogen/retrieve_utils.py +0 -0
  51. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/__init__.py +0 -0
  52. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/contrib/__init__.py +0 -0
  53. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/contrib/histgb.py +0 -0
  54. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/logger.py +0 -0
  55. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/nlp/__init__.py +0 -0
  56. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/nlp/huggingface/__init__.py +0 -0
  57. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/nlp/huggingface/data_collator.py +0 -0
  58. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/nlp/huggingface/trainer.py +0 -0
  59. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/nlp/huggingface/utils.py +0 -0
  60. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/nlp/utils.py +0 -0
  61. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/spark/metrics.py +0 -0
  62. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/state.py +0 -0
  63. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/task/__init__.py +0 -0
  64. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/task/factory.py +0 -0
  65. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/task/generic_task.py +0 -0
  66. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/task/task.py +0 -0
  67. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/time_series/__init__.py +0 -0
  68. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/time_series/feature.py +0 -0
  69. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/time_series/sklearn.py +0 -0
  70. {FLAML-2.3.6 → flaml-2.4.0}/flaml/automl/training_log.py +0 -0
  71. {FLAML-2.3.6 → flaml-2.4.0}/flaml/config.py +0 -0
  72. {FLAML-2.3.6 → flaml-2.4.0}/flaml/default/__init__.py +0 -0
  73. {FLAML-2.3.6 → flaml-2.4.0}/flaml/default/all/binary.json +0 -0
  74. {FLAML-2.3.6 → flaml-2.4.0}/flaml/default/all/multiclass.json +0 -0
  75. {FLAML-2.3.6 → flaml-2.4.0}/flaml/default/all/regression.json +0 -0
  76. {FLAML-2.3.6 → flaml-2.4.0}/flaml/default/estimator.py +0 -0
  77. {FLAML-2.3.6 → flaml-2.4.0}/flaml/default/extra_tree/binary.json +0 -0
  78. {FLAML-2.3.6 → flaml-2.4.0}/flaml/default/extra_tree/multiclass.json +0 -0
  79. {FLAML-2.3.6 → flaml-2.4.0}/flaml/default/extra_tree/regression.json +0 -0
  80. {FLAML-2.3.6 → flaml-2.4.0}/flaml/default/lgbm/binary.json +0 -0
  81. {FLAML-2.3.6 → flaml-2.4.0}/flaml/default/lgbm/multiclass.json +0 -0
  82. {FLAML-2.3.6 → flaml-2.4.0}/flaml/default/lgbm/regression.json +0 -0
  83. {FLAML-2.3.6 → flaml-2.4.0}/flaml/default/regret.py +0 -0
  84. {FLAML-2.3.6 → flaml-2.4.0}/flaml/default/rf/binary.json +0 -0
  85. {FLAML-2.3.6 → flaml-2.4.0}/flaml/default/rf/multiclass.json +0 -0
  86. {FLAML-2.3.6 → flaml-2.4.0}/flaml/default/rf/regression.json +0 -0
  87. {FLAML-2.3.6 → flaml-2.4.0}/flaml/default/suggest.py +0 -0
  88. {FLAML-2.3.6 → flaml-2.4.0}/flaml/default/xgb_limitdepth/binary.json +0 -0
  89. {FLAML-2.3.6 → flaml-2.4.0}/flaml/default/xgb_limitdepth/multiclass.json +0 -0
  90. {FLAML-2.3.6 → flaml-2.4.0}/flaml/default/xgb_limitdepth/regression.json +0 -0
  91. {FLAML-2.3.6 → flaml-2.4.0}/flaml/default/xgboost/binary.json +0 -0
  92. {FLAML-2.3.6 → flaml-2.4.0}/flaml/default/xgboost/multiclass.json +0 -0
  93. {FLAML-2.3.6 → flaml-2.4.0}/flaml/default/xgboost/regression.json +0 -0
  94. {FLAML-2.3.6 → flaml-2.4.0}/flaml/fabric/__init__.py +0 -0
  95. {FLAML-2.3.6 → flaml-2.4.0}/flaml/ml.py +0 -0
  96. {FLAML-2.3.6 → flaml-2.4.0}/flaml/onlineml/__init__.py +0 -0
  97. {FLAML-2.3.6 → flaml-2.4.0}/flaml/onlineml/autovw.py +0 -0
  98. {FLAML-2.3.6 → flaml-2.4.0}/flaml/onlineml/trial.py +0 -0
  99. {FLAML-2.3.6 → flaml-2.4.0}/flaml/onlineml/trial_runner.py +0 -0
  100. {FLAML-2.3.6 → flaml-2.4.0}/flaml/tune/__init__.py +0 -0
  101. {FLAML-2.3.6 → flaml-2.4.0}/flaml/tune/analysis.py +0 -0
  102. {FLAML-2.3.6 → flaml-2.4.0}/flaml/tune/logger.py +0 -0
  103. {FLAML-2.3.6 → flaml-2.4.0}/flaml/tune/result.py +0 -0
  104. {FLAML-2.3.6 → flaml-2.4.0}/flaml/tune/sample.py +0 -0
  105. {FLAML-2.3.6 → flaml-2.4.0}/flaml/tune/scheduler/__init__.py +0 -0
  106. {FLAML-2.3.6 → flaml-2.4.0}/flaml/tune/scheduler/online_scheduler.py +0 -0
  107. {FLAML-2.3.6 → flaml-2.4.0}/flaml/tune/scheduler/trial_scheduler.py +0 -0
  108. {FLAML-2.3.6 → flaml-2.4.0}/flaml/tune/searcher/__init__.py +0 -0
  109. {FLAML-2.3.6 → flaml-2.4.0}/flaml/tune/searcher/cfo_cat.py +0 -0
  110. {FLAML-2.3.6 → flaml-2.4.0}/flaml/tune/searcher/flow2.py +0 -0
  111. {FLAML-2.3.6 → flaml-2.4.0}/flaml/tune/searcher/online_searcher.py +0 -0
  112. {FLAML-2.3.6 → flaml-2.4.0}/flaml/tune/searcher/search_thread.py +0 -0
  113. {FLAML-2.3.6 → flaml-2.4.0}/flaml/tune/searcher/variant_generator.py +0 -0
  114. {FLAML-2.3.6 → flaml-2.4.0}/flaml/tune/spark/__init__.py +0 -0
  115. {FLAML-2.3.6 → flaml-2.4.0}/flaml/tune/spark/utils.py +0 -0
  116. {FLAML-2.3.6 → flaml-2.4.0}/flaml/tune/trial.py +0 -0
  117. {FLAML-2.3.6 → flaml-2.4.0}/flaml/tune/trial_runner.py +0 -0
  118. {FLAML-2.3.6 → flaml-2.4.0}/flaml/tune/utils.py +0 -0
  119. {FLAML-2.3.6 → flaml-2.4.0}/setup.cfg +0 -0
  120. {FLAML-2.3.6 → flaml-2.4.0}/test/test_conda_distribution.py +0 -0
  121. {FLAML-2.3.6 → flaml-2.4.0}/test/test_gpu.py +0 -0
  122. {FLAML-2.3.6 → flaml-2.4.0}/test/test_version.py +0 -0
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: FLAML
3
- Version: 2.3.6
3
+ Version: 2.4.0
4
4
  Summary: A fast library for automated machine learning and tuning
5
5
  Home-page: https://github.com/microsoft/FLAML
6
6
  Author: Microsoft Corporation
@@ -8,34 +8,133 @@ Author-email: hpo@microsoft.com
8
8
  Classifier: License :: OSI Approved :: MIT License
9
9
  Classifier: Operating System :: OS Independent
10
10
  Classifier: Programming Language :: Python :: 3
11
- Classifier: Programming Language :: Python :: 3.9
12
11
  Classifier: Programming Language :: Python :: 3.10
13
12
  Classifier: Programming Language :: Python :: 3.11
14
- Requires-Python: >=3.9
13
+ Classifier: Programming Language :: Python :: 3.12
14
+ Requires-Python: >=3.10
15
15
  Description-Content-Type: text/markdown
16
+ License-File: LICENSE
17
+ License-File: NOTICE.md
18
+ Requires-Dist: NumPy>=1.17
16
19
  Provides-Extra: automl
20
+ Requires-Dist: lightgbm>=2.3.1; extra == "automl"
21
+ Requires-Dist: xgboost<3.0.0,>=0.90; extra == "automl"
22
+ Requires-Dist: scipy>=1.4.1; extra == "automl"
23
+ Requires-Dist: pandas>=1.1.4; extra == "automl"
24
+ Requires-Dist: scikit-learn>=1.0.0; extra == "automl"
17
25
  Provides-Extra: notebook
26
+ Requires-Dist: jupyter; extra == "notebook"
18
27
  Provides-Extra: spark
28
+ Requires-Dist: pyspark>=3.2.0; extra == "spark"
29
+ Requires-Dist: joblibspark>=0.5.0; extra == "spark"
30
+ Requires-Dist: joblib<=1.3.2; extra == "spark"
19
31
  Provides-Extra: test
32
+ Requires-Dist: numpy<2.0.0,>=1.17; python_version < "3.13" and extra == "test"
33
+ Requires-Dist: numpy>2.0.0; python_version >= "3.13" and extra == "test"
34
+ Requires-Dist: jupyter; python_version < "3.13" and extra == "test"
35
+ Requires-Dist: lightgbm>=2.3.1; extra == "test"
36
+ Requires-Dist: xgboost<2.0.0,>=0.90; python_version < "3.11" and extra == "test"
37
+ Requires-Dist: xgboost>=2.0.0; python_version >= "3.11" and extra == "test"
38
+ Requires-Dist: scipy>=1.4.1; extra == "test"
39
+ Requires-Dist: pandas<2.0.0,>=1.1.4; python_version < "3.10" and extra == "test"
40
+ Requires-Dist: pandas>=1.1.4; python_version >= "3.10" and extra == "test"
41
+ Requires-Dist: scikit-learn>=1.2.0; extra == "test"
42
+ Requires-Dist: thop; extra == "test"
43
+ Requires-Dist: pytest>=6.1.1; extra == "test"
44
+ Requires-Dist: pytest-rerunfailures>=13.0; extra == "test"
45
+ Requires-Dist: coverage>=5.3; extra == "test"
46
+ Requires-Dist: pre-commit; extra == "test"
47
+ Requires-Dist: torch; extra == "test"
48
+ Requires-Dist: torchvision; extra == "test"
49
+ Requires-Dist: catboost>=0.26; python_version < "3.13" and extra == "test"
50
+ Requires-Dist: rgf-python; extra == "test"
51
+ Requires-Dist: optuna<=3.6.1,>=2.8.0; extra == "test"
52
+ Requires-Dist: openml; python_version < "3.13" and extra == "test"
53
+ Requires-Dist: statsmodels>=0.12.2; extra == "test"
54
+ Requires-Dist: psutil; extra == "test"
55
+ Requires-Dist: dataclasses; extra == "test"
56
+ Requires-Dist: transformers[torch]; extra == "test"
57
+ Requires-Dist: datasets; extra == "test"
58
+ Requires-Dist: evaluate; extra == "test"
59
+ Requires-Dist: nltk!=3.8.2; extra == "test"
60
+ Requires-Dist: rouge_score; extra == "test"
61
+ Requires-Dist: hcrystalball; extra == "test"
62
+ Requires-Dist: seqeval; extra == "test"
63
+ Requires-Dist: pytorch-forecasting; python_version < "3.13" and extra == "test"
64
+ Requires-Dist: mlflow-skinny<=2.22.1; extra == "test"
65
+ Requires-Dist: joblibspark>=0.5.0; extra == "test"
66
+ Requires-Dist: joblib<=1.3.2; extra == "test"
67
+ Requires-Dist: nbconvert; extra == "test"
68
+ Requires-Dist: nbformat; extra == "test"
69
+ Requires-Dist: ipykernel; extra == "test"
70
+ Requires-Dist: pytorch-lightning; extra == "test"
71
+ Requires-Dist: tensorboardX; extra == "test"
72
+ Requires-Dist: requests; extra == "test"
73
+ Requires-Dist: packaging; extra == "test"
74
+ Requires-Dist: dill; extra == "test"
20
75
  Provides-Extra: catboost
76
+ Requires-Dist: catboost>=0.26; extra == "catboost"
21
77
  Provides-Extra: blendsearch
78
+ Requires-Dist: optuna<=3.6.1,>=2.8.0; extra == "blendsearch"
79
+ Requires-Dist: packaging; extra == "blendsearch"
22
80
  Provides-Extra: ray
81
+ Requires-Dist: ray[tune]<2.5.0,>=1.13; extra == "ray"
23
82
  Provides-Extra: azureml
83
+ Requires-Dist: azureml-mlflow; extra == "azureml"
24
84
  Provides-Extra: nni
85
+ Requires-Dist: nni; extra == "nni"
25
86
  Provides-Extra: vw
87
+ Requires-Dist: vowpalwabbit<9.0.0,>=8.10.0; extra == "vw"
88
+ Requires-Dist: scikit-learn; extra == "vw"
26
89
  Provides-Extra: hf
90
+ Requires-Dist: transformers[torch]==4.26; extra == "hf"
91
+ Requires-Dist: datasets; extra == "hf"
92
+ Requires-Dist: nltk<=3.8.1; extra == "hf"
93
+ Requires-Dist: rouge_score; extra == "hf"
94
+ Requires-Dist: seqeval; extra == "hf"
27
95
  Provides-Extra: nlp
28
- Provides-Extra: ts_forecast
96
+ Requires-Dist: transformers[torch]==4.26; extra == "nlp"
97
+ Requires-Dist: datasets; extra == "nlp"
98
+ Requires-Dist: nltk<=3.8.1; extra == "nlp"
99
+ Requires-Dist: rouge_score; extra == "nlp"
100
+ Requires-Dist: seqeval; extra == "nlp"
101
+ Provides-Extra: ts-forecast
102
+ Requires-Dist: holidays; extra == "ts-forecast"
103
+ Requires-Dist: prophet>=1.1.5; extra == "ts-forecast"
104
+ Requires-Dist: statsmodels>=0.12.2; extra == "ts-forecast"
105
+ Requires-Dist: hcrystalball>=0.1.10; extra == "ts-forecast"
29
106
  Provides-Extra: forecast
107
+ Requires-Dist: holidays; extra == "forecast"
108
+ Requires-Dist: prophet>=1.1.5; extra == "forecast"
109
+ Requires-Dist: statsmodels>=0.12.2; extra == "forecast"
110
+ Requires-Dist: hcrystalball>=0.1.10; extra == "forecast"
111
+ Requires-Dist: pytorch-forecasting>=0.10.4; python_version < "3.13" and extra == "forecast"
112
+ Requires-Dist: pytorch-lightning>=1.9.0; extra == "forecast"
113
+ Requires-Dist: tensorboardX>=2.6; extra == "forecast"
30
114
  Provides-Extra: benchmark
31
- Provides-Extra: openai
32
- Provides-Extra: autogen
33
- Provides-Extra: mathchat
34
- Provides-Extra: retrievechat
115
+ Requires-Dist: catboost>=0.26; extra == "benchmark"
116
+ Requires-Dist: psutil==5.8.0; extra == "benchmark"
117
+ Requires-Dist: xgboost==1.3.3; extra == "benchmark"
118
+ Requires-Dist: pandas==1.1.4; extra == "benchmark"
35
119
  Provides-Extra: synapse
120
+ Requires-Dist: joblibspark>=0.5.0; extra == "synapse"
121
+ Requires-Dist: optuna<=3.6.1,>=2.8.0; extra == "synapse"
122
+ Requires-Dist: pyspark>=3.2.0; extra == "synapse"
36
123
  Provides-Extra: autozero
37
- License-File: LICENSE
38
- License-File: NOTICE.md
124
+ Requires-Dist: scikit-learn; extra == "autozero"
125
+ Requires-Dist: pandas; extra == "autozero"
126
+ Requires-Dist: packaging; extra == "autozero"
127
+ Dynamic: author
128
+ Dynamic: author-email
129
+ Dynamic: classifier
130
+ Dynamic: description
131
+ Dynamic: description-content-type
132
+ Dynamic: home-page
133
+ Dynamic: license-file
134
+ Dynamic: provides-extra
135
+ Dynamic: requires-dist
136
+ Dynamic: requires-python
137
+ Dynamic: summary
39
138
 
40
139
  [![PyPI version](https://badge.fury.io/py/FLAML.svg)](https://badge.fury.io/py/FLAML)
41
140
  ![Conda version](https://img.shields.io/conda/vn/conda-forge/flaml)
@@ -53,15 +152,9 @@ License-File: NOTICE.md
53
152
  <br>
54
153
  </p>
55
154
 
56
- :fire: FLAML supports AutoML and Hyperparameter Tuning in [Microsoft Fabric Data Science](https://learn.microsoft.com/en-us/fabric/data-science/automated-machine-learning-fabric). In addition, we've introduced Python 3.11 support, along with a range of new estimators, and comprehensive integration with MLflow—thanks to contributions from the Microsoft Fabric product team.
57
-
58
- :fire: Heads-up: We have migrated [AutoGen](https://microsoft.github.io/autogen/) into a dedicated [github repository](https://github.com/microsoft/autogen). Alongside this move, we have also launched a dedicated [Discord](https://discord.gg/pAbnFJrkgZ) server and a [website](https://microsoft.github.io/autogen/) for comprehensive documentation.
155
+ :fire: FLAML supports AutoML and Hyperparameter Tuning in [Microsoft Fabric Data Science](https://learn.microsoft.com/en-us/fabric/data-science/automated-machine-learning-fabric). In addition, we've introduced Python 3.11 and 3.12 support, along with a range of new estimators, and comprehensive integration with MLflow—thanks to contributions from the Microsoft Fabric product team.
59
156
 
60
- :fire: The automated multi-agent chat framework in [AutoGen](https://microsoft.github.io/autogen/) is in preview from v2.0.0.
61
-
62
- :fire: FLAML is highlighted in OpenAI's [cookbook](https://github.com/openai/openai-cookbook#related-resources-from-around-the-web).
63
-
64
- :fire: [autogen](https://microsoft.github.io/autogen/) is released with support for ChatGPT and GPT-4, based on [Cost-Effective Hyperparameter Optimization for Large Language Model Generation Inference](https://arxiv.org/abs/2303.04673).
157
+ :fire: Heads-up: [AutoGen](https://microsoft.github.io/autogen/) has moved to a dedicated [GitHub repository](https://github.com/microsoft/autogen). FLAML no longer includes the `autogen` module—please use AutoGen directly.
65
158
 
66
159
  ## What is FLAML
67
160
 
@@ -69,7 +162,7 @@ FLAML is a lightweight Python library for efficient automation of machine
69
162
  learning and AI operations. It automates workflow based on large language models, machine learning models, etc.
70
163
  and optimizes their performance.
71
164
 
72
- - FLAML enables building next-gen GPT-X applications based on multi-agent conversations with minimal effort. It simplifies the orchestration, automation and optimization of a complex GPT-X workflow. It maximizes the performance of GPT-X models and augments their weakness.
165
+ - FLAML enables economical automation and tuning for ML/AI workflows, including model selection and hyperparameter optimization under resource constraints.
73
166
  - For common machine learning tasks like classification and regression, it quickly finds quality models for user-provided data with low computational resources. It is easy to customize or extend. Users can find their desired customizability from a smooth range.
74
167
  - It supports fast and economical automatic tuning (e.g., inference hyperparameters for foundation models, configurations in MLOps/LMOps workflows, pipelines, mathematical/statistical models, algorithms, computing experiments, software configurations), capable of handling large search space with heterogeneous evaluation cost and complex constraints/guidance/early stopping.
75
168
 
@@ -85,10 +178,10 @@ FLAML requires **Python version >= 3.9**. It can be installed from pip:
85
178
  pip install flaml
86
179
  ```
87
180
 
88
- Minimal dependencies are installed without extra options. You can install extra options based on the feature you need. For example, use the following to install the dependencies needed by the [`autogen`](https://microsoft.github.io/autogen/) package.
181
+ Minimal dependencies are installed without extra options. You can install extra options based on the feature you need. For example, use the following to install the dependencies needed by the [`automl`](https://microsoft.github.io/FLAML/docs/Use-Cases/Task-Oriented-AutoML) module.
89
182
 
90
183
  ```bash
91
- pip install "flaml[autogen]"
184
+ pip install "flaml[automl]"
92
185
  ```
93
186
 
94
187
  Find more options in [Installation](https://microsoft.github.io/FLAML/docs/Installation).
@@ -96,39 +189,6 @@ Each of the [`notebook examples`](https://github.com/microsoft/FLAML/tree/main/n
96
189
 
97
190
  ## Quickstart
98
191
 
99
- - (New) The [autogen](https://microsoft.github.io/autogen/) package enables the next-gen GPT-X applications with a generic multi-agent conversation framework.
100
- It offers customizable and conversable agents which integrate LLMs, tools and human.
101
- By automating chat among multiple capable agents, one can easily make them collectively perform tasks autonomously or with human feedback, including tasks that require using tools via code. For example,
102
-
103
- ```python
104
- from flaml import autogen
105
-
106
- assistant = autogen.AssistantAgent("assistant")
107
- user_proxy = autogen.UserProxyAgent("user_proxy")
108
- user_proxy.initiate_chat(
109
- assistant,
110
- message="Show me the YTD gain of 10 largest technology companies as of today.",
111
- )
112
- # This initiates an automated chat between the two agents to solve the task
113
- ```
114
-
115
- Autogen also helps maximize the utility out of the expensive LLMs such as ChatGPT and GPT-4. It offers a drop-in replacement of `openai.Completion` or `openai.ChatCompletion` with powerful functionalites like tuning, caching, templating, filtering. For example, you can optimize generations by LLM with your own tuning data, success metrics and budgets.
116
-
117
- ```python
118
- # perform tuning
119
- config, analysis = autogen.Completion.tune(
120
- data=tune_data,
121
- metric="success",
122
- mode="max",
123
- eval_func=eval_func,
124
- inference_budget=0.05,
125
- optimization_budget=3,
126
- num_samples=-1,
127
- )
128
- # perform inference for a test instance
129
- response = autogen.Completion.create(context=test_instance, **config)
130
- ```
131
-
132
192
  - With three lines of code, you can start using this economical and fast
133
193
  AutoML engine as a [scikit-learn style estimator](https://microsoft.github.io/FLAML/docs/Use-Cases/Task-Oriented-AutoML).
134
194
 
@@ -150,7 +210,10 @@ automl.fit(X_train, y_train, task="classification", estimator_list=["lgbm"])
150
210
 
151
211
  ```python
152
212
  from flaml import tune
153
- tune.run(evaluation_function, config={…}, low_cost_partial_config={…}, time_budget_s=3600)
213
+
214
+ tune.run(
215
+ evaluation_function, config={…}, low_cost_partial_config={…}, time_budget_s=3600
216
+ )
154
217
  ```
155
218
 
156
219
  - [Zero-shot AutoML](https://microsoft.github.io/FLAML/docs/Use-Cases/Zero-Shot-AutoML) allows using the existing training API from lightgbm, xgboost etc. while getting the benefit of AutoML in choosing high-performance hyperparameter configurations per task.
@@ -1,10 +1,5 @@
1
1
  NumPy>=1.17
2
2
 
3
- [autogen]
4
- openai==0.27.8
5
- diskcache
6
- termcolor
7
-
8
3
  [automl]
9
4
  lightgbm>=2.3.1
10
5
  xgboost<3.0.0,>=0.90
@@ -31,23 +26,18 @@ optuna<=3.6.1,>=2.8.0
31
26
  packaging
32
27
 
33
28
  [catboost]
34
-
35
- [catboost:python_version < "3.11"]
36
- catboost<1.2,>=0.26
37
-
38
- [catboost:python_version >= "3.11"]
39
- catboost<=1.2.5,>=0.26
29
+ catboost>=0.26
40
30
 
41
31
  [forecast]
42
- holidays<0.14
43
- prophet>=1.0.1
32
+ holidays
33
+ prophet>=1.1.5
44
34
  statsmodels>=0.12.2
45
- hcrystalball==0.1.10
46
- pytorch-lightning==1.9.0
47
- tensorboardX==2.6
35
+ hcrystalball>=0.1.10
36
+ pytorch-lightning>=1.9.0
37
+ tensorboardX>=2.6
48
38
 
49
- [forecast:python_version < "3.11"]
50
- pytorch-forecasting>=0.9.0
39
+ [forecast:python_version < "3.13"]
40
+ pytorch-forecasting>=0.10.4
51
41
 
52
42
  [hf]
53
43
  transformers[torch]==4.26
@@ -56,14 +46,6 @@ nltk<=3.8.1
56
46
  rouge_score
57
47
  seqeval
58
48
 
59
- [mathchat]
60
- openai==0.27.8
61
- diskcache
62
- termcolor
63
- sympy
64
- pydantic==1.10.9
65
- wolframalpha
66
-
67
49
  [nlp]
68
50
  transformers[torch]==4.26
69
51
  datasets
@@ -77,20 +59,8 @@ nni
77
59
  [notebook]
78
60
  jupyter
79
61
 
80
- [openai]
81
- openai==0.27.8
82
- diskcache
83
-
84
62
  [ray]
85
- ray[tune]~=1.13
86
-
87
- [retrievechat]
88
- openai==0.27.8
89
- diskcache
90
- termcolor
91
- chromadb
92
- tiktoken
93
- sentence_transformers
63
+ ray[tune]<2.5.0,>=1.13
94
64
 
95
65
  [spark]
96
66
  pyspark>=3.2.0
@@ -103,62 +73,67 @@ optuna<=3.6.1,>=2.8.0
103
73
  pyspark>=3.2.0
104
74
 
105
75
  [test]
106
- jupyter
107
76
  lightgbm>=2.3.1
108
- xgboost<2.0.0,>=0.90
109
77
  scipy>=1.4.1
110
- scikit-learn>=1.0.0
78
+ scikit-learn>=1.2.0
111
79
  thop
112
80
  pytest>=6.1.1
81
+ pytest-rerunfailures>=13.0
113
82
  coverage>=5.3
114
83
  pre-commit
115
84
  torch
116
85
  torchvision
117
86
  rgf-python
118
87
  optuna<=3.6.1,>=2.8.0
119
- openml
120
88
  statsmodels>=0.12.2
121
- psutil==5.8.0
89
+ psutil
122
90
  dataclasses
123
- transformers[torch]==4.26
124
- datasets<=3.5.0
125
- nltk<=3.8.1
91
+ transformers[torch]
92
+ datasets
93
+ evaluate
94
+ nltk!=3.8.2
126
95
  rouge_score
127
- hcrystalball==0.1.10
96
+ hcrystalball
128
97
  seqeval
129
- mlflow==2.15.1
98
+ mlflow-skinny<=2.22.1
130
99
  joblibspark>=0.5.0
131
100
  joblib<=1.3.2
132
101
  nbconvert
133
102
  nbformat
134
103
  ipykernel
135
- pytorch-lightning<1.9.1
136
- tensorboardX==2.6
137
- requests<2.29.0
104
+ pytorch-lightning
105
+ tensorboardX
106
+ requests
138
107
  packaging
139
- pydantic==1.10.9
140
- sympy
141
- wolframalpha
142
108
  dill
143
109
 
144
110
  [test:python_version < "3.10"]
145
111
  pandas<2.0.0,>=1.1.4
146
112
 
147
113
  [test:python_version < "3.11"]
148
- catboost<1.2,>=0.26
149
- pytorch-forecasting<=0.10.1,>=0.9.0
114
+ xgboost<2.0.0,>=0.90
115
+
116
+ [test:python_version < "3.13"]
117
+ numpy<2.0.0,>=1.17
118
+ jupyter
119
+ catboost>=0.26
120
+ openml
121
+ pytorch-forecasting
150
122
 
151
123
  [test:python_version >= "3.10"]
152
124
  pandas>=1.1.4
153
125
 
154
126
  [test:python_version >= "3.11"]
155
- catboost>=0.26
127
+ xgboost>=2.0.0
128
+
129
+ [test:python_version >= "3.13"]
130
+ numpy>2.0.0
156
131
 
157
132
  [ts_forecast]
158
- holidays<0.14
159
- prophet>=1.0.1
133
+ holidays
134
+ prophet>=1.1.5
160
135
  statsmodels>=0.12.2
161
- hcrystalball==0.1.10
136
+ hcrystalball>=0.1.10
162
137
 
163
138
  [vw]
164
139
  vowpalwabbit<9.0.0,>=8.10.0
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: FLAML
3
- Version: 2.3.6
3
+ Version: 2.4.0
4
4
  Summary: A fast library for automated machine learning and tuning
5
5
  Home-page: https://github.com/microsoft/FLAML
6
6
  Author: Microsoft Corporation
@@ -8,34 +8,133 @@ Author-email: hpo@microsoft.com
8
8
  Classifier: License :: OSI Approved :: MIT License
9
9
  Classifier: Operating System :: OS Independent
10
10
  Classifier: Programming Language :: Python :: 3
11
- Classifier: Programming Language :: Python :: 3.9
12
11
  Classifier: Programming Language :: Python :: 3.10
13
12
  Classifier: Programming Language :: Python :: 3.11
14
- Requires-Python: >=3.9
13
+ Classifier: Programming Language :: Python :: 3.12
14
+ Requires-Python: >=3.10
15
15
  Description-Content-Type: text/markdown
16
+ License-File: LICENSE
17
+ License-File: NOTICE.md
18
+ Requires-Dist: NumPy>=1.17
16
19
  Provides-Extra: automl
20
+ Requires-Dist: lightgbm>=2.3.1; extra == "automl"
21
+ Requires-Dist: xgboost<3.0.0,>=0.90; extra == "automl"
22
+ Requires-Dist: scipy>=1.4.1; extra == "automl"
23
+ Requires-Dist: pandas>=1.1.4; extra == "automl"
24
+ Requires-Dist: scikit-learn>=1.0.0; extra == "automl"
17
25
  Provides-Extra: notebook
26
+ Requires-Dist: jupyter; extra == "notebook"
18
27
  Provides-Extra: spark
28
+ Requires-Dist: pyspark>=3.2.0; extra == "spark"
29
+ Requires-Dist: joblibspark>=0.5.0; extra == "spark"
30
+ Requires-Dist: joblib<=1.3.2; extra == "spark"
19
31
  Provides-Extra: test
32
+ Requires-Dist: numpy<2.0.0,>=1.17; python_version < "3.13" and extra == "test"
33
+ Requires-Dist: numpy>2.0.0; python_version >= "3.13" and extra == "test"
34
+ Requires-Dist: jupyter; python_version < "3.13" and extra == "test"
35
+ Requires-Dist: lightgbm>=2.3.1; extra == "test"
36
+ Requires-Dist: xgboost<2.0.0,>=0.90; python_version < "3.11" and extra == "test"
37
+ Requires-Dist: xgboost>=2.0.0; python_version >= "3.11" and extra == "test"
38
+ Requires-Dist: scipy>=1.4.1; extra == "test"
39
+ Requires-Dist: pandas<2.0.0,>=1.1.4; python_version < "3.10" and extra == "test"
40
+ Requires-Dist: pandas>=1.1.4; python_version >= "3.10" and extra == "test"
41
+ Requires-Dist: scikit-learn>=1.2.0; extra == "test"
42
+ Requires-Dist: thop; extra == "test"
43
+ Requires-Dist: pytest>=6.1.1; extra == "test"
44
+ Requires-Dist: pytest-rerunfailures>=13.0; extra == "test"
45
+ Requires-Dist: coverage>=5.3; extra == "test"
46
+ Requires-Dist: pre-commit; extra == "test"
47
+ Requires-Dist: torch; extra == "test"
48
+ Requires-Dist: torchvision; extra == "test"
49
+ Requires-Dist: catboost>=0.26; python_version < "3.13" and extra == "test"
50
+ Requires-Dist: rgf-python; extra == "test"
51
+ Requires-Dist: optuna<=3.6.1,>=2.8.0; extra == "test"
52
+ Requires-Dist: openml; python_version < "3.13" and extra == "test"
53
+ Requires-Dist: statsmodels>=0.12.2; extra == "test"
54
+ Requires-Dist: psutil; extra == "test"
55
+ Requires-Dist: dataclasses; extra == "test"
56
+ Requires-Dist: transformers[torch]; extra == "test"
57
+ Requires-Dist: datasets; extra == "test"
58
+ Requires-Dist: evaluate; extra == "test"
59
+ Requires-Dist: nltk!=3.8.2; extra == "test"
60
+ Requires-Dist: rouge_score; extra == "test"
61
+ Requires-Dist: hcrystalball; extra == "test"
62
+ Requires-Dist: seqeval; extra == "test"
63
+ Requires-Dist: pytorch-forecasting; python_version < "3.13" and extra == "test"
64
+ Requires-Dist: mlflow-skinny<=2.22.1; extra == "test"
65
+ Requires-Dist: joblibspark>=0.5.0; extra == "test"
66
+ Requires-Dist: joblib<=1.3.2; extra == "test"
67
+ Requires-Dist: nbconvert; extra == "test"
68
+ Requires-Dist: nbformat; extra == "test"
69
+ Requires-Dist: ipykernel; extra == "test"
70
+ Requires-Dist: pytorch-lightning; extra == "test"
71
+ Requires-Dist: tensorboardX; extra == "test"
72
+ Requires-Dist: requests; extra == "test"
73
+ Requires-Dist: packaging; extra == "test"
74
+ Requires-Dist: dill; extra == "test"
20
75
  Provides-Extra: catboost
76
+ Requires-Dist: catboost>=0.26; extra == "catboost"
21
77
  Provides-Extra: blendsearch
78
+ Requires-Dist: optuna<=3.6.1,>=2.8.0; extra == "blendsearch"
79
+ Requires-Dist: packaging; extra == "blendsearch"
22
80
  Provides-Extra: ray
81
+ Requires-Dist: ray[tune]<2.5.0,>=1.13; extra == "ray"
23
82
  Provides-Extra: azureml
83
+ Requires-Dist: azureml-mlflow; extra == "azureml"
24
84
  Provides-Extra: nni
85
+ Requires-Dist: nni; extra == "nni"
25
86
  Provides-Extra: vw
87
+ Requires-Dist: vowpalwabbit<9.0.0,>=8.10.0; extra == "vw"
88
+ Requires-Dist: scikit-learn; extra == "vw"
26
89
  Provides-Extra: hf
90
+ Requires-Dist: transformers[torch]==4.26; extra == "hf"
91
+ Requires-Dist: datasets; extra == "hf"
92
+ Requires-Dist: nltk<=3.8.1; extra == "hf"
93
+ Requires-Dist: rouge_score; extra == "hf"
94
+ Requires-Dist: seqeval; extra == "hf"
27
95
  Provides-Extra: nlp
28
- Provides-Extra: ts_forecast
96
+ Requires-Dist: transformers[torch]==4.26; extra == "nlp"
97
+ Requires-Dist: datasets; extra == "nlp"
98
+ Requires-Dist: nltk<=3.8.1; extra == "nlp"
99
+ Requires-Dist: rouge_score; extra == "nlp"
100
+ Requires-Dist: seqeval; extra == "nlp"
101
+ Provides-Extra: ts-forecast
102
+ Requires-Dist: holidays; extra == "ts-forecast"
103
+ Requires-Dist: prophet>=1.1.5; extra == "ts-forecast"
104
+ Requires-Dist: statsmodels>=0.12.2; extra == "ts-forecast"
105
+ Requires-Dist: hcrystalball>=0.1.10; extra == "ts-forecast"
29
106
  Provides-Extra: forecast
107
+ Requires-Dist: holidays; extra == "forecast"
108
+ Requires-Dist: prophet>=1.1.5; extra == "forecast"
109
+ Requires-Dist: statsmodels>=0.12.2; extra == "forecast"
110
+ Requires-Dist: hcrystalball>=0.1.10; extra == "forecast"
111
+ Requires-Dist: pytorch-forecasting>=0.10.4; python_version < "3.13" and extra == "forecast"
112
+ Requires-Dist: pytorch-lightning>=1.9.0; extra == "forecast"
113
+ Requires-Dist: tensorboardX>=2.6; extra == "forecast"
30
114
  Provides-Extra: benchmark
31
- Provides-Extra: openai
32
- Provides-Extra: autogen
33
- Provides-Extra: mathchat
34
- Provides-Extra: retrievechat
115
+ Requires-Dist: catboost>=0.26; extra == "benchmark"
116
+ Requires-Dist: psutil==5.8.0; extra == "benchmark"
117
+ Requires-Dist: xgboost==1.3.3; extra == "benchmark"
118
+ Requires-Dist: pandas==1.1.4; extra == "benchmark"
35
119
  Provides-Extra: synapse
120
+ Requires-Dist: joblibspark>=0.5.0; extra == "synapse"
121
+ Requires-Dist: optuna<=3.6.1,>=2.8.0; extra == "synapse"
122
+ Requires-Dist: pyspark>=3.2.0; extra == "synapse"
36
123
  Provides-Extra: autozero
37
- License-File: LICENSE
38
- License-File: NOTICE.md
124
+ Requires-Dist: scikit-learn; extra == "autozero"
125
+ Requires-Dist: pandas; extra == "autozero"
126
+ Requires-Dist: packaging; extra == "autozero"
127
+ Dynamic: author
128
+ Dynamic: author-email
129
+ Dynamic: classifier
130
+ Dynamic: description
131
+ Dynamic: description-content-type
132
+ Dynamic: home-page
133
+ Dynamic: license-file
134
+ Dynamic: provides-extra
135
+ Dynamic: requires-dist
136
+ Dynamic: requires-python
137
+ Dynamic: summary
39
138
 
40
139
  [![PyPI version](https://badge.fury.io/py/FLAML.svg)](https://badge.fury.io/py/FLAML)
41
140
  ![Conda version](https://img.shields.io/conda/vn/conda-forge/flaml)
@@ -53,15 +152,9 @@ License-File: NOTICE.md
53
152
  <br>
54
153
  </p>
55
154
 
56
- :fire: FLAML supports AutoML and Hyperparameter Tuning in [Microsoft Fabric Data Science](https://learn.microsoft.com/en-us/fabric/data-science/automated-machine-learning-fabric). In addition, we've introduced Python 3.11 support, along with a range of new estimators, and comprehensive integration with MLflow—thanks to contributions from the Microsoft Fabric product team.
57
-
58
- :fire: Heads-up: We have migrated [AutoGen](https://microsoft.github.io/autogen/) into a dedicated [github repository](https://github.com/microsoft/autogen). Alongside this move, we have also launched a dedicated [Discord](https://discord.gg/pAbnFJrkgZ) server and a [website](https://microsoft.github.io/autogen/) for comprehensive documentation.
155
+ :fire: FLAML supports AutoML and Hyperparameter Tuning in [Microsoft Fabric Data Science](https://learn.microsoft.com/en-us/fabric/data-science/automated-machine-learning-fabric). In addition, we've introduced Python 3.11 and 3.12 support, along with a range of new estimators, and comprehensive integration with MLflow—thanks to contributions from the Microsoft Fabric product team.
59
156
 
60
- :fire: The automated multi-agent chat framework in [AutoGen](https://microsoft.github.io/autogen/) is in preview from v2.0.0.
61
-
62
- :fire: FLAML is highlighted in OpenAI's [cookbook](https://github.com/openai/openai-cookbook#related-resources-from-around-the-web).
63
-
64
- :fire: [autogen](https://microsoft.github.io/autogen/) is released with support for ChatGPT and GPT-4, based on [Cost-Effective Hyperparameter Optimization for Large Language Model Generation Inference](https://arxiv.org/abs/2303.04673).
157
+ :fire: Heads-up: [AutoGen](https://microsoft.github.io/autogen/) has moved to a dedicated [GitHub repository](https://github.com/microsoft/autogen). FLAML no longer includes the `autogen` module—please use AutoGen directly.
65
158
 
66
159
  ## What is FLAML
67
160
 
@@ -69,7 +162,7 @@ FLAML is a lightweight Python library for efficient automation of machine
69
162
  learning and AI operations. It automates workflow based on large language models, machine learning models, etc.
70
163
  and optimizes their performance.
71
164
 
72
- - FLAML enables building next-gen GPT-X applications based on multi-agent conversations with minimal effort. It simplifies the orchestration, automation and optimization of a complex GPT-X workflow. It maximizes the performance of GPT-X models and augments their weakness.
165
+ - FLAML enables economical automation and tuning for ML/AI workflows, including model selection and hyperparameter optimization under resource constraints.
73
166
  - For common machine learning tasks like classification and regression, it quickly finds quality models for user-provided data with low computational resources. It is easy to customize or extend. Users can find their desired customizability from a smooth range.
74
167
  - It supports fast and economical automatic tuning (e.g., inference hyperparameters for foundation models, configurations in MLOps/LMOps workflows, pipelines, mathematical/statistical models, algorithms, computing experiments, software configurations), capable of handling large search space with heterogeneous evaluation cost and complex constraints/guidance/early stopping.
75
168
 
@@ -85,10 +178,10 @@ FLAML requires **Python version >= 3.9**. It can be installed from pip:
85
178
  pip install flaml
86
179
  ```
87
180
 
88
- Minimal dependencies are installed without extra options. You can install extra options based on the feature you need. For example, use the following to install the dependencies needed by the [`autogen`](https://microsoft.github.io/autogen/) package.
181
+ Minimal dependencies are installed without extra options. You can install extra options based on the feature you need. For example, use the following to install the dependencies needed by the [`automl`](https://microsoft.github.io/FLAML/docs/Use-Cases/Task-Oriented-AutoML) module.
89
182
 
90
183
  ```bash
91
- pip install "flaml[autogen]"
184
+ pip install "flaml[automl]"
92
185
  ```
93
186
 
94
187
  Find more options in [Installation](https://microsoft.github.io/FLAML/docs/Installation).
@@ -96,39 +189,6 @@ Each of the [`notebook examples`](https://github.com/microsoft/FLAML/tree/main/n
96
189
 
97
190
  ## Quickstart
98
191
 
99
- - (New) The [autogen](https://microsoft.github.io/autogen/) package enables the next-gen GPT-X applications with a generic multi-agent conversation framework.
100
- It offers customizable and conversable agents which integrate LLMs, tools and human.
101
- By automating chat among multiple capable agents, one can easily make them collectively perform tasks autonomously or with human feedback, including tasks that require using tools via code. For example,
102
-
103
- ```python
104
- from flaml import autogen
105
-
106
- assistant = autogen.AssistantAgent("assistant")
107
- user_proxy = autogen.UserProxyAgent("user_proxy")
108
- user_proxy.initiate_chat(
109
- assistant,
110
- message="Show me the YTD gain of 10 largest technology companies as of today.",
111
- )
112
- # This initiates an automated chat between the two agents to solve the task
113
- ```
114
-
115
- Autogen also helps maximize the utility out of the expensive LLMs such as ChatGPT and GPT-4. It offers a drop-in replacement of `openai.Completion` or `openai.ChatCompletion` with powerful functionalites like tuning, caching, templating, filtering. For example, you can optimize generations by LLM with your own tuning data, success metrics and budgets.
116
-
117
- ```python
118
- # perform tuning
119
- config, analysis = autogen.Completion.tune(
120
- data=tune_data,
121
- metric="success",
122
- mode="max",
123
- eval_func=eval_func,
124
- inference_budget=0.05,
125
- optimization_budget=3,
126
- num_samples=-1,
127
- )
128
- # perform inference for a test instance
129
- response = autogen.Completion.create(context=test_instance, **config)
130
- ```
131
-
132
192
  - With three lines of code, you can start using this economical and fast
133
193
  AutoML engine as a [scikit-learn style estimator](https://microsoft.github.io/FLAML/docs/Use-Cases/Task-Oriented-AutoML).
134
194
 
@@ -150,7 +210,10 @@ automl.fit(X_train, y_train, task="classification", estimator_list=["lgbm"])
150
210
 
151
211
  ```python
152
212
  from flaml import tune
153
- tune.run(evaluation_function, config={…}, low_cost_partial_config={…}, time_budget_s=3600)
213
+
214
+ tune.run(
215
+ evaluation_function, config={…}, low_cost_partial_config={…}, time_budget_s=3600
216
+ )
154
217
  ```
155
218
 
156
219
  - [Zero-shot AutoML](https://microsoft.github.io/FLAML/docs/Use-Cases/Zero-Shot-AutoML) allows using the existing training API from lightgbm, xgboost etc. while getting the benefit of AutoML in choosing high-performance hyperparameter configurations per task.