Skip to main content

PypI Figshare DOI Lincense

ChatMOF: an artificial intelligence system for predicting and generating metal-organic frameworks using large language models

ChatMOF is an artificial intelligence (AI) system that is built to predict and generate metal-organic frameworks (MOFs). By leveraging a large-scale language model (GPT-4, GPT-3.5-turbo, and GPT-3.5-turbo-16k), ChatMOF extracts key details from textual inputs and delivers appropriate responses, thus eliminating the necessity for rigid and formal structured queries. The system is comprised of three core components (i.e., an agent, a toolkit, and an evaluator) and it forms a robust pipeline that manages a variety of tasks, including data retrieval, property prediction, and structure generations. ChatMOF shows high accuracy rates of 96.9% for searching, 95.7% for predicting, and 87.5% for generating tasks with GPT-4. Additionally, it successfully creates materials with user-desired properties from natural language.

NOTE: ChatMOF has been updated to 0.2.0 and includes a new tool unit converter.

Online Demo

You can test ChatMOF in Online-Demo site. It requires an OpenAI key (For more information, visit the OpenAI site). In online demo, only the Search task is available. For prediction tasks and generation tasks that require machine learning do not work properly, except for the provided examples.

OnlineDemo

Install

Dependencies

NOTE: This package is primarily tested on Linux. We strongly recommend using Linux for the installation.

python>=3.9

Installation

$ pip install chatmof

If you have a dependency issues between torch and moftransformer, uninstall torch and pytorch-lightning, install torch <2.0.0, and reinstall.

For prediction and generation task, you have to setup modules.

$ chatmof setup

Add the following line to .bashrc for the openai api key.

# openai api key
export OPENAI_API_KEY="enter_your_api_key"

If you want to search the internet, you'll need to enter the GOOGLE_API_KEY and GOOGLE_CSE_ID into .bashrc.

# google api and cse_id
export GOOGLE_API_KEY="enter_your_api_key"
export GOOGLE_CSE_ID="enter_your_id"

For MOF generation, you need to install GRIDAY.

$ chatmof install-griday

How to use ChatMOF

You can use it by running chatmof's run function.

$ chatmof run

example

You can adjust argument of Chatmof such as model and temperature.

$ chatmof run --model-name gpt-3.5-turbo --temperature 0.5

You can use help to see more options.

$ chatmof run --help

Example of ChatMOF

1) Search task

2) prediction task

3) generation task

Architecture

ChatMOF comprises three core components: an agent, toolkits, and an evaluator. Upon receiving a query from human, the agent formulates a plan and selects a suitable toolkit. Subsequently, the toolkit generates outputs following the proposed plan, and the evaluator makes these results into a final response. More details for ChatMOF structure are described at structure.md.

Citation

if you want to cite ChatMOF, please refer to the following paper:

ChatMOF: an artificial intelligence system for predicting and generating metal-organic frameworks using large language models, Nature Communications 15, 4705 (2024) [link]

Contributing 🙌

Contributions are welcome! If you have any suggestions or find any issues, please open an issue or a pull request.

License 📄

This project is licensed under the MIT License. See the LICENSE file for more information.

Metadata

Release files for chatmof 0.2.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for chatmof 0.2.2
File Size Uploaded Provenance Actions
chatmof-0.2.2.tar.gz 1.4 MB Without provenance Details for chatmof-0.2.2.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for chatmof 0.2.2
File Interpreter ABI Platform Actions
chatmof-0.2.2-py3-none-any.whl Python 3 none any Details for chatmof-0.2.2-py3-none-any.whl

Total release size: 2.8 MB

Release files / chatmof-0.2.2.tar.gz

Download URL chatmof-0.2.2.tar.gz
Size 1.4 MB
Tags Source
SHA-256 checksum
How to use checksums
6680cffd62b666b71da0305703babfaac542c8e4871db4622408d09353e4d93d
BLAKE2b-256 checksum
How to use checksums
35f1dcd91cc35d13ea778c4e8eb21015af5f0db6c7709d46e049b75562fa8486
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.17

Release files / chatmof-0.2.2-py3-none-any.whl

Download URL chatmof-0.2.2-py3-none-any.whl
Size 1.4 MB
Tags Python 3
SHA-256 checksum
How to use checksums
32a44bbb8ef57b2fadd26be617a5b40a6b5a9046667b8c1eabcd5b63c17c28e8
BLAKE2b-256 checksum
How to use checksums
75f9bdea77b8de3993fd84c8b803c0f43d7a45547065318d008d325cb7e6ece3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.17

Security for chatmof 0.2.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page