| *每个实验都是神圣的*
| *每个实验都是伟大的*
| *如果一个实验被浪费了*
| *上帝会非常恼火*
|pypi| |py_versions| |license| |rtfd| |doi|
|build| |coverage| |code_quality| |black|
Sacred是一个帮助你配置、组织、记录和重现实验的工具。它旨在完成你在实际实验周围需要做的所有繁琐的工作,以便:
Sacred通过以下主要机制实现这些目标:
+------------------------------------------------+--------------------------------------------+ | 在鸢尾花数据集上训练SVM的脚本 | 同样的脚本作为Sacred实验 | +------------------------------------------------+--------------------------------------------+ | .. code:: python | .. code:: python | | | | | from numpy.random import permutation | from numpy.random import permutation | | from sklearn import svm, datasets | from sklearn import svm, datasets | | | from sacred import Experiment | | | ex = Experiment('iris_rbf_svm') | | | | | | @ex.config | | | def cfg(): | | C = 1.0 | C = 1.0 | | gamma = 0.7 | gamma = 0.7 | | | | | | @ex.automain | | | def run(C, gamma): | | iris = datasets.load_iris() | iris = datasets.load_iris() | | perm = permutation(iris.target.size) | per = permutation(iris.target.size) | | iris.data = iris.data[perm] | iris.data = iris.data[per] | | iris.target = iris.target[perm] | iris.target = iris.target[per] | | clf = svm.SVC(C=C, kernel='rbf', | clf = svm.SVC(C=C, kernel='rbf', | | gamma=gamma) | gamma=gamma) | | clf.fit(iris.data[:90], | clf.fit(iris.data[:90], | | iris.target[:90]) | iris.target[:90]) | | print(clf.score(iris.data[90:], | return clf.score(iris.data[90:], | | iris.target[90:])) | iris.target[90:]) | +------------------------------------------------+--------------------------------------------+
文档托管在 ReadTheDocs <http://sacred.readthedocs.org/>_。
你可以直接用pip从Python包索引安装:
pip install sacred
或者如果你想手动安装,你可以从git检出当前版本并自行安装:
| git clone https://github.com/IDSIA/sacred.git | cd sacred | python setup.py install
你可能还想安装 numpy 和 pymongo 包。它们是可选的依赖项,但提供了一些很酷的功能:
pip install numpy pymongo
Sacred的测试使用 pytest <http://pytest.org/latest/>_ 包。
你可以在sacred目录中运行 pytest 来执行它们,像这样:
pytest
还有一个 tox <https://tox.readthedocs.io/en/latest/>_ 的配置文件,所以你可以自动运行各种Python版本的测试,像这样:
tox
更新pytest版本 +++++++++++++++++++++
如果你更新或更改pytest版本,需要更改以下文件:
dev-requirements.txttox.initest/test_utils.pysetup.py如果你发现bug、有功能请求或想讨论一些一般问题,欢迎开一个
issue <https://github.com/IDSIA/sacred/issues>。如果你有与Sacred使用相关的具体问题,请在
python-sacred标签 <https://stackoverflow.com/questions/tagged/python-sacred> 下在StackOverflow上提问。我们非常重视文档。
如果你发现应该包含在文档中的内容,请记录下来或让我们知道缺少什么。如果你在项目中使用Sacred并想与他人分享你的代码,
请将你的仓库放在 使用Sacred的项目 <docs/projects_using_sacred.rst>_ 列表中。
非常欢迎提交拉取请求!
目前有三个Sacred创建的数据库条目的前端(据我所知)。 它们作为单独的项目在外部开发。
Omniboard <https://github.com/vivekratnavel/omniboard>_
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
.. image:: docs/images/omniboard-table.png
.. image:: docs/images/omniboard-metric-graphs.png
Omniboard是一个网络仪表板,有助于可视化Sacred收集的实验和指标/日志。 Omniboard是用React、Node.js、Express和Bootstrap编写的。
Incense <https://github.com/JarnoRFB/incense>_
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
.. image:: docs/images/incense-artifact.png
.. image:: docs/images/incense-metric.png
Incense是一个Python库,用于检索存储在MongoDB中的运行,并在Jupyter笔记本中交互式显示指标和工件。
Sacredboard <https://github.com/chovanecm/sacredboard>_
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
.. image:: docs/images/sacredboard.png
Sacredboard是一个基于网络的仪表板界面,用于访问存储在MongoDB中的Sacred运行。
Neptune <https://neptune.ai/>_
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
.. image:: docs/images/neptune-compare.png
.. image:: docs/images/neptune-collaboration.png
Neptune是一个面向MLOps的元数据存储,为运行大量实验的团队而构建。 它为你提供了一个单一的地方来记录、存储、显示、组织、比较和查询所有模型构建元数据,通过可用于Python和R编程语言的API:
.. image:: docs/images/neptune-query-api.png
要将你的Sacred实验记录到Neptune,你只需添加一个观察者:
.. code-block:: python
from neptune.new.integrations.sacred import NeptuneObserver
ex.observers.append(NeptuneObserver(api_token='<YOUR_API_TOKEN>',
project='<YOUR_WORKSPACE/YOUR_PROJECT>'))
更多信息,请查看 Neptune + Sacred集成指南 <https://docs.neptune.ai/integrations-and-supported-tools/experiment-tracking/sacred>_。
SacredBrowser <https://github.com/michaelwand/SacredBrowser>_
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
.. image:: docs/images/sacred_browser.png
SacredBrowser是一个PyQt4应用程序,用于浏览Sacred实验创建的MongoDB条目。 功能包括自定义查询、结果排序、访问存储的源代码等等。 不需要安装,可以连接到本地数据库或通过网络连接。
Prophet <https://github.com/Qwlouse/prophet>_
+++++++++++++++++++++++++++++++++++++++++++++++
Prophet是Sacred实验创建的MongoDB条目的网络界面的早期原型,已停止开发。
它要求你运行 RestHeart <http://restheart.org>_ 来访问数据库。
Sumatra <https://pythonhosted.org/Sumatra/>_
++++++++++++++++++++++++++++++++++++++++++++++
| Sumatra是一个用于管理和跟踪基于数值模拟和/或分析的项目的工具,
| 旨在支持可重复研究。
| 它可以被视为计算项目的自动电子实验室笔记本。
Sumatra采用不同的方法,提供命令行工具来初始化项目并运行任意代码(不仅限于Python)。它在SQL数据库中跟踪所有运行的信息,甚至提供了一个不错的浏览器工具。它与要运行的代码集成较少,这使得它易于应用于非Python实验。但这也意味着每个实验都需要更多的设置,配置需要通过文件完成。如果您需要运行非Python实验,或者可以接受额外的设置/配置开销,请使用这个项目。
未来道具研究所 +++++++++++++++
未来道具研究所是一个机器学习仪表板,旨在使实验原型设计更容易。实验详情和结果被发送到数据库,这允许在实验完成后进行分析。服务器是FGLab,客户端是FGMachines。
与Sumatra类似,FGLab是一个外部工具,可以跟踪任何程序的运行。项目通过JSON模式配置,程序需要通过命令行选项接受这些配置。FGLab还通过在多台机器上分配运行来扮演基本调度程序的角色。
该项目根据MIT许可证的条款发布。
K. Greff, A. Klein, M. Chovanec, F. Hutter, and J. Schmidhuber, 'The Sacred Infrastructure for Computational Research', in Proceedings of the 15th Python in Science Conference (SciPy 2017), Austin, Texas, 2017, pp. 49–56.


