pyAgrum
=======
``pyAgrum`` is a scientific C++ and Python library dedicated to Bayesian Networks and other Probabilistic Graphical Models. It provides a high-level interface to the part of aGrUM allowing to create, model, learn, use, calculate with and embed Bayesian Networks and other graphical models. Some specific (python and C++) codes are added in order to simplify and extend the ``aGrUM`` API.
Example
=======
.. code:: python
import pyAgrum as gum
# Creating BayesNet with 4 variables
bn=gum.BayesNet('WaterSprinkler')
print(bn)
# Adding nodes the long way
c=bn.add(gum.LabelizedVariable('c','cloudy ?',["Yes","No"]))
print(c)
# Adding nodes the short way
s, r, w = [ bn.add(name, 2) for name in "srw" ]
print (s,r,w)
print (bn)
# Addings arcs c -> s, c -> r, s -> w, r -> w
bn.addArc(c,s)
for link in [(c,r),(s,w),(r,w)]:
bn.addArc(*link)
print(bn)
# or, equivalenlty, creating the BN with 4 variables, and the arcs in one line
bn=gum.fastBN("w<-r<-c{Yes|No}->s->w")
# Filling CPTs
bn.cpt("c").fillWith([0.5,0.5])
bn.cpt("s")[0,:]=0.5 # equivalent to [0.5,0.5]
bn.cpt("s")[{"c":1}]=[0.9,0.1]
bn.cpt("w")[0,0,:] = [1, 0] # r=0,s=0
bn.cpt("w")[0,1,:] = [0.1, 0.9] # r=0,s=1
bn.cpt("w")[{"r":1,"s":0}] = [0.1, 0.9] # r=1,s=0
bn.cpt("w")[1,1,:] = [0.01, 0.99] # r=1,s=1
bn.cpt("r")[{"c":0}]=[0.8,0.2]
bn.cpt("r")[{"c":1}]=[0.2,0.8]
# Saving BN as a BIF file
gum.saveBN(bn,"WaterSprinkler.bif")
# Loading BN from a BIF file
bn2=gum.loadBN("WaterSprinkler.bif")
# Inference
ie=gum.LazyPropagation(bn)
ie.makeInference()
print (ie.posterior("w"))
# Adding hard evidence
ie.setEvidence({"s": 1, "c": 0})
ie.makeInference()
print(ie.posterior("w"))
# Adding soft and hard evidence
ie.setEvidence({"s": [0.5, 1], "c": 0})
ie.makeInference()
print(ie.posterior("w"))
LICENSE
=======
Copyright (C) 2005-2024 by Pierre-Henri WUILLEMIN et Christophe GONZALES
{prenom.nom}_at_lip6.fr
The aGrUM/pyAgrum library and all its derivatives are distributed under the LGPL3 license, see https://www.gnu.org/licenses/lgpl-3.0.en.html.
Authors
=======
- Pierre-Henri Wuillemin
- Christophe Gonzales
Maintainers
===========
- Lionel Torti
- Gaspard Ducamp
Raw data
{
"_id": null,
"home_page": "https://agrum.gitlab.io/",
"name": "pyAgrum-nightly",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": "probabilities probabilistic-graphical-models inference diagnosis",
"author": "Pierre-Henri Wuillemin and Christophe Gonzales",
"author_email": "info@agrum.org",
"download_url": null,
"platform": "any",
"description": "\npyAgrum\n=======\n\n``pyAgrum`` is a scientific C++ and Python library dedicated to Bayesian Networks and other Probabilistic Graphical Models. It provides a high-level interface to the part of aGrUM allowing to create, model, learn, use, calculate with and embed Bayesian Networks and other graphical models. Some specific (python and C++) codes are added in order to simplify and extend the ``aGrUM`` API.\n\nExample\n=======\n\n.. code:: python\n\n import pyAgrum as gum\n\n # Creating BayesNet with 4 variables\n bn=gum.BayesNet('WaterSprinkler')\n print(bn)\n\n # Adding nodes the long way\n c=bn.add(gum.LabelizedVariable('c','cloudy ?',[\"Yes\",\"No\"]))\n print(c)\n\n # Adding nodes the short way\n s, r, w = [ bn.add(name, 2) for name in \"srw\" ]\n print (s,r,w)\n print (bn)\n\n # Addings arcs c -> s, c -> r, s -> w, r -> w\n bn.addArc(c,s)\n for link in [(c,r),(s,w),(r,w)]:\n bn.addArc(*link)\n print(bn)\n\n # or, equivalenlty, creating the BN with 4 variables, and the arcs in one line\n bn=gum.fastBN(\"w<-r<-c{Yes|No}->s->w\")\n\n # Filling CPTs\n bn.cpt(\"c\").fillWith([0.5,0.5])\n bn.cpt(\"s\")[0,:]=0.5 # equivalent to [0.5,0.5]\n bn.cpt(\"s\")[{\"c\":1}]=[0.9,0.1]\n bn.cpt(\"w\")[0,0,:] = [1, 0] # r=0,s=0\n bn.cpt(\"w\")[0,1,:] = [0.1, 0.9] # r=0,s=1\n bn.cpt(\"w\")[{\"r\":1,\"s\":0}] = [0.1, 0.9] # r=1,s=0\n bn.cpt(\"w\")[1,1,:] = [0.01, 0.99] # r=1,s=1\n bn.cpt(\"r\")[{\"c\":0}]=[0.8,0.2]\n bn.cpt(\"r\")[{\"c\":1}]=[0.2,0.8]\n\n # Saving BN as a BIF file\n gum.saveBN(bn,\"WaterSprinkler.bif\")\n\n # Loading BN from a BIF file\n bn2=gum.loadBN(\"WaterSprinkler.bif\")\n\n # Inference\n ie=gum.LazyPropagation(bn)\n ie.makeInference()\n print (ie.posterior(\"w\"))\n\n # Adding hard evidence\n ie.setEvidence({\"s\": 1, \"c\": 0})\n ie.makeInference()\n print(ie.posterior(\"w\"))\n\n # Adding soft and hard evidence\n ie.setEvidence({\"s\": [0.5, 1], \"c\": 0})\n ie.makeInference()\n print(ie.posterior(\"w\"))\n\nLICENSE\n=======\n\nCopyright (C) 2005-2024 by Pierre-Henri WUILLEMIN et Christophe GONZALES\n{prenom.nom}_at_lip6.fr\n\nThe aGrUM/pyAgrum library and all its derivatives are distributed under the LGPL3 license, see https://www.gnu.org/licenses/lgpl-3.0.en.html.\n\nAuthors\n=======\n\n- Pierre-Henri Wuillemin\n- Christophe Gonzales\n\nMaintainers\n===========\n\n- Lionel Torti\n- Gaspard Ducamp\n",
"bugtrack_url": null,
"license": "LGPLv3",
"summary": "Bayesian networks and other Probabilistic Graphical Models.",
"version": "1.16.0.dev202410131727562243",
"project_urls": {
"Bug Tracker": "https://gitlab.com/agrumery/aGrUM/-/issues",
"Documentation": "https://pyagrum.readthedocs.io/",
"Homepage": "https://agrum.gitlab.io/",
"Source Code": "https://gitlab.com/agrumery/aGrUM"
},
"split_keywords": [
"probabilities",
"probabilistic-graphical-models",
"inference",
"diagnosis"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "5430e280f765d0b60e67224c927803acd987a9591aaac178c0c39f1f2ef51896",
"md5": "6a1976190407aff7cfa86583f7375eea",
"sha256": "8ff82f8b41f071ffc467c24c0934abaa33bcfba48cefbcce4fd0098526674706"
},
"downloads": -1,
"filename": "pyAgrum_nightly-1.16.0.dev202410131727562243-cp310-cp310-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "6a1976190407aff7cfa86583f7375eea",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": null,
"size": 4833986,
"upload_time": "2024-10-13T01:29:23",
"upload_time_iso_8601": "2024-10-13T01:29:23.076071Z",
"url": "https://files.pythonhosted.org/packages/54/30/e280f765d0b60e67224c927803acd987a9591aaac178c0c39f1f2ef51896/pyAgrum_nightly-1.16.0.dev202410131727562243-cp310-cp310-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "75ff49660b749d2318dc634c50c583301489331e309c5eea1208ab187e9cff55",
"md5": "95bc6481f759631b106d76395a818875",
"sha256": "83195152f0448eaa1b6a380086b8bfc6259c397afb621b283cd90f6694c1547c"
},
"downloads": -1,
"filename": "pyAgrum_nightly-1.16.0.dev202410131727562243-cp310-cp310-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "95bc6481f759631b106d76395a818875",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": null,
"size": 4304252,
"upload_time": "2024-10-13T01:29:26",
"upload_time_iso_8601": "2024-10-13T01:29:26.747790Z",
"url": "https://files.pythonhosted.org/packages/75/ff/49660b749d2318dc634c50c583301489331e309c5eea1208ab187e9cff55/pyAgrum_nightly-1.16.0.dev202410131727562243-cp310-cp310-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "856431f1ddfcad98cd4dc8554f9bb37ff7f98744389ef925b0e03a9f3d923909",
"md5": "b677ae13abef54c7c17568b6e50b6a88",
"sha256": "74caab206d5390d647271523bbe24e302b5e6002e1c9c1f1ce5ea273e8fe8377"
},
"downloads": -1,
"filename": "pyAgrum_nightly-1.16.0.dev202410131727562243-cp310-cp310-manylinux2014_aarch64.whl",
"has_sig": false,
"md5_digest": "b677ae13abef54c7c17568b6e50b6a88",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": null,
"size": 5530481,
"upload_time": "2024-10-13T01:29:28",
"upload_time_iso_8601": "2024-10-13T01:29:28.788773Z",
"url": "https://files.pythonhosted.org/packages/85/64/31f1ddfcad98cd4dc8554f9bb37ff7f98744389ef925b0e03a9f3d923909/pyAgrum_nightly-1.16.0.dev202410131727562243-cp310-cp310-manylinux2014_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "87fb07144919d149605166a01c7d82c5bf04c7226071a28fb3baa8202812c1b3",
"md5": "cc5f6977b2fc57f87adc5a168301d7a2",
"sha256": "c971af1c8251995fb274b42a124f74f683c2c2b606e022495671bfe3f6760428"
},
"downloads": -1,
"filename": "pyAgrum_nightly-1.16.0.dev202410131727562243-cp310-cp310-manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "cc5f6977b2fc57f87adc5a168301d7a2",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": null,
"size": 5985260,
"upload_time": "2024-10-13T01:29:30",
"upload_time_iso_8601": "2024-10-13T01:29:30.878523Z",
"url": "https://files.pythonhosted.org/packages/87/fb/07144919d149605166a01c7d82c5bf04c7226071a28fb3baa8202812c1b3/pyAgrum_nightly-1.16.0.dev202410131727562243-cp310-cp310-manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3a44699d0725e9fbae2e1cd46de8ca2fc352b575fa5c3a08a8f2fa1ae8a2f753",
"md5": "fc3ab51a1b8d023fb6c6bc67fde399e7",
"sha256": "21a8471ac81c41510ff06376bd5d01fb95013fb005e20e086484d0cde6ccc9c3"
},
"downloads": -1,
"filename": "pyAgrum_nightly-1.16.0.dev202410131727562243-cp310-cp310-win_amd64.whl",
"has_sig": false,
"md5_digest": "fc3ab51a1b8d023fb6c6bc67fde399e7",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": null,
"size": 2755753,
"upload_time": "2024-10-13T01:29:33",
"upload_time_iso_8601": "2024-10-13T01:29:33.528314Z",
"url": "https://files.pythonhosted.org/packages/3a/44/699d0725e9fbae2e1cd46de8ca2fc352b575fa5c3a08a8f2fa1ae8a2f753/pyAgrum_nightly-1.16.0.dev202410131727562243-cp310-cp310-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "89b3ac0e6f4bbc8a4b806e22cdc74336cdd7fcda2b4fddecdaf71277631a85c8",
"md5": "8ae0d3a4cbe21d3a750a50122f200a32",
"sha256": "491aaaf3808b93d2461c70d0fce921967569524537f4061d3e498c942ee96435"
},
"downloads": -1,
"filename": "pyAgrum_nightly-1.16.0.dev202410131727562243-cp311-cp311-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "8ae0d3a4cbe21d3a750a50122f200a32",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": null,
"size": 4833986,
"upload_time": "2024-10-13T01:29:35",
"upload_time_iso_8601": "2024-10-13T01:29:35.371796Z",
"url": "https://files.pythonhosted.org/packages/89/b3/ac0e6f4bbc8a4b806e22cdc74336cdd7fcda2b4fddecdaf71277631a85c8/pyAgrum_nightly-1.16.0.dev202410131727562243-cp311-cp311-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "86463f89d16dfdb09eba48ea6e301b4492b813f3e2718f690e92453927227272",
"md5": "a3f75aad1fd8da674a63a303e3f34c25",
"sha256": "06128fcdb4324f5b6644ce8ed0b167114bf0ba9496b31c0b0e3b544a61fa0bfb"
},
"downloads": -1,
"filename": "pyAgrum_nightly-1.16.0.dev202410131727562243-cp311-cp311-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "a3f75aad1fd8da674a63a303e3f34c25",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": null,
"size": 4304250,
"upload_time": "2024-10-13T01:29:38",
"upload_time_iso_8601": "2024-10-13T01:29:38.203024Z",
"url": "https://files.pythonhosted.org/packages/86/46/3f89d16dfdb09eba48ea6e301b4492b813f3e2718f690e92453927227272/pyAgrum_nightly-1.16.0.dev202410131727562243-cp311-cp311-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c9f5c306606638bb6c3597d375f4614f557c2fd87db9e20dfc181e0ffac50ef5",
"md5": "33b118e446999fb541e54457d3bce54d",
"sha256": "ee595064c791b1fb1bb4a360dee7cfc9ed911a378d697a9a620da07e7111c00b"
},
"downloads": -1,
"filename": "pyAgrum_nightly-1.16.0.dev202410131727562243-cp311-cp311-manylinux2014_aarch64.whl",
"has_sig": false,
"md5_digest": "33b118e446999fb541e54457d3bce54d",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": null,
"size": 5530766,
"upload_time": "2024-10-13T01:29:40",
"upload_time_iso_8601": "2024-10-13T01:29:40.022212Z",
"url": "https://files.pythonhosted.org/packages/c9/f5/c306606638bb6c3597d375f4614f557c2fd87db9e20dfc181e0ffac50ef5/pyAgrum_nightly-1.16.0.dev202410131727562243-cp311-cp311-manylinux2014_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "078688c4ac65411edde1a6b599d255dccfefa15932c499407cacdc09ebc53580",
"md5": "a403331f0eb502a973054df4d8bc31e1",
"sha256": "633f5e3d3be67f18bfa2655f3a06992bcee1d25062dd370420ae59141b23781d"
},
"downloads": -1,
"filename": "pyAgrum_nightly-1.16.0.dev202410131727562243-cp311-cp311-manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "a403331f0eb502a973054df4d8bc31e1",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": null,
"size": 5985275,
"upload_time": "2024-10-13T01:29:41",
"upload_time_iso_8601": "2024-10-13T01:29:41.861816Z",
"url": "https://files.pythonhosted.org/packages/07/86/88c4ac65411edde1a6b599d255dccfefa15932c499407cacdc09ebc53580/pyAgrum_nightly-1.16.0.dev202410131727562243-cp311-cp311-manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c80985219ac6148dc413a014adddb4330fb4b66280163e569b61821fb65f27e1",
"md5": "ba81c8a5acc8baa510a05b433de748a0",
"sha256": "e02dbdd251f179f309660583b21f0b60b5cb90c3943874218ae9351c6a08026f"
},
"downloads": -1,
"filename": "pyAgrum_nightly-1.16.0.dev202410131727562243-cp311-cp311-win_amd64.whl",
"has_sig": false,
"md5_digest": "ba81c8a5acc8baa510a05b433de748a0",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": null,
"size": 2756279,
"upload_time": "2024-10-13T01:29:44",
"upload_time_iso_8601": "2024-10-13T01:29:44.558662Z",
"url": "https://files.pythonhosted.org/packages/c8/09/85219ac6148dc413a014adddb4330fb4b66280163e569b61821fb65f27e1/pyAgrum_nightly-1.16.0.dev202410131727562243-cp311-cp311-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3799423c46502f34192ba969892d4db55291dff376e54e380f2535c9a34643f5",
"md5": "9e6f64c2ce391f7db9baca263ccee950",
"sha256": "1591fb35fd2e22dec9eb2568168ea4192ef8c1f3682b4aa4cdf1e8e829266e18"
},
"downloads": -1,
"filename": "pyAgrum_nightly-1.16.0.dev202410131727562243-cp312-cp312-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "9e6f64c2ce391f7db9baca263ccee950",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": null,
"size": 4841612,
"upload_time": "2024-10-13T01:29:47",
"upload_time_iso_8601": "2024-10-13T01:29:47.356453Z",
"url": "https://files.pythonhosted.org/packages/37/99/423c46502f34192ba969892d4db55291dff376e54e380f2535c9a34643f5/pyAgrum_nightly-1.16.0.dev202410131727562243-cp312-cp312-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b2a3729ca9f45b2d427cd6ae127a6b84b4b068453c1765deb31ebe81067baf39",
"md5": "a536fd38b8e3d12ea4211126869fff91",
"sha256": "4c01f46fff71f85495d55183903fcaa97ec3f9cfd280a3dfa591a9b2ab719d14"
},
"downloads": -1,
"filename": "pyAgrum_nightly-1.16.0.dev202410131727562243-cp312-cp312-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "a536fd38b8e3d12ea4211126869fff91",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": null,
"size": 4308050,
"upload_time": "2024-10-13T01:29:49",
"upload_time_iso_8601": "2024-10-13T01:29:49.350744Z",
"url": "https://files.pythonhosted.org/packages/b2/a3/729ca9f45b2d427cd6ae127a6b84b4b068453c1765deb31ebe81067baf39/pyAgrum_nightly-1.16.0.dev202410131727562243-cp312-cp312-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "43db7ebf50a9d2fa2e7f9c44f06774b2dd4842e4f1a2f92499cceafaee201a32",
"md5": "10d04388d92748a7ad380681a660b916",
"sha256": "121c2e93782a0f4b8c70d9e875139c4539cb70992fb4ec0cbd278229fe465b8b"
},
"downloads": -1,
"filename": "pyAgrum_nightly-1.16.0.dev202410131727562243-cp312-cp312-manylinux2014_aarch64.whl",
"has_sig": false,
"md5_digest": "10d04388d92748a7ad380681a660b916",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": null,
"size": 5529391,
"upload_time": "2024-10-13T01:29:51",
"upload_time_iso_8601": "2024-10-13T01:29:51.354323Z",
"url": "https://files.pythonhosted.org/packages/43/db/7ebf50a9d2fa2e7f9c44f06774b2dd4842e4f1a2f92499cceafaee201a32/pyAgrum_nightly-1.16.0.dev202410131727562243-cp312-cp312-manylinux2014_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "9d1d70cb43ed522da348f2766db2ba6322b5434c9dff503a38245b167af766a1",
"md5": "30be54c4100b1ae09d026b160ca0664a",
"sha256": "d977e2e2fe50f416d0b4be8a831f2ac8841148d3549a9b0801a948dac6add691"
},
"downloads": -1,
"filename": "pyAgrum_nightly-1.16.0.dev202410131727562243-cp312-cp312-manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "30be54c4100b1ae09d026b160ca0664a",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": null,
"size": 5984488,
"upload_time": "2024-10-13T01:29:54",
"upload_time_iso_8601": "2024-10-13T01:29:54.246330Z",
"url": "https://files.pythonhosted.org/packages/9d/1d/70cb43ed522da348f2766db2ba6322b5434c9dff503a38245b167af766a1/pyAgrum_nightly-1.16.0.dev202410131727562243-cp312-cp312-manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "52697587b859decdff851eaa3386592f7864306704919b19a3fecd624226c43c",
"md5": "fef94ff0a385b8031780cca70aef4ded",
"sha256": "0411f30a1d999895571bccee9e882b5cde0b0c20ab5a9f26844e1dde57010114"
},
"downloads": -1,
"filename": "pyAgrum_nightly-1.16.0.dev202410131727562243-cp312-cp312-win_amd64.whl",
"has_sig": false,
"md5_digest": "fef94ff0a385b8031780cca70aef4ded",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": null,
"size": 2757703,
"upload_time": "2024-10-13T01:29:57",
"upload_time_iso_8601": "2024-10-13T01:29:57.163784Z",
"url": "https://files.pythonhosted.org/packages/52/69/7587b859decdff851eaa3386592f7864306704919b19a3fecd624226c43c/pyAgrum_nightly-1.16.0.dev202410131727562243-cp312-cp312-win_amd64.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-13 01:29:23",
"github": false,
"gitlab": true,
"bitbucket": false,
"codeberg": false,
"gitlab_user": "agrumery",
"gitlab_project": "aGrUM",
"lcname": "pyagrum-nightly"
}