FLAML 支持 Microsoft Fabric Data Science 中的 AutoML 和超参数调整。此外,我们还引入了 Python 3.11 支持以及一系列新的估计器,以及与 MLflow 的全面集成——这要归功于 Microsoft Fabric 产品团队的贡献。
注意:我们已将 AutoGen 迁移到专用的 github 存储库中。除了这一举措之外,我们还推出了专用的 Discord 服务器和一个提供综合文档的网站。
AutoGen 中的自动化多代理聊天框架从 v2.0.0 开始提供预览版。
OpenAI 的食谱中重点介绍了 FLAML。
autogen 发布,支持 ChatGPT 和 GPT-4,基于用于大型语言模型生成推理的经济高效的超参数优化。
FLAML 是一个轻量级 Python 库,用于高效自动化机器学习和 AI 操作。它基于大型语言模型、机器学习模型等自动化工作流程并优化其性能。
FLAML 可以轻松构建基于多代理对话的下一代 GPT-X 应用程序。它简化了复杂 GPT-X 工作流程的编排、自动化和优化。它最大限度地提高了 GPT-X 模型的性能并弥补了它们的弱点。
对于分类和回归等常见机器学习任务,它可以使用较低的计算资源快速找到用户提供的数据的质量模型。它很容易定制或扩展。用户可以从平滑的范围中找到他们想要的可定制性。
它支持快速且经济的自动调整(例如,基础模型的推理超参数、MLOps/LMOps工作流程中的配置、管道、数学/统计模型、算法、计算实验、软件配置),能够处理具有异构评估成本的大搜索空间和复杂的约束/指导/提前停止。
FLAML 由 Microsoft Research 以及宾夕法尼亚州立大学、史蒂文斯理工学院、华盛顿大学和滑铁卢大学等合作者的一系列研究提供支持。
FLAML 在 ML.NET 中具有 .NET 实现,ML.NET 是 .NET 的开源跨平台机器学习框架。
FLAML 需要Python 版本 >= 3.8 。可以从 pip 安装:
pip 安装 flaml
安装最少的依赖项,无需额外选项。您可以根据需要的功能安装额外的选项。例如,使用以下命令安装autogen
包所需的依赖项。
pip install "flaml[autogen]"
在安装中找到更多选项。每个notebook examples
可能需要安装特定的选项。
(新)autogen 包支持具有通用多代理对话框架的下一代 GPT-X 应用程序。它提供可定制和可对话的代理,集成了法学硕士、工具和人员。通过在多个有能力的代理之间自动进行聊天,人们可以轻松地让他们自主地或根据人工反馈集体执行任务,包括需要通过代码使用工具的任务。例如,
from flaml import autogenassistant = autogen.AssistantAgent("assistant")user_proxy = autogen.UserProxyAgent("user_proxy")user_proxy.initiate_chat(assistant,message="显示截至今天 10 家最大科技公司的年初至今收益。", )# 这会在两个代理之间启动自动聊天来解决任务
Autogen 还有助于最大限度地提高 ChatGPT 和 GPT-4 等昂贵的法学硕士的效用。它提供了openai.Completion
或openai.ChatCompletion
的直接替代品,具有强大的功能,如调整、缓存、模板、过滤。例如,您可以通过 LLM 使用您自己的调整数据、成功指标和预算来优化生成。
# 执行调整配置,analysis = autogen.Completion.tune(data=tune_data,metric="success",mode="max",eval_func=eval_func,inference_budget=0.05,optimization_budget=3,num_samples=-1, )# 对测试实例执行推理response = autogen.Completion.create(context=test_instance, **config)
只需三行代码,您就可以开始使用这个经济且快速的 AutoML 引擎作为 scikit-learn 风格的估计器。
from flaml import AutoMLautoml = AutoML()automl.fit(X_train, y_train, 任务=“分类”)
您可以限制学习器并使用 FLAML 作为 XGBoost、LightGBM、随机森林等的快速超参数调整工具或自定义学习器。
automl.fit(X_train, y_train, 任务=“分类”, estimator_list=[“lgbm”])
您还可以对自定义函数运行通用超参数调整。
from flaml import tuunetune.run(evaluation_function, config={…}, low_cost_partial_config={…}, time_budget_s=3600)
零样本 AutoML 允许使用 lightgbm、xgboost 等现有的训练 API,同时在为每个任务选择高性能超参数配置方面获得 AutoML 的优势。
from flaml.default import LGBMRegressor# 使用 LGBMRegressor 的方式与使用 lightgbm.LGBMRegressor.estimator = LGBMRegressor()# 根据训练数据自动设置超参数.estimator.fit(X_train, y_train)
您可以在此处找到有关 FLAML 的详细文档。
此外,您还可以找到:
围绕 FLAML 的研究和博客文章。
不和谐。
贡献指南。
适用于模型生成器、ML.NET CLI 和 AutoML API 的 ML.NET 文档和教程。
该项目欢迎贡献和建议。大多数贡献都要求您同意贡献者许可协议 (CLA),声明您有权并且实际上授予我们使用您的贡献的权利。有关详细信息,请访问 https://cla.opensource.microsoft.com。
如果您是 GitHub 新手,这里有关于参与 GitHub 开发的详细帮助资源。
当您提交拉取请求时,CLA 机器人将自动确定您是否需要提供 CLA 并适当地修饰 PR(例如,状态检查、评论)。只需按照机器人提供的说明进行操作即可。您只需使用我们的 CLA 在所有存储库中执行一次此操作。
该项目采用了微软开源行为准则。有关详细信息,请参阅行为准则常见问题解答或联系 [email protected] 提出任何其他问题或意见。