AI Decision System
Replayable, offline-verifiable records for AI-assisted go/no-go decisions: experiment promotions, typed model answers and human-approved actions.
베이지안·마코프 네트워크 등 강력한 확률 그래프 도구 제공, 고성능 확률 추론을 원하는 연구자·개발자용
Explore our powerful tools for Bayesian Networks, Markov Networks, and more. Designed for researchers and developers seeking high-performance probabilistic reasoning.
개발 도구Jupyter Notebook · C++GitHub @agrumery온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기This repository is a mirror. If you want to raise an issue or contact us, we encourage you to do it on Gitlab (https://gitlab.com/agrumery/aGrUM).
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
[ ] [ ] [ ] [ ] [ ]
aGrUM is a fast and powerful C++ library for developing applications based on graphical models such as Bayesian
networks, influence diagrams, decision trees, GAI networks, and Markov decision processes. It provides fundamental
building blocks for tasks such as:
• Graphical model learning/elicitation
• Probabilistic inference with graphical models
• Planning and decision-makingREADME 전문 보기 ↗[] [] [] [] []
aGrUM is a fast and powerful C++ library for developing applications based on graphical models such as Bayesian networks, influence diagrams, decision trees, GAI networks, and Markov decision processes. It provides fundamental building blocks for tasks such as:
pyAgrum is a Python wrapper for the C++ aGrUM library (built using SWIG). It offers a high-level interface to simplify the creation, modeling, learning, inference, and embedding of Bayesian Networks and other graphical models. Additionally, it includes extensions for:
Choose the path that best matches your goal:
pyAgrum from Python → see Quick Start and the wrappers/pyAgrum documentation./src.Install pyAgrum via pip or conda:
pip install pyagrum
conda install -c conda-forge pyagrum
aGrUM is designed to minimize external dependencies in its C++ codebase. All essential dependencies are included in the source code. The external libraries currently used by aGrUM are:
The Python wrapper pyAgrum introduces additional dependencies. These are managed separately and specified in the following files:
requirements.txt: Mandatory dependenciesoptional_requirements.txt: Optional dependencies for advanced featuresFor most users, installation via pip or conda will automatically handle these dependencies.
The project is organized as follows:
/acttools # aGrUM Compiler Tool (ACT) implementation
/apps # Application examples using aGrUM or pyAgrum
/src # aGrUM's C++ source code
/wrappers # Wrappers for aGrUM (Python, Java, etc.)
/src/agrum: Core C++ library/wrappers/pyAgrum: pyAgrum files, including tests and Sphinx documentation/src/docs: aGrUM documentation/src/testunits: Unit testsaGrUM was initially developed to support the research of the Graphical Models and Decision team at LIP6. Over time, it evolved into a comprehensive open-source library to aid both research and practical applications in decision support and data science.
Key design principles include:
For more details, visit the aGrUM feature list.
To make aGrUM more accessible, various wrappers have been developed, including:
Wrappers are built using SWIG.
The recommended build tool is ACT (aGrUM Compilation Tool). It requires Python (≥ 3.9) and platform-specific tools:
act [target] [version] [action]
aGrUM, pyAgrum, jAgrumrelease, debuginstall, uninstall, test, lib, doc, wheel, etc.Example:
act test release pyAgrum
For more details, run act --help.
We welcome contributions! Please fork the repository, make your changes, and submit a merge request.
Note: Contributors must sign a contribution policy before their changes can be merged.
This section provides practical guidance for contributing to the aGrUM/pyAgrum project.
Style and standards
Commits and branches
Pull Requests / Merge Requests
Tests
/src/testunits and Python/pyAgrum tests in wrappers/pyAgrum following the repository
structure.act test
act test release pyAgrum
Documentation
pyAgrum, C++ docs in /src/docs) and example notebooks when needed.Wrappers and SWIG
wrappers/ and verify the Python bindings.API compatibility and versioning
Code review
Support and communication
Every commit is tested (with several compilers) on:
22.04, x84-64)15.x, x86-64 & ARM)11, x84-64)The CI pipeline builds and tests both aGrUM and pyAgrum to ensure cross-platform stability.
Run C++ tests with the act test command:
# Run all C++ tests
act test release aGrUM
# Run specific modules (BASE, BN, MRF, CN, ID, CM, FMDP)
act test release aGrUM -m BN
act test release aGrUM -m BASE+BN
# Run specific test suites
act test release aGrUM -t BayesNetTestSuite
act test release aGrUM -t BayesNetTestSuite+BNLearnerTestSuite
# Show available modules/tests
act test release aGrUM -m show
act test release aGrUM -t show
After building with act test release aGrUM, you can run the test executable directly for faster iteration:
./gumTest # Run all tests
./gumTest --list-test-cases # List all test cases
./gumTest --test-case="*BayesNet*" # Run tests matching pattern
./gumTest --test-case="*[BN]*" # Run all BN module tests
./gumTest --test-case="*[BASE]*" # Run all BASE module tests
act test release pyAgrum -t quick # Fast tests only
act test release pyAgrum -t all # Includes notebook tests
For academic references, see the aGrUM bibliography.