Tomaz Bratanic Picture

Tomaz Bratanic

Freelance Data Analyst and Engineer

Tomaz is a freelancer and help customers with various data problems and handle end-to-end analytical pipelines. In his free time, he write blog posts to help people with Neo4j graph algorithms.


Latest Posts by Tomaz Bratanic

LangChain Library now supports Neo4j vector index.

LangChain Library Adds Full Support for Neo4j Vector Index

When you give large language models (LLMs) the power to search beyond their own fixed knowledge and pull in information from the wider world, you have more options for LLM-powered applications. This technique of retrieving data from external sources is called retrieval-augmented generation... read more



Knowledge graphs & LLMs for multi-hop question answering.

Knowledge Graphs & LLMs: Multi-Hop Question Answering

Retrieval-augmented generation (RAG) applications excel at answering simple questions by integrating data from external sources into LLMs. But they struggle to answer multi-part questions that involve connecting the dots between associated pieces of information. That’s because RAG applications... read more


Using a Knowledge Graph to Implement a RAG Application

Forbes recently named RAG applications the hottest thing in AI. That comes as no surprise since Retrieval-Augmented Generation requires minimal code and helps build user trust in your LLM. The challenge when building a great RAG app or chatbot is handling structured text alongside unstructured... read more


How to implement advanced RAG strategies with Neo4j

Implementing Advanced Retrieval RAG Strategies With Neo4j

These days, you can deploy retrieval-augmented generation (RAG) applications in just a few minutes. Most RAG applications like Chat with Your PDF use basic vector similarity search to retrieve relevant information from the database and feed it to the LLM to generate a final response. Vector... read more


JSON-based Agents With Ollama & LangChain

Learn to implement a Mixtral agent that interacts with a graph database Neo4j through a semantic layer   By now, we all have probably recognized that we can significantly enhance the capabilities of LLMs by providing them with additional tools. For example, even ChatGPT can use Bing... read more



Knowledge Graphs & LLMs: Real-Time Graph Analytics

Understanding data points through the context of their relationshipsThis is the fourth blog post of Neo4j’s NaLLM project. We started this project to explore, develop, and showcase practical uses of these LLMs in conjunction with Neo4j. As part of this project, we will construct and publicly... read more



LangChain Cypher Search: Tips & Tricks

How to optimize prompts for Cypher statement generation to retrieve relevant information from Neo4j in your LLM applicationsLast time, we looked at how to get started with Cypher Search in the LangChain library and why you would want to use knowledge graphs in your LLM applications. In this... read more


Generating Cypher Queries With ChatGPT 4 on Any Graph Schema

Will we still need to learn query languages in the future?Photo by Lyman Hansel Gerona on UnsplashLarge language models have great potential to translate a natural language into a query language. For example, some people use GPT models to translate text to SQL, while others use GPT models... read more


Context-Aware Knowledge Graph Chatbot With GPT-4 and Neo4j

Learn how to implement a chatbot that bases its answers on the information retrieved from a graph databaseNot so long ago, OpenAI added Chat API, which is optimized for generating conversations. The main difference between Chat and the older Completion APIs is that the Chat API allows... read more



Enhancing Word Embedding with Graph Neural Networks

Natural Language Processing (NLP) has seen rapid advancements in recent years. One important aspect of this progress has been the use of embeddings, which are numerical representations of words or phrases that capture their meaning and relationships to other words in a language. Embeddings can be... read more


Knowledge Graph-Based Chatbot With GPT-3 and Neo4j

ChatGPT has changed how I, and probably most of you, look at AI and chatbots. We can use chatbots to help us find information, construct creative works, and more.However, one problem with ChatGPT and similar chatbots is that they can hallucinate and return... read more





From Text to a Knowledge Graph: The Information Extraction Pipeline

Editor's note: This presentation is given by Tomaz Bratanic at NODES 2021. As organizations build knowledge graphs to find answers to their most pressing problems, one of the challenges they face is that much of the information they would like to incorporate in their knowledge graphs exists in... read more


Real-Time Dashboard of Bitcoin Transactions With Neo4j and NeoDash

Cryptocurrencies have become more and more integrated into our daily life. Many cryptocurrencies like Bitcoin and Ethereum are decentralized networks based on blockchain technology. They have a wide array of use-cases and have been implemented by various companies and governments. One remarkable... read more



Introducing the New Twitch Sandbox

Analyze Twitch streamers and their audiences with Neo4j APOC and Graph Data SciencePhoto by ELLA DON on UnsplashTwitch is one of the newer social network platforms. The idea behind the platform is that it allows anyone to stream or broadcast content. Other users can then support streamers... read more


Photo by Daniel Lloyd Blunk-Fernández on Unsplash

Diversify Your Stock Portfolio with Graph Analytics

A couple of weeks ago, I stumbled upon the stock market volume analysis in Neo4j by Bryant Avey.Pattern-Driven Insights: Visualize Stock Volume Similarity with Neo4j and Power BIIt got me interested in how we could use graph analytics to analyze stock markets. After a bit of research, I... read more


Turn a Harry Potter Book into a Knowledge Graph

Learn how to combine Selenium and SpaCy to create a Neo4j knowledge graph of the Harry Potter universeMost likely, you have already seen the Game of Thrones network created by Andrew Beveridge.Andrew constructed a co-occurrence network of book characters. If two characters appear within some... read more


Visualize Graph Embedding Algorithm Result in NEuler

Quickly inspect graph embedding algorithm results in Neo4j graph data science playground application NEuler.NEuler is a graph data science playground application designed to help you execute and understand graph algorithms in Neo4j. With only a couple of clicks, you can import example data, execute... read more