litxbench 0.1.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.
- litxbench-0.1.0/.gitignore +14 -0
- litxbench-0.1.0/LICENSE +8 -0
- litxbench-0.1.0/PKG-INFO +156 -0
- litxbench-0.1.0/README.md +138 -0
- litxbench-0.1.0/docs/README.md +25 -0
- litxbench-0.1.0/pyproject.toml +89 -0
- litxbench-0.1.0/src/litxbench/__init__.py +31 -0
- litxbench-0.1.0/src/litxbench/core/__init__.py +0 -0
- litxbench-0.1.0/src/litxbench/core/enums.py +194 -0
- litxbench-0.1.0/src/litxbench/core/eval.py +1726 -0
- litxbench-0.1.0/src/litxbench/core/extraction_utils.py +69 -0
- litxbench-0.1.0/src/litxbench/core/formula_cleaning.py +34 -0
- litxbench-0.1.0/src/litxbench/core/hallucination.py +199 -0
- litxbench-0.1.0/src/litxbench/core/models.py +799 -0
- litxbench-0.1.0/src/litxbench/core/units.py +31 -0
- litxbench-0.1.0/src/litxbench/core/utils.py +61 -0
- litxbench-0.1.0/src/litxbench/core/validators.py +591 -0
- litxbench-0.1.0/src/litxbench/litxalloy/__init__.py +85 -0
- litxbench-0.1.0/src/litxbench/litxalloy/extractions/__init__.py +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/extractions/doi_10_1016__j_proeng_2012_03_043.py +89 -0
- litxbench-0.1.0/src/litxbench/litxalloy/extractions/doi_10_1038__ncomms10602.py +143 -0
- litxbench-0.1.0/src/litxbench/litxalloy/extractions/doi_10_1038__s41467_019_08460_2.py +228 -0
- litxbench-0.1.0/src/litxbench/litxalloy/extractions/doi_10_1038__s41467_019_10533_1.py +114 -0
- litxbench-0.1.0/src/litxbench/litxalloy/extractions/doi_10_1038__s41598_017_16509_9.py +165 -0
- litxbench-0.1.0/src/litxbench/litxalloy/extractions/doi_10_1038__s41598_019_43329_w.py +184 -0
- litxbench-0.1.0/src/litxbench/litxalloy/extractions/doi_10_1155__2019__2157592.py +100 -0
- litxbench-0.1.0/src/litxbench/litxalloy/extractions/doi_10_3390__coatings9010016.py +164 -0
- litxbench-0.1.0/src/litxbench/litxalloy/extractions/doi_10_3390__e16020870.py +130 -0
- litxbench-0.1.0/src/litxbench/litxalloy/extractions/doi_10_3390__e18050189.py +79 -0
- litxbench-0.1.0/src/litxbench/litxalloy/extractions/doi_10_3390__e18080289.py +3 -0
- litxbench-0.1.0/src/litxbench/litxalloy/extractions/doi_10_3390__e21010015.py +172 -0
- litxbench-0.1.0/src/litxbench/litxalloy/extractions/doi_10_3390__e21020114.py +328 -0
- litxbench-0.1.0/src/litxbench/litxalloy/extractions/doi_10_3390__e21020122.py +194 -0
- litxbench-0.1.0/src/litxbench/litxalloy/extractions/doi_10_3390__e21020169.py +340 -0
- litxbench-0.1.0/src/litxbench/litxalloy/extractions/doi_10_3390__e21030288.py +271 -0
- litxbench-0.1.0/src/litxbench/litxalloy/extractions/doi_10_3390__e21050448.py +176 -0
- litxbench-0.1.0/src/litxbench/litxalloy/extractions/doi_10_3390__ma12071136.py +266 -0
- litxbench-0.1.0/src/litxbench/litxalloy/extractions/doi_10_3390__met10111466.py +316 -0
- litxbench-0.1.0/src/litxbench/litxalloy/extractions/doi_10_3390__met9030351.py +137 -0
- litxbench-0.1.0/src/litxbench/litxalloy/extractions/ruff.toml +4 -0
- litxbench-0.1.0/src/litxbench/litxalloy/models.py +129 -0
- litxbench-0.1.0/src/litxbench/litxalloy/pdfs/__init__.py +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/__init__.py +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1016__j_proeng_2012_03_043/img-0.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1016__j_proeng_2012_03_043/img-1.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1016__j_proeng_2012_03_043/img-10.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1016__j_proeng_2012_03_043/img-11.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1016__j_proeng_2012_03_043/img-12.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1016__j_proeng_2012_03_043/img-2.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1016__j_proeng_2012_03_043/img-3.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1016__j_proeng_2012_03_043/img-4.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1016__j_proeng_2012_03_043/img-5.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1016__j_proeng_2012_03_043/img-6.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1016__j_proeng_2012_03_043/img-7.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1016__j_proeng_2012_03_043/img-8.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1016__j_proeng_2012_03_043/img-9.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1016__j_proeng_2012_03_043/paper.md +198 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__ncomms10602/img-0.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__ncomms10602/img-1.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__ncomms10602/img-2.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__ncomms10602/img-3.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__ncomms10602/img-4.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__ncomms10602/img-5.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__ncomms10602/paper.md +238 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_08460_2/img-0.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_08460_2/img-1.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_08460_2/img-2.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_08460_2/img-3.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_08460_2/img-4.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_08460_2/img-5.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_08460_2/img-6.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_08460_2/img-7.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_08460_2/img-8.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_08460_2/img-9.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_08460_2/paper.md +198 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_10533_1/img-0.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_10533_1/img-1.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_10533_1/img-10.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_10533_1/img-11.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_10533_1/img-12.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_10533_1/img-13.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_10533_1/img-14.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_10533_1/img-15.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_10533_1/img-16.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_10533_1/img-17.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_10533_1/img-18.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_10533_1/img-2.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_10533_1/img-3.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_10533_1/img-4.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_10533_1/img-5.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_10533_1/img-6.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_10533_1/img-7.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_10533_1/img-8.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_10533_1/img-9.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41467_019_10533_1/paper.md +320 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_017_16509_9/img-0.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_017_16509_9/img-1.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_017_16509_9/img-10.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_017_16509_9/img-11.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_017_16509_9/img-12.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_017_16509_9/img-2.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_017_16509_9/img-3.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_017_16509_9/img-4.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_017_16509_9/img-5.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_017_16509_9/img-6.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_017_16509_9/img-7.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_017_16509_9/img-8.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_017_16509_9/img-9.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_017_16509_9/paper.md +185 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/img-0.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/img-1.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/img-10.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/img-11.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/img-12.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/img-13.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/img-14.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/img-15.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/img-16.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/img-17.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/img-18.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/img-19.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/img-2.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/img-20.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/img-21.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/img-22.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/img-23.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/img-24.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/img-25.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/img-26.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/img-3.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/img-4.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/img-5.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/img-6.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/img-7.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/img-8.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/img-9.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1038__s41598_019_43329_w/paper.md +308 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-0.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-1.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-10.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-11.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-12.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-13.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-14.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-15.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-16.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-17.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-18.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-19.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-2.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-20.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-21.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-22.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-23.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-24.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-25.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-26.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-27.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-28.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-29.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-3.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-30.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-31.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-32.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-33.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-34.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-35.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-36.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-37.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-38.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-39.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-4.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-40.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-5.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-6.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-7.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-8.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/img-9.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_1155__2019__2157592/paper.md +281 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__coatings9010016/img-0.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__coatings9010016/img-1.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__coatings9010016/img-10.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__coatings9010016/img-11.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__coatings9010016/img-12.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__coatings9010016/img-13.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__coatings9010016/img-14.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__coatings9010016/img-15.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__coatings9010016/img-16.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__coatings9010016/img-17.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__coatings9010016/img-18.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__coatings9010016/img-19.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__coatings9010016/img-2.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__coatings9010016/img-20.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__coatings9010016/img-3.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__coatings9010016/img-4.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__coatings9010016/img-5.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__coatings9010016/img-6.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__coatings9010016/img-7.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__coatings9010016/img-8.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__coatings9010016/img-9.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__coatings9010016/paper.md +247 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e16020870/img-0.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e16020870/img-1.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e16020870/img-2.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e16020870/img-3.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e16020870/img-4.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e16020870/img-5.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e16020870/img-6.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e16020870/img-7.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e16020870/img-8.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e16020870/img-9.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e16020870/paper.md +333 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e18050189/img-0.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e18050189/img-1.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e18050189/img-10.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e18050189/img-11.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e18050189/img-12.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e18050189/img-13.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e18050189/img-14.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e18050189/img-15.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e18050189/img-16.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e18050189/img-17.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e18050189/img-18.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e18050189/img-19.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e18050189/img-2.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e18050189/img-20.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e18050189/img-21.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e18050189/img-3.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e18050189/img-4.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e18050189/img-5.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e18050189/img-6.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e18050189/img-7.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e18050189/img-8.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e18050189/img-9.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e18050189/paper.md +358 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e18080289/img-0.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e18080289/paper.md +46 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21010015/img-0.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21010015/img-1.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21010015/img-10.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21010015/img-11.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21010015/img-12.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21010015/img-13.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21010015/img-14.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21010015/img-15.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21010015/img-16.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21010015/img-2.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21010015/img-3.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21010015/img-4.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21010015/img-5.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21010015/img-6.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21010015/img-7.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21010015/img-8.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21010015/img-9.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21010015/paper.md +349 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-0.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-1.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-10.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-11.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-12.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-13.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-14.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-15.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-16.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-17.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-18.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-19.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-2.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-20.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-21.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-22.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-23.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-24.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-25.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-26.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-27.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-28.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-29.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-3.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-30.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-31.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-32.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-33.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-34.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-35.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-36.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-37.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-38.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-4.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-5.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-6.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-7.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-8.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/img-9.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020114/paper.md +466 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020122/img-0.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020122/img-1.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020122/img-10.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020122/img-11.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020122/img-12.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020122/img-13.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020122/img-14.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020122/img-15.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020122/img-16.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020122/img-2.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020122/img-3.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020122/img-4.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020122/img-5.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020122/img-6.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020122/img-7.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020122/img-8.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020122/img-9.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020122/paper.md +212 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020169/img-0.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020169/img-1.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020169/img-10.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020169/img-11.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020169/img-12.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020169/img-13.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020169/img-14.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020169/img-15.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020169/img-16.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020169/img-17.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020169/img-18.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020169/img-19.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020169/img-2.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020169/img-20.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020169/img-21.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020169/img-3.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020169/img-4.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020169/img-5.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020169/img-6.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020169/img-7.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020169/img-8.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020169/img-9.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21020169/paper.md +294 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21030288/img-0.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21030288/img-1.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21030288/img-10.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21030288/img-11.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21030288/img-12.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21030288/img-13.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21030288/img-14.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21030288/img-15.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21030288/img-16.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21030288/img-17.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21030288/img-18.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21030288/img-19.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21030288/img-2.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21030288/img-20.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21030288/img-21.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21030288/img-22.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21030288/img-3.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21030288/img-4.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21030288/img-5.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21030288/img-6.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21030288/img-7.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21030288/img-8.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21030288/img-9.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21030288/paper.md +302 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21050448/img-0.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21050448/img-1.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21050448/img-10.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21050448/img-11.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21050448/img-12.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21050448/img-13.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21050448/img-14.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21050448/img-15.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21050448/img-16.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21050448/img-17.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21050448/img-18.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21050448/img-19.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21050448/img-2.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21050448/img-20.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21050448/img-21.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21050448/img-22.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21050448/img-3.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21050448/img-4.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21050448/img-5.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21050448/img-6.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21050448/img-7.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21050448/img-8.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21050448/img-9.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__e21050448/paper.md +202 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-0.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-1.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-10.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-11.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-12.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-13.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-14.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-15.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-16.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-17.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-18.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-19.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-2.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-20.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-21.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-22.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-23.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-24.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-25.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-26.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-27.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-28.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-29.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-3.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-30.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-31.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-32.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-33.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-34.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-4.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-5.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-6.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-7.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-8.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/img-9.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__ma12071136/paper.md +322 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met10111466/img-0.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met10111466/img-1.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met10111466/img-10.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met10111466/img-11.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met10111466/img-12.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met10111466/img-13.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met10111466/img-14.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met10111466/img-15.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met10111466/img-16.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met10111466/img-17.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met10111466/img-18.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met10111466/img-19.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met10111466/img-2.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met10111466/img-20.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met10111466/img-21.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met10111466/img-22.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met10111466/img-23.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met10111466/img-24.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met10111466/img-25.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met10111466/img-3.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met10111466/img-4.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met10111466/img-5.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met10111466/img-6.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met10111466/img-7.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met10111466/img-8.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met10111466/img-9.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met10111466/paper.md +287 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met9030351/img-0.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met9030351/img-1.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met9030351/img-10.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met9030351/img-11.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met9030351/img-12.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met9030351/img-13.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met9030351/img-14.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met9030351/img-15.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met9030351/img-2.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met9030351/img-3.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met9030351/img-4.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met9030351/img-5.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met9030351/img-6.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met9030351/img-7.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met9030351/img-8.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met9030351/img-9.jpeg +0 -0
- litxbench-0.1.0/src/litxbench/litxalloy/transcribed/doi_10_3390__met9030351/paper.md +190 -0
- litxbench-0.1.0/src/litxbench/py.typed +0 -0
- litxbench-0.1.0/tests/test_eval.py +1680 -0
- litxbench-0.1.0/tests/test_experiment_validation.py +749 -0
- litxbench-0.1.0/tests/test_hallucination.py +314 -0
- litxbench-0.1.0/tests/test_measurement_descriptions_validation.py +413 -0
- litxbench-0.1.0/tests/test_process_step.py +237 -0
- litxbench-0.1.0/tests/test_serialization.py +271 -0
- litxbench-0.1.0/tests/test_synthesis_group.py +164 -0
- litxbench-0.1.0/tests/test_utils.py +25 -0
- litxbench-0.1.0/ui/README.md +2 -0
litxbench-0.1.0/LICENSE
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
The MIT License (MIT)
|
|
2
|
+
Copyright 2025 Radical AI
|
|
3
|
+
|
|
4
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
|
5
|
+
|
|
6
|
+
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
|
7
|
+
|
|
8
|
+
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
litxbench-0.1.0/PKG-INFO
ADDED
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: litxbench
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: A Benchmark for Information Extraction From Scientific Literature
|
|
5
|
+
Project-URL: Homepage, https://radical-ai.github.io/litxbench
|
|
6
|
+
Project-URL: Issues, https://github.com/Radical-AI/litxbench/issues
|
|
7
|
+
Maintainer-email: Curtis Chong <cchong@radical-ai.com>
|
|
8
|
+
License-Expression: MIT
|
|
9
|
+
License-File: LICENSE
|
|
10
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
11
|
+
Classifier: Operating System :: OS Independent
|
|
12
|
+
Classifier: Programming Language :: Python :: 3
|
|
13
|
+
Requires-Python: >=3.12
|
|
14
|
+
Requires-Dist: pint>=0.25.2
|
|
15
|
+
Requires-Dist: pydantic>=2.12.5
|
|
16
|
+
Requires-Dist: pymatgen>=2025.10.7
|
|
17
|
+
Description-Content-Type: text/markdown
|
|
18
|
+
|
|
19
|
+
# LitXBench
|
|
20
|
+
|
|
21
|
+
[](https://pypi.org/project/litxbench)
|
|
22
|
+
[](https://radical-ai.github.io/litxbench)
|
|
23
|
+
|
|
24
|
+
LitXBench is a benchmark to evaluate LLMs on extracting material information synthesized in research papers. Read the preprint here.
|
|
25
|
+
|
|
26
|
+
<p align="center">
|
|
27
|
+
<img width="70%" src="core_principles.png" alt="LitXBench Principles for Accurate Extraction and Benchmarking. (1) To accurately capture a material’s properties, measurements must be linked to its processing lineage, rather than just its composition. (2) Categorical values should be mapped to canonical values to disambiguate similar values, as multiple papers may reference different properties with the same term. (3) Extracted materials are more editable and auditable when represented as code, reducing errors in the benchmark."/>
|
|
28
|
+
</p>
|
|
29
|
+
|
|
30
|
+
# Installation
|
|
31
|
+
|
|
32
|
+
`uv pip add litxbench`
|
|
33
|
+
|
|
34
|
+
# Usage
|
|
35
|
+
|
|
36
|
+
## Loading Ground Truth
|
|
37
|
+
|
|
38
|
+
LitXBench ships with annotated ground-truth extractions. The `litxalloy` dataset contains 19 papers on high-entropy alloys.
|
|
39
|
+
|
|
40
|
+
```python
|
|
41
|
+
from litxbench.litxalloy import papers
|
|
42
|
+
|
|
43
|
+
# papers is a dict mapping DOI strings to list[Experiment]
|
|
44
|
+
doi = "doi_10_3390__e21020122"
|
|
45
|
+
ground_truth = papers[doi]
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
## Building Extractions
|
|
49
|
+
|
|
50
|
+
Represent extracted materials as `Experiment` objects. Each experiment contains raw materials, synthesis groups (with optional template variables), and output materials with their measurements.
|
|
51
|
+
|
|
52
|
+
```python
|
|
53
|
+
from pymatgen.core.composition import Composition
|
|
54
|
+
from litxbench import (
|
|
55
|
+
CompMeasurement, Configuration, CrysStruct, Experiment, Material,
|
|
56
|
+
Measurement, ProcessEvent, ProcessKind, Quantity, RawMaterial, RawMaterialKind,
|
|
57
|
+
)
|
|
58
|
+
from litxbench.core.models import GlobalLatticeParam
|
|
59
|
+
from litxbench.core.units import Celsius, Hour, MegaPascal, Nanometer, gram_per_cm3, percent, HV
|
|
60
|
+
from litxbench.litxalloy.models import AlloyMeasurementKind
|
|
61
|
+
|
|
62
|
+
extracted = [
|
|
63
|
+
Experiment(
|
|
64
|
+
raw_materials={"elements": RawMaterial(kind=RawMaterialKind.Powder)},
|
|
65
|
+
# Synthesis groups can use template variables (e.g. [Duration], [Temp])
|
|
66
|
+
# that are substituted per-material via process strings.
|
|
67
|
+
synthesis_groups={
|
|
68
|
+
"Milling[Duration]": [
|
|
69
|
+
ProcessEvent(
|
|
70
|
+
kind=ProcessKind.PlanetaryMilling,
|
|
71
|
+
duration=Quantity(value="[Duration]", unit=Hour),
|
|
72
|
+
),
|
|
73
|
+
],
|
|
74
|
+
"SPS[Temp]": [
|
|
75
|
+
ProcessEvent(
|
|
76
|
+
kind=ProcessKind.SparkPlasmaSintering,
|
|
77
|
+
temperature=Quantity(value="[Temp]", unit=Celsius),
|
|
78
|
+
),
|
|
79
|
+
],
|
|
80
|
+
},
|
|
81
|
+
output_materials=[
|
|
82
|
+
# Named materials can be referenced as inputs by later materials
|
|
83
|
+
Material(
|
|
84
|
+
process="elements->Milling[Duration=60]",
|
|
85
|
+
name="base",
|
|
86
|
+
measurements=[
|
|
87
|
+
CompMeasurement(Composition("CoCrNiCuZn")),
|
|
88
|
+
GlobalLatticeParam(
|
|
89
|
+
struct=CrysStruct.BCC,
|
|
90
|
+
phase_fraction=Quantity(value=100, unit=percent),
|
|
91
|
+
),
|
|
92
|
+
Measurement(
|
|
93
|
+
kind=AlloyMeasurementKind.crystallite_size,
|
|
94
|
+
value=13,
|
|
95
|
+
unit=Nanometer,
|
|
96
|
+
),
|
|
97
|
+
Measurement(
|
|
98
|
+
kind=AlloyMeasurementKind.lattice_strain,
|
|
99
|
+
value=0.7,
|
|
100
|
+
unit=percent,
|
|
101
|
+
),
|
|
102
|
+
# Configurations represent distinct phases within a material
|
|
103
|
+
Configuration(
|
|
104
|
+
name="Phase 1",
|
|
105
|
+
measurements=[
|
|
106
|
+
Measurement(kind=AlloyMeasurementKind.solidus, value=1244.8, unit=Celsius),
|
|
107
|
+
],
|
|
108
|
+
),
|
|
109
|
+
],
|
|
110
|
+
),
|
|
111
|
+
# This material chains from "base" through the SPS synthesis group
|
|
112
|
+
Material(
|
|
113
|
+
process="base->SPS[Temp=900]",
|
|
114
|
+
measurements=[
|
|
115
|
+
CompMeasurement(Composition("CoCrNiCuZn")),
|
|
116
|
+
Measurement(kind=AlloyMeasurementKind.density, value=7.89, unit=gram_per_cm3),
|
|
117
|
+
Measurement(kind=AlloyMeasurementKind.ultimate_compressive_strength, value=2121, unit=MegaPascal),
|
|
118
|
+
Measurement(kind=AlloyMeasurementKind.vickers_hardness, value=615, unit=HV),
|
|
119
|
+
GlobalLatticeParam(struct=CrysStruct.FCC, name="FCC1"),
|
|
120
|
+
GlobalLatticeParam(struct=CrysStruct.FCC, name="FCC2"),
|
|
121
|
+
],
|
|
122
|
+
),
|
|
123
|
+
],
|
|
124
|
+
),
|
|
125
|
+
]
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
## Evaluating Extractions
|
|
129
|
+
|
|
130
|
+
Compare your extractions against the ground truth to get precision, recall, and F1 scores.
|
|
131
|
+
|
|
132
|
+
```python
|
|
133
|
+
from litxbench import compare_experiments
|
|
134
|
+
|
|
135
|
+
result = compare_experiments(ground_truth, extracted)
|
|
136
|
+
print(f"Precision: {result.precision:.2%}")
|
|
137
|
+
print(f"Recall: {result.recall:.2%}")
|
|
138
|
+
print(f"F1: {result.f1:.2%}")
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
For multi-level metrics (value, process, configuration, and material levels):
|
|
142
|
+
|
|
143
|
+
```python
|
|
144
|
+
from litxbench.core.eval import compute_multi_level_metrics
|
|
145
|
+
|
|
146
|
+
metrics = compute_multi_level_metrics(result)
|
|
147
|
+
print(f"Overall F1: {metrics.overall_f1:.2%}")
|
|
148
|
+
print(f"Value F1: {metrics.value_f1:.2%}")
|
|
149
|
+
print(f"Process F1: {metrics.process_f1:.2%}")
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
A complete end-to-end example is available at [`examples/usage.py`](examples/usage.py).
|
|
153
|
+
|
|
154
|
+
# Paper Evaluation Scripts Warning
|
|
155
|
+
|
|
156
|
+
For the evaluation scripts used in the paper, LitXBench intructs LLMs to format the extracted materials as code. This code is run by LitXBench via Python `exec`. Do NOT call untrusted LLMs as they may generate untrusted code which could be executed on your machine.
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
# LitXBench
|
|
2
|
+
|
|
3
|
+
[](https://pypi.org/project/litxbench)
|
|
4
|
+
[](https://radical-ai.github.io/litxbench)
|
|
5
|
+
|
|
6
|
+
LitXBench is a benchmark to evaluate LLMs on extracting material information synthesized in research papers. Read the preprint here.
|
|
7
|
+
|
|
8
|
+
<p align="center">
|
|
9
|
+
<img width="70%" src="core_principles.png" alt="LitXBench Principles for Accurate Extraction and Benchmarking. (1) To accurately capture a material’s properties, measurements must be linked to its processing lineage, rather than just its composition. (2) Categorical values should be mapped to canonical values to disambiguate similar values, as multiple papers may reference different properties with the same term. (3) Extracted materials are more editable and auditable when represented as code, reducing errors in the benchmark."/>
|
|
10
|
+
</p>
|
|
11
|
+
|
|
12
|
+
# Installation
|
|
13
|
+
|
|
14
|
+
`uv pip add litxbench`
|
|
15
|
+
|
|
16
|
+
# Usage
|
|
17
|
+
|
|
18
|
+
## Loading Ground Truth
|
|
19
|
+
|
|
20
|
+
LitXBench ships with annotated ground-truth extractions. The `litxalloy` dataset contains 19 papers on high-entropy alloys.
|
|
21
|
+
|
|
22
|
+
```python
|
|
23
|
+
from litxbench.litxalloy import papers
|
|
24
|
+
|
|
25
|
+
# papers is a dict mapping DOI strings to list[Experiment]
|
|
26
|
+
doi = "doi_10_3390__e21020122"
|
|
27
|
+
ground_truth = papers[doi]
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Building Extractions
|
|
31
|
+
|
|
32
|
+
Represent extracted materials as `Experiment` objects. Each experiment contains raw materials, synthesis groups (with optional template variables), and output materials with their measurements.
|
|
33
|
+
|
|
34
|
+
```python
|
|
35
|
+
from pymatgen.core.composition import Composition
|
|
36
|
+
from litxbench import (
|
|
37
|
+
CompMeasurement, Configuration, CrysStruct, Experiment, Material,
|
|
38
|
+
Measurement, ProcessEvent, ProcessKind, Quantity, RawMaterial, RawMaterialKind,
|
|
39
|
+
)
|
|
40
|
+
from litxbench.core.models import GlobalLatticeParam
|
|
41
|
+
from litxbench.core.units import Celsius, Hour, MegaPascal, Nanometer, gram_per_cm3, percent, HV
|
|
42
|
+
from litxbench.litxalloy.models import AlloyMeasurementKind
|
|
43
|
+
|
|
44
|
+
extracted = [
|
|
45
|
+
Experiment(
|
|
46
|
+
raw_materials={"elements": RawMaterial(kind=RawMaterialKind.Powder)},
|
|
47
|
+
# Synthesis groups can use template variables (e.g. [Duration], [Temp])
|
|
48
|
+
# that are substituted per-material via process strings.
|
|
49
|
+
synthesis_groups={
|
|
50
|
+
"Milling[Duration]": [
|
|
51
|
+
ProcessEvent(
|
|
52
|
+
kind=ProcessKind.PlanetaryMilling,
|
|
53
|
+
duration=Quantity(value="[Duration]", unit=Hour),
|
|
54
|
+
),
|
|
55
|
+
],
|
|
56
|
+
"SPS[Temp]": [
|
|
57
|
+
ProcessEvent(
|
|
58
|
+
kind=ProcessKind.SparkPlasmaSintering,
|
|
59
|
+
temperature=Quantity(value="[Temp]", unit=Celsius),
|
|
60
|
+
),
|
|
61
|
+
],
|
|
62
|
+
},
|
|
63
|
+
output_materials=[
|
|
64
|
+
# Named materials can be referenced as inputs by later materials
|
|
65
|
+
Material(
|
|
66
|
+
process="elements->Milling[Duration=60]",
|
|
67
|
+
name="base",
|
|
68
|
+
measurements=[
|
|
69
|
+
CompMeasurement(Composition("CoCrNiCuZn")),
|
|
70
|
+
GlobalLatticeParam(
|
|
71
|
+
struct=CrysStruct.BCC,
|
|
72
|
+
phase_fraction=Quantity(value=100, unit=percent),
|
|
73
|
+
),
|
|
74
|
+
Measurement(
|
|
75
|
+
kind=AlloyMeasurementKind.crystallite_size,
|
|
76
|
+
value=13,
|
|
77
|
+
unit=Nanometer,
|
|
78
|
+
),
|
|
79
|
+
Measurement(
|
|
80
|
+
kind=AlloyMeasurementKind.lattice_strain,
|
|
81
|
+
value=0.7,
|
|
82
|
+
unit=percent,
|
|
83
|
+
),
|
|
84
|
+
# Configurations represent distinct phases within a material
|
|
85
|
+
Configuration(
|
|
86
|
+
name="Phase 1",
|
|
87
|
+
measurements=[
|
|
88
|
+
Measurement(kind=AlloyMeasurementKind.solidus, value=1244.8, unit=Celsius),
|
|
89
|
+
],
|
|
90
|
+
),
|
|
91
|
+
],
|
|
92
|
+
),
|
|
93
|
+
# This material chains from "base" through the SPS synthesis group
|
|
94
|
+
Material(
|
|
95
|
+
process="base->SPS[Temp=900]",
|
|
96
|
+
measurements=[
|
|
97
|
+
CompMeasurement(Composition("CoCrNiCuZn")),
|
|
98
|
+
Measurement(kind=AlloyMeasurementKind.density, value=7.89, unit=gram_per_cm3),
|
|
99
|
+
Measurement(kind=AlloyMeasurementKind.ultimate_compressive_strength, value=2121, unit=MegaPascal),
|
|
100
|
+
Measurement(kind=AlloyMeasurementKind.vickers_hardness, value=615, unit=HV),
|
|
101
|
+
GlobalLatticeParam(struct=CrysStruct.FCC, name="FCC1"),
|
|
102
|
+
GlobalLatticeParam(struct=CrysStruct.FCC, name="FCC2"),
|
|
103
|
+
],
|
|
104
|
+
),
|
|
105
|
+
],
|
|
106
|
+
),
|
|
107
|
+
]
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
## Evaluating Extractions
|
|
111
|
+
|
|
112
|
+
Compare your extractions against the ground truth to get precision, recall, and F1 scores.
|
|
113
|
+
|
|
114
|
+
```python
|
|
115
|
+
from litxbench import compare_experiments
|
|
116
|
+
|
|
117
|
+
result = compare_experiments(ground_truth, extracted)
|
|
118
|
+
print(f"Precision: {result.precision:.2%}")
|
|
119
|
+
print(f"Recall: {result.recall:.2%}")
|
|
120
|
+
print(f"F1: {result.f1:.2%}")
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
For multi-level metrics (value, process, configuration, and material levels):
|
|
124
|
+
|
|
125
|
+
```python
|
|
126
|
+
from litxbench.core.eval import compute_multi_level_metrics
|
|
127
|
+
|
|
128
|
+
metrics = compute_multi_level_metrics(result)
|
|
129
|
+
print(f"Overall F1: {metrics.overall_f1:.2%}")
|
|
130
|
+
print(f"Value F1: {metrics.value_f1:.2%}")
|
|
131
|
+
print(f"Process F1: {metrics.process_f1:.2%}")
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
A complete end-to-end example is available at [`examples/usage.py`](examples/usage.py).
|
|
135
|
+
|
|
136
|
+
# Paper Evaluation Scripts Warning
|
|
137
|
+
|
|
138
|
+
For the evaluation scripts used in the paper, LitXBench intructs LLMs to format the extracted materials as code. This code is run by LitXBench via Python `exec`. Do NOT call untrusted LLMs as they may generate untrusted code which could be executed on your machine.
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Development notes
|
|
2
|
+
|
|
3
|
+
## Prerequisites
|
|
4
|
+
|
|
5
|
+
Install the [just](https://github.com/casey/just) command runner:
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
# macOS
|
|
9
|
+
brew install just
|
|
10
|
+
|
|
11
|
+
# Linux
|
|
12
|
+
curl --proto '=https' --tlsv1.2 -sSf https://just.systems/install.sh | bash -s -- --to /usr/local/bin
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Build & preview
|
|
16
|
+
|
|
17
|
+
From the project root, build and preview the docs locally:
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
just docs
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
Then open:
|
|
24
|
+
- Docs: http://localhost:8000/litxbench/
|
|
25
|
+
- Explorer: http://localhost:8000/litxbench/explorer/
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
[project]
|
|
2
|
+
name = "litxbench"
|
|
3
|
+
version = "0.1.0"
|
|
4
|
+
description = "A Benchmark for Information Extraction From Scientific Literature"
|
|
5
|
+
readme = "README.md"
|
|
6
|
+
requires-python = ">=3.12"
|
|
7
|
+
dependencies = [
|
|
8
|
+
"pymatgen>=2025.10.7",
|
|
9
|
+
"pydantic>=2.12.5",
|
|
10
|
+
"pint>=0.25.2",
|
|
11
|
+
]
|
|
12
|
+
license = "MIT"
|
|
13
|
+
classifiers = [
|
|
14
|
+
"Programming Language :: Python :: 3",
|
|
15
|
+
"License :: OSI Approved :: MIT License",
|
|
16
|
+
"Operating System :: OS Independent",
|
|
17
|
+
]
|
|
18
|
+
license-files = ["LICENSE"]
|
|
19
|
+
maintainers = [
|
|
20
|
+
{ name="Curtis Chong", email="cchong@radical-ai.com" }
|
|
21
|
+
]
|
|
22
|
+
|
|
23
|
+
[project.urls]
|
|
24
|
+
Homepage = "https://radical-ai.github.io/litxbench"
|
|
25
|
+
Issues = "https://github.com/Radical-AI/litxbench/issues"
|
|
26
|
+
|
|
27
|
+
[dependency-groups]
|
|
28
|
+
dev = [
|
|
29
|
+
"basedpyright",
|
|
30
|
+
"pytest",
|
|
31
|
+
"pytest-asyncio",
|
|
32
|
+
"pytest-xdist>=3.8.0",
|
|
33
|
+
"pytest-timeout",
|
|
34
|
+
"pytest-rerunfailures",
|
|
35
|
+
"ruff",
|
|
36
|
+
]
|
|
37
|
+
docs = [
|
|
38
|
+
"sphinx>=7.0",
|
|
39
|
+
"furo",
|
|
40
|
+
"sphinx-copybutton",
|
|
41
|
+
"sphinx-design",
|
|
42
|
+
]
|
|
43
|
+
paper = [
|
|
44
|
+
"pydantic-ai>=1.39.0",
|
|
45
|
+
"logfire>=0.4.0",
|
|
46
|
+
"matplotlib",
|
|
47
|
+
]
|
|
48
|
+
|
|
49
|
+
[build-system]
|
|
50
|
+
requires = ["hatchling >= 1.26"]
|
|
51
|
+
build-backend = "hatchling.build"
|
|
52
|
+
|
|
53
|
+
[tool.uv]
|
|
54
|
+
environments = ["sys_platform == 'darwin'", "sys_platform == 'linux'"]
|
|
55
|
+
|
|
56
|
+
[tool.ruff.lint.per-file-ignores]
|
|
57
|
+
"examples/usage.py" = ["E402"] # ignore imports not being at the top of file for clarity
|
|
58
|
+
|
|
59
|
+
[tool.ruff.lint.isort]
|
|
60
|
+
combine-as-imports = true
|
|
61
|
+
|
|
62
|
+
[tool.hatch.metadata]
|
|
63
|
+
allow-direct-references = true
|
|
64
|
+
|
|
65
|
+
[tool.hatch.build]
|
|
66
|
+
dev-mode-dirs = [".", "src"]
|
|
67
|
+
|
|
68
|
+
[tool.hatch.build.targets.sdist]
|
|
69
|
+
include = [
|
|
70
|
+
"src/litxbench/",
|
|
71
|
+
"tests/",
|
|
72
|
+
"pyproject.toml",
|
|
73
|
+
"README.md",
|
|
74
|
+
"LICENSE",
|
|
75
|
+
]
|
|
76
|
+
exclude = ["src/litxbench/litxalloy/pdfs/*.pdf"]
|
|
77
|
+
|
|
78
|
+
[tool.hatch.build.targets.wheel]
|
|
79
|
+
packages = ["src/litxbench"]
|
|
80
|
+
exclude = ["src/litxbench/litxalloy/pdfs/*.pdf"]
|
|
81
|
+
|
|
82
|
+
[tool.pytest.ini_options]
|
|
83
|
+
pythonpath = ["."]
|
|
84
|
+
|
|
85
|
+
[tool.pyright]
|
|
86
|
+
exclude = ["paper"]
|
|
87
|
+
|
|
88
|
+
[tool.ruff]
|
|
89
|
+
line-length = 120
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"""LitXBench: A Benchmark for Information Extraction From Scientific Literature."""
|
|
2
|
+
|
|
3
|
+
from importlib.metadata import version
|
|
4
|
+
|
|
5
|
+
__version__ = version("litxbench")
|
|
6
|
+
|
|
7
|
+
from litxbench.core.enums import ( # noqa: F401
|
|
8
|
+
ConfigTag,
|
|
9
|
+
CrysStruct,
|
|
10
|
+
MeasurementMethod,
|
|
11
|
+
ProcessKind,
|
|
12
|
+
RawMaterialKind,
|
|
13
|
+
)
|
|
14
|
+
from litxbench.core.eval import ( # noqa: F401
|
|
15
|
+
ExperimentComparisonResult,
|
|
16
|
+
compare_experiments,
|
|
17
|
+
)
|
|
18
|
+
from litxbench.core.extraction_utils import ( # noqa: F401
|
|
19
|
+
balance_composition,
|
|
20
|
+
composition_with_weight_additions,
|
|
21
|
+
)
|
|
22
|
+
from litxbench.core.models import ( # noqa: F401
|
|
23
|
+
CompMeasurement,
|
|
24
|
+
Configuration,
|
|
25
|
+
Experiment,
|
|
26
|
+
Material,
|
|
27
|
+
Measurement,
|
|
28
|
+
ProcessEvent,
|
|
29
|
+
Quantity,
|
|
30
|
+
RawMaterial,
|
|
31
|
+
)
|
|
File without changes
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
"""Enum definitions for the experiment extraction framework."""
|
|
2
|
+
|
|
3
|
+
from enum import Enum
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
class ValueQualifier(str, Enum):
|
|
7
|
+
"""Indicates the relationship between a reported value and its true value (e.g., exact, approximate, upper/lower bound)."""
|
|
8
|
+
|
|
9
|
+
EXACT = "exact"
|
|
10
|
+
APPROXIMATE = "approximate"
|
|
11
|
+
ABOVE = "above"
|
|
12
|
+
BELOW = "below"
|
|
13
|
+
ABOVE_OR_EQUAL = "above_or_equal"
|
|
14
|
+
BELOW_OR_EQUAL = "below_or_equal"
|
|
15
|
+
MUCH_ABOVE = "much_above"
|
|
16
|
+
MUCH_BELOW = "much_below"
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
class MeasurementMethod(str, Enum):
|
|
20
|
+
"""Characterization instruments and techniques used to measure material properties or composition."""
|
|
21
|
+
|
|
22
|
+
XRD = "xray_diffractometer"
|
|
23
|
+
DSC = "differential_scanning_calorimeter"
|
|
24
|
+
TensileTest = "tensile_test"
|
|
25
|
+
CompressionTest = "compression_test"
|
|
26
|
+
VickersHardnessTest = "vickers_hardness_test"
|
|
27
|
+
NanoindentTest = "nanoindent_test"
|
|
28
|
+
ArchimedesMethod = "archimedes_method"
|
|
29
|
+
OpticalMicroscope = "optical_microscope"
|
|
30
|
+
SEM = "scanning_electron_microscope"
|
|
31
|
+
TEM = "transmission_electron_microscope"
|
|
32
|
+
STEM = "scanning_transmission_electron_microscope"
|
|
33
|
+
EBSD = "electron_backscatter_diffraction"
|
|
34
|
+
UniversalTestingMachine = (
|
|
35
|
+
"universal_testing_machine" # measures tons of mechanical properties (tensile, compression, bending, etc.)
|
|
36
|
+
)
|
|
37
|
+
ResonanceUltrasoundSpectroscopy = "resonance_ultrasound_spectroscopy"
|
|
38
|
+
FractureToughnessTest = "fracture_toughness_test"
|
|
39
|
+
|
|
40
|
+
# Composition measurement methods
|
|
41
|
+
Balance = "balance"
|
|
42
|
+
EDS = "energy_dispersive_xray_spectroscopy"
|
|
43
|
+
TEM_EDS = "tem_energy_dispersive_xray_spectroscopy"
|
|
44
|
+
WDS = "wavelength_dispersive_xray_spectroscopy"
|
|
45
|
+
EPMA = "electron_probe_microanalysis" # uses WDS - but it's better to have a separate enum value for this
|
|
46
|
+
LIBS = "laser_induced_breakdown_spectroscopy"
|
|
47
|
+
ED_XRF = "energy_dispersive_xray_fluorescence"
|
|
48
|
+
WD_XRF = "wavelength_dispersive_xray_fluorescence"
|
|
49
|
+
Spark_OES = "spark_optical_emission_spectroscopy"
|
|
50
|
+
ICP_OES = "inductively_coupled_plasma_optical_emission_spectroscopy"
|
|
51
|
+
ICP_MS = "inductively_coupled_plasma_mass_spectroscopy"
|
|
52
|
+
Unspecified = "unspecified"
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
# This is stuff you can never see from an SEM image.
|
|
56
|
+
class CrysStruct(str, Enum):
|
|
57
|
+
"""Crystal structure types including basic lattices, ordered intermetallics, and compound structures."""
|
|
58
|
+
|
|
59
|
+
# Pure Metals / Basic
|
|
60
|
+
FCC = "FCC"
|
|
61
|
+
BCC = "BCC"
|
|
62
|
+
HCP = "HCP"
|
|
63
|
+
DHCP = "DHCP"
|
|
64
|
+
Diamond = "Diamond"
|
|
65
|
+
|
|
66
|
+
# Ordered Intermetallics
|
|
67
|
+
L12 = "L12" # Ordered FCC (e.g., Ni3Al)
|
|
68
|
+
L10 = "L10" # Tetragonal FCC (e.g., FePt)
|
|
69
|
+
B2 = "B2" # Ordered BCC (e.g., NiAl)
|
|
70
|
+
D019 = "D019" # Ordered HCP (e.g., Ti3Al)
|
|
71
|
+
D03 = "D03" # Ordered BCC variant (e.g., Fe3Al)
|
|
72
|
+
Heusler = "Heusler"
|
|
73
|
+
|
|
74
|
+
# Common Compounds / Laves
|
|
75
|
+
Rocksalt = "B1" # NaCl-type (e.g., TiC, TiN)
|
|
76
|
+
Zincblende = "B3" # e.g., GaAs
|
|
77
|
+
C14 = "C14" # Laves phase (Hexagonal)
|
|
78
|
+
C15 = "C15" # Laves phase (Cubic)
|
|
79
|
+
Perovskite = "E21"
|
|
80
|
+
|
|
81
|
+
# Disorder / Meta
|
|
82
|
+
Amorphous = "Amorphous"
|
|
83
|
+
Unknown = "Unknown"
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
class ConfigTag(str, Enum):
|
|
87
|
+
"""Microstructural features and morphological tags describing a phase's configuration within the material."""
|
|
88
|
+
|
|
89
|
+
# Growth & Solidification
|
|
90
|
+
Dendrite = "dendrite"
|
|
91
|
+
Interdendritic = "interdendritic"
|
|
92
|
+
Equiaxed = "equiaxed"
|
|
93
|
+
Columnar = "columnar"
|
|
94
|
+
|
|
95
|
+
Eutectic = "eutectic"
|
|
96
|
+
Coring = "coring"
|
|
97
|
+
|
|
98
|
+
# Transformation Products
|
|
99
|
+
Lath = "lath"
|
|
100
|
+
Martensite = "martensite" # there's precipitates within grains
|
|
101
|
+
Acicular = "acicular"
|
|
102
|
+
Lamellar = "lamellar" # lamellar -> looks like waves
|
|
103
|
+
Widmanstatten = "widmanstatten"
|
|
104
|
+
|
|
105
|
+
# Locations & Interfaces
|
|
106
|
+
Matrix = "matrix"
|
|
107
|
+
Precipitate = "precipitate"
|
|
108
|
+
Intragranular = "intragranular" # Inside grains
|
|
109
|
+
Intergranular = "intergranular" # At boundaries
|
|
110
|
+
|
|
111
|
+
# Chemistry/Defects
|
|
112
|
+
Segregation = "segregation"
|
|
113
|
+
Twin = "twin"
|
|
114
|
+
Subgrain = "subgrain"
|
|
115
|
+
|
|
116
|
+
# Meta
|
|
117
|
+
Structure = "structure"
|
|
118
|
+
Unknown = "unknown"
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
class ProcessKind(str, Enum):
|
|
122
|
+
"""Processing steps in the fabrication pipeline, from synthesis and melting through thermal treatment to finishing."""
|
|
123
|
+
|
|
124
|
+
# --- Synthesis & Melting ---
|
|
125
|
+
Mixing = "Mixing"
|
|
126
|
+
MechanicalAlloying = "Mechanical Alloying"
|
|
127
|
+
PlanetaryMilling = "Planetary Milling"
|
|
128
|
+
GasAtomization = "Gas Atomization"
|
|
129
|
+
|
|
130
|
+
ArcMelting = "Arc Melting"
|
|
131
|
+
InductionMelting = "Induction Melting"
|
|
132
|
+
|
|
133
|
+
CastingUnspecified = "Casting Unspecified"
|
|
134
|
+
AsCast = "As Cast"
|
|
135
|
+
GravityCasting = "Gravity Casting" # aka die casting
|
|
136
|
+
DropCasting = "Drop Casting"
|
|
137
|
+
SuctionCasting = "Suction Casting"
|
|
138
|
+
DirectionalSolidification = "Directional Solidification"
|
|
139
|
+
|
|
140
|
+
# --- Sintering ---
|
|
141
|
+
# cooling is implied after sintering so we don't have a dedicated Cooling kind
|
|
142
|
+
SparkPlasmaSintering = "Spark Plasma Sintering"
|
|
143
|
+
HotPressingSintering = "Hot Pressing Sintering"
|
|
144
|
+
|
|
145
|
+
# --- Thermal Treatment ---
|
|
146
|
+
VacuumFurnace = "Vacuum Furnace"
|
|
147
|
+
Homogenization = "Homogenization"
|
|
148
|
+
Annealing = "Annealing"
|
|
149
|
+
NonIsothermalAnnealing = "Non-Isothermal Annealing"
|
|
150
|
+
IsothermalHolding = "Isothermal Holding"
|
|
151
|
+
WaterQuenching = "Water Quenching"
|
|
152
|
+
SolutionHeatTreatment = "Solution Heat Treatment"
|
|
153
|
+
|
|
154
|
+
# --- Mechanical Working ---
|
|
155
|
+
HotExtrusion = "Hot Extrusion"
|
|
156
|
+
HotRolling = "Hot Rolling"
|
|
157
|
+
ColdRolling = "Cold Rolling"
|
|
158
|
+
CrossRolling = "Cross Rolling"
|
|
159
|
+
ColdForging = "Cold Forging"
|
|
160
|
+
Press = "Press"
|
|
161
|
+
FrictionStirProcessing = "Friction Stir Processing"
|
|
162
|
+
|
|
163
|
+
# --- Finishing & Preparation ---
|
|
164
|
+
ElectricalDischargeMachining = "Electro-Discharge Machining"
|
|
165
|
+
Cut = "Cut"
|
|
166
|
+
Grinding = "Grinding"
|
|
167
|
+
Polishing = "Polishing"
|
|
168
|
+
Etching = "Etching"
|
|
169
|
+
AquaRegia = "AquaRegia"
|
|
170
|
+
SandBlasting = "Sand Blasting"
|
|
171
|
+
Degreased = "Degreased"
|
|
172
|
+
UltrasonicBath = "Ultrasonic Bath"
|
|
173
|
+
AirDrying = "Air Drying"
|
|
174
|
+
|
|
175
|
+
|
|
176
|
+
MELTING_KINDS = {ProcessKind.ArcMelting, ProcessKind.InductionMelting}
|
|
177
|
+
CASTING_KINDS = {
|
|
178
|
+
ProcessKind.CastingUnspecified,
|
|
179
|
+
ProcessKind.AsCast,
|
|
180
|
+
ProcessKind.GravityCasting,
|
|
181
|
+
ProcessKind.DropCasting,
|
|
182
|
+
ProcessKind.SuctionCasting,
|
|
183
|
+
ProcessKind.DirectionalSolidification,
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
|
|
187
|
+
class RawMaterialKind(str, Enum):
|
|
188
|
+
"""Physical form of the starting material used in the fabrication process."""
|
|
189
|
+
|
|
190
|
+
Ingot = "ingot"
|
|
191
|
+
Powder = "powder"
|
|
192
|
+
Plate = "plate"
|
|
193
|
+
Unspecified = "unspecified"
|
|
194
|
+
Other = "other"
|