AI赋能电商视觉革命,一站式智能商 拍平台
潮际好麦深耕服装行业,是国内AI试衣效果最好的软件。使用先进AIGC能力为电商卖家批量提供优质的、低成本的商拍图。合作品牌有Shein、Lazada、安踏、百丽等65个国内外头部品牌,以及国内10万+淘宝、天猫、京东等主流平台的品牌商家,为卖家节省将近85%的出图成本,提升约3倍出图效率,让品牌能够快速上架。


企业专属的AI法律顾问
iTerms是法大大集团旗下法律子品牌,基于最先进的大语言模型(LLM)、专业的法律知识库和强大的智能体架构,帮助企业扫清合规障碍,筑牢风控防线,成为您企业专属的AI法律顾问。


稳定高效的流量提升解决方案,助力品牌曝光
稳定高效的流量提升解决方案,助力品牌曝光


最新版Sora2模型免费使用,一键生成无水印视频
最新版Sora2模型免费使用,一键生成无水印视频


实时语音翻译/同声传译工具
Transly是一个多场景的AI大语言模型驱动的同声传译、专业翻译助手,它拥有超精准的音频识别翻译能力,几乎零延迟的使用体验和支持多国语言可以让你带它走遍全球,无论你是留学生、商务人士、韩剧美剧爱好者,还是出国游玩、多国会议、跨国追星等等,都可以满足你所有需要同传的场景需求,线上线下通 用,扫除语言障碍,让全世界的语言交流不再有国界。


选题、配图、成文,一站式创作,让内容运营更高效
讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。


AI辅助编程,代码自动修复
Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。


最强AI数据分析助手
小浣熊家族Raccoon,您的AI智能助手,致力于通过先进的人工智能技术,为用户提供高效、便捷的智能服务。无论是日常咨询还是专业问题解答,小浣熊都能以快速、准确的响应满足您的需求,让您的生活更加智能便捷。


像人一样思考的AI智能体
imini 是一款超级AI智能体,能根据人类指令,自主思考、自主完成、并且交付结果的AI智能体。


AI数字人视频创作平台
Keevx 一款开箱即用的AI数字人视频创作平台,广泛适用于电商广告、企业培训与社媒宣传,让全球企业与个人创作者无需拍摄剪辑,就能快速生成多语言、高质量的专业视频。
最新AI工具、AI资讯
独家AI资源、AI项目落地

微信扫一扫关注公众号