adi-123 commited on
Commit
9f6bd24
Β·
verified Β·
1 Parent(s): 60dbab1

Upload 3 files

Browse files
Files changed (3) hide show
  1. README.md +35 -6
  2. app.py +20 -0
  3. requirements.txt +15 -0
README.md CHANGED
@@ -1,14 +1,43 @@
1
  ---
2
- title: Project Report Analyzer
3
- emoji: 🐨
4
- colorFrom: red
5
- colorTo: indigo
6
  sdk: gradio
7
  sdk_version: 6.3.0
8
  app_file: app.py
9
  pinned: false
10
  license: mit
11
- short_description: Hybrid GraphRAG for extracting insights
12
  ---
13
 
14
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  ---
2
+ title: Project Intelligence Hub
3
+ emoji: πŸ”
4
+ colorFrom: blue
5
+ colorTo: purple
6
  sdk: gradio
7
  sdk_version: 6.3.0
8
  app_file: app.py
9
  pinned: false
10
  license: mit
11
+ short_description: PDF reports to queryable knowledge graph
12
  ---
13
 
14
+ # Project Intelligence Hub
15
+
16
+ Transform PDF project reports into a queryable Neo4j knowledge graph with natural language queries.
17
+
18
+ ## Features
19
+
20
+ - **PDF Ingestion** β€” Extract entities and relationships from project reports
21
+ - **Knowledge Graph** β€” Build structured graph with Projects, Budgets, Locations, Milestones, Challenges
22
+ - **Hybrid Search** β€” Vector embeddings + BM25 keyword search
23
+ - **Natural Language Q&A** β€” Query the graph using plain English
24
+
25
+ ## Setup (Required Secrets)
26
+
27
+ Configure these in **Settings > Repository secrets**:
28
+
29
+ | Secret | Description |
30
+ |--------|-------------|
31
+ | `TOGETHER_API_KEY` | Together AI API key |
32
+ | `NEO4J_URI` | Neo4j connection URI (e.g., `neo4j+s://xxx.databases.neo4j.io`) |
33
+ | `NEO4J_USERNAME` | Neo4j username (usually `neo4j`) |
34
+ | `NEO4J_PASSWORD` | Neo4j password |
35
+ | `NEO4J_DATABASE` | Neo4j database name (usually `neo4j`) |
36
+
37
+ ## Tech Stack
38
+
39
+ - **LLM**: Together AI (DeepSeek-V3)
40
+ - **Embeddings**: m2-bert-80M-8k-retrieval
41
+ - **Graph DB**: Neo4j Aura
42
+ - **Reranker**: ms-marco-MiniLM-L-6-v2
43
+ - **UI**: Gradio
app.py ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ """Project Intelligence Hub - Hugging Face Spaces Entry Point."""
2
+
3
+ import os
4
+
5
+ # Ensure environment variables are loaded from HF Secrets
6
+ # Users set these in Settings > Repository secrets on HF Spaces
7
+
8
+ from src.ui.gradio_app import GradioApp
9
+
10
+ if __name__ == "__main__":
11
+ app = GradioApp()
12
+ app.launch(
13
+ server_name="0.0.0.0",
14
+ server_port=7860,
15
+ share=False,
16
+ )
17
+ else:
18
+ # For Hugging Face Spaces - module-level app object
19
+ app = GradioApp()
20
+ demo = app.build()
requirements.txt ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ gradio==6.3.0
2
+ python-dotenv==1.0.1
3
+ pydantic==2.12.5
4
+ neo4j==5.22.0
5
+ pypdf==4.2.0
6
+ together==1.3.14
7
+ langchain==0.2.17
8
+ langchain-core==0.2.43
9
+ langchain-community==0.2.19
10
+ langchain-experimental==0.0.60
11
+ langchain-together==0.1.5
12
+ langchain-text-splitters==0.2.4
13
+ tiktoken==0.7.0
14
+ sentence-transformers
15
+ httpx>=0.24.1