2025-03-06 11:37:49 -08:00
< img src = "TG-horizon-repo.svg" width = 100% / >
2024-07-16 17:00:56 +01:00
2024-12-30 17:36:05 -08:00
< div align = "center" >
2024-10-26 10:35:08 -07:00
2025-04-25 19:02:08 +01:00
## Data-to-AI, Simplified.
2024-10-29 17:46:18 -07:00
2024-10-10 18:37:40 -07:00
[](https://pypi.org/project/trustgraph/) [](https://discord.gg/sQMwkRz5GX)
2025-04-25 19:02:08 +01:00
🚀 [Getting Started ](https://trustgraph.ai/docs/getstarted ) 📺 [YouTube ](https://www.youtube.com/@TrustGraphAI?sub_confirmation=1 ) 🧠 [Knowledge Cores ](https://github.com/trustgraph-ai/catalog/tree/master/v3 ) ⚙️ [API Docs ](docs/apis/README.md ) 🧑💻 [CLI Docs ](https://trustgraph.ai/docs/running/cli ) 💬 [Discord ](https://discord.gg/sQMwkRz5GX ) 📖 [Blog ](https://blog.trustgraph.ai/subscribe )
2024-10-10 18:37:40 -07:00
< / div >
2025-04-25 19:02:08 +01:00
## The AI App Problem: Everything in Between
2024-07-16 17:00:56 +01:00
2025-04-25 19:02:08 +01:00
Building enterprise AI applications is *hard* . You're not just connecting APIs with a protocol - you're wrangling a complex ecosystem:
2024-07-16 17:00:56 +01:00
2025-04-25 19:02:08 +01:00
* **Data Silos:** Connecting to and managing data from various sources (databases, APIs, files) is a nightmare.
* **LLM Integration:** Choosing, integrating, and managing different LLMs adds another layer of complexity.
* **Deployment Headaches:** Deploying, scaling, and monitoring your AI application is a constant challenge.
* **Knowledge Graph Construction:** Taking raw knowledge and structuring it so it can be efficiently retrieved.
* **Vector Database Juggling:** Setting up and optimizing a vector database for efficient data retrieval is crucial but complex.
* **Data Pipelines:** Building robust ETL pipelines to prepare and transform your data is time-consuming.
* **Data Management:** As your app grows, so does the data meaning storage and retreival becomes much more complex.
* **Prompt Engineering:** Building, testing, and deploying prompts for specific use cases.
* **Reliability:** With every new connection, the complexity ramps up meaning any simple error can bring the entire system crashing down.
2025-03-06 12:19:22 -08:00
2025-04-25 19:02:08 +01:00
## What is TrustGraph?
2025-03-06 12:19:22 -08:00
2025-04-25 19:02:08 +01:00
**TrustGraph removes the biggest headache of building an AI app: connecting and managing all the data, deployments, and models.** As a full-stack platform, TrustGraph simplifies the development and deployment of data-driven AI applications. TrustGraph is a complete solution, handling everything from data ingestion to deployment, so you can focus on building innovative AI experiences.
2025-03-06 12:19:22 -08:00
2025-04-25 19:02:08 +01:00

## The Stack Layers
2025-03-06 12:19:22 -08:00
- 📄 **Data Ingest** : Bulk ingest documents such as `.pdf` ,`.txt` , and `.md`
2024-11-10 19:44:11 -08:00
- 🪓 **Adjustable Chunking** : Choose your chunking algorithm and parameters
2025-04-25 19:02:08 +01:00
- 🔁 **No-code LLM Integration** : **Anthropic** , **AWS Bedrock** , **AzureAI** , **AzureOpenAI** , **Cohere** , **Google AI Studio** , **Google VertexAI** , **Llamafiles** , **Ollama** , and **OpenAI**
2025-03-06 12:19:22 -08:00
- 📖 **Automated Knowledge Graph Building** : No need for complex ontologies and manual graph building
2025-03-08 12:09:03 -08:00
- 🔢 **Knowledge Graph to Vector Embeddings Mappings** : Connect knowledge graph enhanced data directly to vector embeddings
2025-03-06 12:19:22 -08:00
- ❔**Natural Language Data Retrieval**: Automatically perform a semantic similiarity search and subgraph extraction for the context of LLM generative responses
- 🧠 **Knowledge Cores** : Modular data sets with semantic relationships that can saved and quickly loaded on demand
- 🤖 **Agent Manager** : Define custom tools used by a ReAct style Agent Manager that fully controls the response flow including the ability to perform Graph RAG requests
2024-12-30 09:59:53 -08:00
- 📚 **Multiple Knowledge Graph Options** : Full integration with **Memgraph** , **FalkorDB** , **Neo4j** , or **Cassandra**
2025-03-06 12:19:22 -08:00
- 🧮 **Multiple VectorDB Options** : Full integration with **Qdrant** , **Pinecone** , or **Milvus**
- 🎛️ **Production-Grade** Reliability, scalability, and accuracy
2025-04-25 19:02:08 +01:00
- 🔍 **Observability and Telemetry** : Get insights into system performance with **Prometheus** and **Grafana**
2025-03-06 12:19:22 -08:00
- 🎻 **Orchestration** : Fully containerized with **Docker** or **Kubernetes**
- 🥞 **Stack Manager** : Control and scale the stack with confidence with **Apache Pulsar**
2025-04-25 19:02:08 +01:00
- ☁️ **Cloud Deployments** : **AWS** and **Google Cloud**
2024-11-10 18:13:05 -08:00
- 🪴 **Customizable and Extensible** : Tailor for your data and use cases
2025-03-12 18:20:18 -07:00
- 🖥️ **Configuration Builder** : Build the `YAML` configuration with drop down menus and selectable parameters
- 🕵️ **Test Suite** : A simple UI to fully test TrustGraph performance
2024-07-16 17:00:56 +01:00
2025-04-25 19:02:08 +01:00
## Why Use TrustGraph?
2025-03-06 12:19:22 -08:00
2025-04-25 19:02:08 +01:00
* **Accelerate Development:** TrustGraph instantly connects your data and app, keeping you laser focused on your users.
* **Reduce Complexity:** Eliminate the pain of integrating disparate tools and technologies.
* **Focus on Innovation:** Spend your time building your core AI logic, not managing infrastructure.
* **Improve Data Relevance:** Ensure your LLM has access to the *right* data, at the *right* time.
* **Scale with Confidence:** Deploy and scale your AI applications reliably and efficiently.
* **Full RAG Solution:** Focus on optimizing your respones not building RAG pipelines.
2025-03-06 12:19:22 -08:00
2025-04-25 19:02:08 +01:00
## Quickstart Guide 🚀
2025-01-13 11:39:03 -08:00
- [Install the CLI ](#install-the-trustgraph-cli )
2025-04-25 19:02:08 +01:00
- [Configuration Builder ](#configuration-builder )
- [System Restarts ](#system-restarts )
2025-03-12 18:20:18 -07:00
- [Test Suite ](#test-suite )
2025-01-13 11:39:03 -08:00
- [Example Notebooks ](#example-trustgraph-notebooks )
2025-04-25 19:02:08 +01:00
## Developer APIs and CLI
2024-10-14 13:31:16 -07:00
2024-12-30 11:05:31 -08:00
- [**REST API** ](docs/apis/README.md#rest-apis )
- [**Websocket API** ](docs/apis/README.md#websocket-api )
2024-11-23 18:40:35 -08:00
- [**Python SDK** ](https://trustgraph.ai/docs/api/apistarted )
- [**TrustGraph CLI** ](https://trustgraph.ai/docs/running/cli )
2024-12-30 10:38:11 -08:00
2024-12-30 10:52:58 -08:00
See the [API Developer's Guide ](#api-documentation ) for more information.
2024-12-30 10:38:11 -08:00
For users, **TrustGraph** has the following interfaces:
2025-04-25 19:02:08 +01:00
- [**Configuration Builder** ](#configuration-builder )
2025-03-12 18:20:18 -07:00
- [**Test Suite** ](#test-suite )
2024-10-14 13:31:16 -07:00
2025-03-12 18:20:18 -07:00
The `TrustGraph CLI` installs the commands for interacting with TrustGraph while running along with the Python SDK. The `Configuration Builder` enables customization of TrustGraph deployments prior to launching. The **REST API** can be accessed through port `8088` of the TrustGraph host machine with JSON request and response bodies.
2024-10-14 13:31:16 -07:00
### Install the TrustGraph CLI
2024-09-23 14:14:30 -07:00
```
2025-04-25 19:02:08 +01:00
pip3 install trustgraph-cli==0.20.9
2024-09-23 14:14:30 -07:00
```
2024-10-15 13:14:42 -07:00
> [!NOTE]
> The `TrustGraph CLI` version must match the desired `TrustGraph` release version.
2025-04-25 19:02:08 +01:00
## Configuration Builder
2024-10-05 20:05:47 -07:00
2025-04-25 19:02:08 +01:00
TrustGraph is endlessly customizable by editing the `YAML` launch files. The `Configuration Builder` provides a quick and intuitive tool for building a custom configuration that deploys with Docker, Podman, Minikube, or Google Cloud. There is a `Configuration Builder` for the both the lastest and stable `TrustGraph` releases.
2024-10-05 20:05:47 -07:00
2025-04-25 19:02:08 +01:00
- [**Configuration Builder** (Stable 0.20.9) 🚀 ](https://config-ui.demo.trustgraph.ai/ )
- [**Configuration Builder** (Latest 0.20.11) 🚀 ](https://dev.config-ui.demo.trustgraph.ai/ )
2024-10-05 20:05:47 -07:00
2025-03-12 18:20:18 -07:00
The `Configuration Builder` has 4 important sections:
2024-10-05 20:40:33 -07:00
2024-11-10 18:29:44 -08:00
- **Component Selection** ✅: Choose from the available deployment platforms, LLMs, graph store, VectorDB, chunking algorithm, chunking parameters, and LLM parameters
2024-11-21 14:21:20 -08:00
- **Customization** 🧰: Customize the prompts for the LLM System, Data Extraction Agents, and Agent Flow
2025-03-12 18:20:18 -07:00
- **Test Suite** 🕵️: Add the **Test Suite** to the configuration available on port `8888`
2024-11-10 18:29:44 -08:00
- **Finish Deployment** 🚀: Download the launch `YAML` files with deployment instructions
2024-10-05 20:05:47 -07:00
2025-03-12 18:20:18 -07:00
The `Configuration Builder` will generate the `YAML` files in `deploy.zip` . Once `deploy.zip` has been downloaded and unzipped, launching TrustGraph is as simple as navigating to the `deploy` directory and running:
2024-10-05 20:05:47 -07:00
```
docker compose up -d
```
2024-11-10 18:29:44 -08:00
> [!TIP]
> Docker is the recommended container orchestration platform for first getting started with TrustGraph.
2024-10-05 20:05:47 -07:00
When finished, shutting down TrustGraph is as simple as:
```
docker compose down -v
```
2025-04-25 19:02:08 +01:00
## System Restarts
2025-01-13 11:25:39 -08:00
The `-v` flag will destroy all data on shut down. To restart the system, it's necessary to keep the volumes. To keep the volumes, shut down without the `-v` flag:
```
docker compose down
```
With the volumes preserved, restarting the system is as simple as:
```
2025-01-13 11:30:15 -08:00
docker compose up -d
2025-01-13 11:25:39 -08:00
```
All data previously in TrustGraph will be saved and usable on restart.
2025-04-25 19:02:08 +01:00
## Test Suite
2024-12-30 10:28:50 -08:00
2025-03-12 18:20:18 -07:00
If added to the build in the `Configuration Builder` , the `Test Suite` will be available at port `8888` . The `Test Suite` has the following capabilities:
2024-12-30 10:28:50 -08:00
2025-03-12 18:20:18 -07:00
- **Graph RAG Chat** 💬: Graph RAG queries in a chat interface
- **Vector Search** 🔎: Semantic similarity search with cosine similarity scores
- **Semantic Relationships** 🕵️: See semantic relationships in a list structure
- **Graph Visualizer** 🌐: Visualize semantic relationships in **3D**
- **Data Loader** 📂: Directly load `.pdf` , `.txt` , or `.md` into the system with document metadata
2024-12-30 10:28:50 -08:00
2025-04-25 19:02:08 +01:00
## Example TrustGraph Notebooks
2024-11-23 18:30:46 -08:00
- [**REST API Notebooks** ](https://github.com/trustgraph-ai/example-notebooks/tree/master/api-examples )
- [**Python SDK Notebooks** ](https://github.com/trustgraph-ai/example-notebooks/tree/master/api-library )
2025-04-25 19:02:08 +01:00
## Prebuilt Configuration Files
TrustGraph `YAML` files are available [here ](https://github.com/trustgraph-ai/trustgraph/releases ). Download `deploy.zip` for the desired release version.
| Release Type | Release Version |
| ------------ | --------------- |
| Latest | [0.20.11 ](https://github.com/trustgraph-ai/trustgraph/releases/download/v0.20.11/deploy.zip ) |
| Stable | [0.20.9 ](https://github.com/trustgraph-ai/trustgraph/releases/download/v0.20.9/deploy.zip ) |
2024-10-02 18:22:09 -07:00
TrustGraph is fully containerized and is launched with a `YAML` configuration file. Unzipping the `deploy.zip` will add the `deploy` directory with the following subdirectories:
- `docker-compose`
- `minikube-k8s`
- `gcp-k8s`
2024-12-17 13:33:31 -08:00
> [!NOTE]
2025-03-12 18:20:18 -07:00
> As more integrations have been added, the number of possible combinations of configurations has become quite large. It is recommended to use the `Configuration Builder` to build your deployment configuration. Each directory contains `YAML` configuration files for the default component selections.
2024-09-23 13:59:02 -07:00
2024-10-02 18:22:09 -07:00
**Docker**:
```
docker compose -f < launch-file.yaml > up -d
```
**Kubernetes**:
2024-09-23 13:59:02 -07:00
```
2024-10-02 18:22:09 -07:00
kubectl apply -f < launch-file.yaml >
2024-09-23 13:59:02 -07:00
```
2024-11-10 18:13:05 -08:00
TrustGraph is designed to be modular to support as many LLMs and environments as possible. A natural fit for a modular architecture is to decompose functions into a set of modules connected through a pub/sub backbone. [Apache Pulsar ](https://github.com/apache/pulsar/ ) serves as this pub/sub backbone. Pulsar acts as the data broker managing data processing queues connected to procesing modules.
2024-07-16 17:00:56 +01:00
2025-04-25 19:02:08 +01:00
### Pulsar Workflows
2024-07-16 17:00:56 +01:00
2025-04-25 19:02:08 +01:00
- For processing flows, Pulsar accepts the output of a processing module and queues it for input to the next subscribed module.
2024-08-27 18:36:39 -07:00
- For services such as LLMs and embeddings, Pulsar provides a client/server model. A Pulsar queue is used as the input to the service. When processed, the output is then delivered to a separate queue where a client subscriber can request that output.
2025-04-25 19:02:08 +01:00
## Data Extraction Agents
2024-09-23 13:59:02 -07:00
2024-11-10 18:13:05 -08:00
TrustGraph extracts knowledge documents to an ultra-dense knowledge graph using 3 automonous data extraction agents. These agents focus on individual elements needed to build the knowledge graph. The agents are:
2024-09-23 13:59:02 -07:00
2024-09-24 14:24:16 -07:00
- Topic Extraction Agent
- Entity Extraction Agent
2024-11-10 18:36:23 -08:00
- Relationship Extraction Agent
2024-09-23 13:59:02 -07:00
2024-11-10 18:36:23 -08:00
The agent prompts are built through templates, enabling customized data extraction agents for a specific use case. The data extraction agents are launched automatically with the loader commands.
2024-09-23 14:21:50 -07:00
2024-09-23 15:01:23 -07:00
PDF file:
2024-09-23 14:21:50 -07:00
```
2024-10-03 14:58:49 -07:00
tg-load-pdf < document.pdf >
2024-09-23 15:01:23 -07:00
```
2024-10-05 20:05:47 -07:00
Text or Markdown file:
2024-09-23 15:01:23 -07:00
```
2024-10-03 14:58:49 -07:00
tg-load-text < document.txt >
2024-09-23 14:21:50 -07:00
```
2024-09-23 13:59:02 -07:00
2025-04-25 19:02:08 +01:00
## Graph RAG Queries
2024-09-23 13:59:02 -07:00
2025-01-20 16:59:48 -08:00
Once the knowledge graph and embeddings have been built or a cognitive core has been loaded, RAG queries are launched with a single line:
2024-09-23 13:59:02 -07:00
```
2025-01-13 11:29:16 -08:00
tg-invoke-graph-rag -q "What are the top 3 takeaways from the document?"
2024-09-23 13:59:02 -07:00
```
2024-07-16 17:00:56 +01:00
2025-04-25 19:02:08 +01:00
## Agent Flow
2024-11-23 18:59:00 -08:00
2025-01-20 16:59:48 -08:00
Invoking the Agent Flow will use a ReAct style approach the combines Graph RAG and text completion requests to think through a problem solution.
2024-11-23 18:59:00 -08:00
```
2025-01-13 11:29:16 -08:00
tg-invoke-agent -v -q "Write a blog post on the top 3 takeaways from the document."
2024-11-23 18:59:00 -08:00
```
> [!TIP]
> Adding `-v` to the agent request will return all of the agent manager's thoughts and observations that led to the final response.
2025-04-25 19:02:08 +01:00
## API Documentation
2024-12-28 16:59:11 +00:00
2025-04-25 19:02:08 +01:00
[Developing on TrustGraph using APIs ](docs/apis/README.md )
2024-12-28 16:59:11 +00:00
2025-04-25 19:02:08 +01:00
## Deploy and Manage TrustGraph
2024-07-16 17:00:56 +01:00
2025-04-25 19:02:08 +01:00
[🚀🙏 Full Deployment Guide 🚀🙏 ](https://trustgraph.ai/docs/getstarted )
2024-07-16 17:06:07 +01:00
2025-04-25 19:02:08 +01:00
## TrustGraph Developer's Guide
2024-07-16 17:06:07 +01:00
2024-09-23 13:59:02 -07:00
[Developing for TrustGraph ](docs/README.development.md )