Text to Knowledge Graph on DGX Station
Transform unstructured text into interactive knowledge graphs with LLM inference and graph visualization
Clone the repository
This playbook is for DGX Station. In a terminal, clone the repository and navigate to the project directory.
git clone https://github.com/NVIDIA/dgx-station-playbooks
cd dgx-station-playbooks/nvidia/station-txt2kg/assets
Start the txt2kg services
The default backend is vLLM (supported on DGX Station). The script starts services and waits for the vLLM backend to be ready (model load can take 30+ minutes; progress is shown in the terminal). To use Ollama instead, run ./start.sh --ollama.
./start.sh
# Optional: ./start.sh --ollama # Use ArangoDB + Ollama instead of vLLM
# Optional: ./start.sh --no-wait # Skip waiting for vLLM readiness
The script will:
- Check for GPU availability
- Start Docker Compose services (Neo4j + vLLM by default)
- Wait for vLLM to be ready and show elapsed time
- Print the Web UI URL when ready
Pull the model (Ollama only)
If you started with Ollama (./start.sh --ollama), pull the Llama model:
docker exec ollama-compose ollama pull llama3.1:405b
Browse available models at https://ollama.com/search. With the default vLLM stack, the model is loaded automatically by the vLLM container.
Access the web interface
Open your browser and navigate to:
http://localhost:3001
You can also access:
- Neo4j Browser (vLLM default): http://localhost:7474
- vLLM API: http://localhost:8001
- ArangoDB (Ollama only): http://localhost:8529
- Ollama API (Ollama only): http://localhost:11434
Upload documents and build knowledge graphs
The web UI defaults to local (vLLM or Ollama). If the backend is still loading, a banner and the model selector will show “Initializing…” until the backend is ready.
5.1. Document Upload
- Use the web interface to upload text documents (markdown, text, CSV supported)
- Documents are automatically chunked and processed for triple extraction
5.2. Knowledge Graph Generation
- The system extracts subject-predicate-object triples using the selected LLM (vLLM or Ollama)
- Triples are stored in Neo4j (vLLM) or ArangoDB (Ollama) for relationship querying
5.3. Interactive Visualization
- View your knowledge graph in 2D or 3D with GPU-accelerated rendering
- Explore nodes and relationships interactively
5.4. Graph-based Queries
- Ask questions about your documents using the query interface
- Graph traversal enhances context with entity relationships from ArangoDB
- LLM generates responses using the enriched graph context
Future Enhancement: GraphRAG capabilities with vector-based KNN search for entity retrieval are planned.
Cleanup and rollback
Stop all services (use the same flags as when you started):
# Stop services (default: vLLM stack)
./stop.sh
# If you started with Ollama: ./stop.sh --ollama
# Remove containers and volumes (optional)
# From assets dir: docker compose -f deploy/compose/docker-compose.vllm.yml down -v
# Or with Ollama: docker compose -f deploy/compose/docker-compose.yml down -v
# Remove downloaded Ollama models (Ollama only)
# docker exec ollama-compose ollama rm llama3.1:405b
Next steps
- Default is vLLM on DGX Station; use
./start.sh --ollamafor ArangoDB + Ollama. - The UI shows a readiness banner and “vLLM (Local) – Initializing…” until the backend is ready.
- Experiment with different models for extraction quality and speed tradeoffs.
- Customize triple extraction prompts for domain-specific knowledge.
- Explore advanced graph querying and visualization features.