Using the Phenix chatbot assistant

Authors

Purpose

The Phenix chatbot is designed to guide Phenix users through the steps in structure determination, to provide help with running Phenix programs and interpreting their output, to help with debugging problems, and as a reference for the theory behind Phenix tools. The chatbot can be accessed in the Phenix GUI with the Chat button on the toolbar.

How the chatbot works

The Phenix chatbot is based on Google NotebookLM. The notebook was supplied with over 600 pages of Phenix documentation, all the Phenix newsletters, most of the Phenix video tutorials, and many of the Phenix publications.

The chatbot can be started with this chat link. You have to log into a Google account (any Google account should work). This creates a new clean copy of the notebook.

You can ask any questions about how to use Phenix and how to interpret results.

This type of AI does not save or learn from your questions. If you close the chat or hit Refresh, it will be in the same state as it started in. The AI does answer in the context of previous questions or requests, so if you ask it to give you instructions suitable for the GUI, it will try to do that throughout the session.

What kind of questions you can ask the chatbot

You can ask the chatbot almost anything, from big-picture questions to details.

For example:

"How do I solve my structure?"

"I have an mtz file and a sequence file. What do I do next?"

"What is the difference between an mtz file and an mrc file?"

"Can I use AlphaFold with X-ray data?"

"What inputs do I need for autosol?"

"How do I run refinement?"

"Please create an atom selection string that will select all the main-chain
atoms of the nucleic acid residues in chain A"

"Please tell me how to run autobuild on the command-line"

"How do I know if my autobuild run worked?"

"How do I tell if I have a good model? Is an R-value of 0.25 ok?"

"What might prevent me from solving my structure by sad?"

Using the chatbot in parallel with other AI tools

A great way to get the most help with Phenix is to use the Phenix chatbot alongside other AI tools. For example if you have a log file from a Phenix run, you can go to Perplexity and upload your log file with the paperclip icon. Then you can ask "Is this a good result?" and it will analyze your log file and summarize what it says. You can even ask it to find other log files from the web that are similar.

Once you have uploaded your log file, you can ask the AI agent, "What should I do next?" to get ideas about next steps.

Limitations of the chatbot

The chatbot is limited to the sources that is supplied with, so it only knows about Phenix, and it only knows what is in the documentation, the videos and newsletters, and the papers we have supplied.

AI chatbots like this one can also just make mistakes and give incorrect answers. This does not seem to happen too often with this chatbot, but you need to always be on alert when using it. Use the chatbot as a helper, don't expect it to always be right.

If a detail is missing in the documentation, the chatbot will not know it. For example, the current version of the chatbot does not know that for the phenix.map_correlations tool you must supply a resolution if you are comparing a model and a map because that was not stated in the documentation.

While the chatbot can give generally-correct overviews of how to solve a structure, sometimes it can get some aspects mixed up. For example, it might say that density modification improves resolution slightly. While that may be true for cryoEM, density modification does not change the resolution in X-ray crystallography, it only improves the phase information.

Similarly, when the atom selection example above is given to the chatbot, it may give an answer like: "backbone and chain A", instead of "backbone and (not protein) and chain A". Further, the chatbot may suggest testing atom selections with phenix.pdb_atom_selection, but can miss the detail that phenix.pdb_atom_selection does not recognize the "backbone" smart selection string.