Transitioning from traditional, Python-based AI pipelines to AI assistants and agents (part 2)

For the past six months or so, we’ve been exploring the role of local knowledge bases (KBs) in RAG (retrieval-augmented generation) AI processing, an approach that involves using existing information to inform and guide a large language model (LLM) in answering questions or generating new content.

The “existing information” in our case was mostly one of a set of knowledge bases created over a period of about 20 years, and our RAG programming pipeline was custom Python code written by Dick and processed either in the Thonny Python IDE or in a Colab notebook. 

Recently we made a significant transition from our Python programming environments to various assistant- or agent-based environments that put the raw code under the covers and out of our way, but allow us to do similar, RAG-like projects (and others).

My genealogy experiments with Perplexity (by Dick)

William Moseley, my great-grandfather
William Moseley, my great-grandfather

One topic I have been interested in for a while is “how can RAG and AI be used for genealogy?” Recently I was an online participant in the RootsTech 2025 genealogy conference, and AI was a popular subject at the meeting.

During the past year Generative AI tools have made big advances and are far more useful for summarizing data, doing research, and acting as an assistant when writing. Also, some of the newer models are much less likely to hallucinate when generating responses.

My earlier family history experiments using using GEDCOM and a Python-based RAG pipeline

I had previously done some experiments with Python scripting and an LLM  to create biographical summaries of people in my Family Tree Maker tree by inputing a GEDCOM export from the tree and using it in a RAG pipeline to answer queries about people in the tree. The results were not too promising. The LLM easily got confused by the data provided. At one point it identified me as my own father!

My current family history experiments using a Family Tree Maker person report and the Perplexity AI assistant

In my new experiment I first generated a person report using Family Tree Maker.

Family Tree Maker report excerpt
Family Tree Maker report excerpt

Although factually correct, the above report is not very readable. It is simply a database dump of factual information about my ancestor.

I then uploaded the resulting PDF file and asked Perplexity Pro to tell me about the person in the report (William Joseph Moseley, one of my maternal great-grandfathers).

Here is what Perplexity produced from my query based on this information:

Excerpt from Perplexity summary
Excerpt from Perplexity summary

This report is much better organized, it is written in complete sentences, and the less interesting details in the report have been skipped over. Information in each section is in chronological order.

When I first saw this, I was amazed at the result! I did check for hallucinations (you should always do this), but I didn’t find any.