avfranco commited on
Commit
c078b44
β€’
1 Parent(s): 5c017a9

app-a4all-agentic-workflow-sprint-2-deploy-docker-live

Browse files
Files changed (3) hide show
  1. Dockerfile copy +34 -0
  2. README.md +52 -19
  3. requirements.txt +15 -0
Dockerfile copy ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ FROM python:3.11.3
2
+
3
+ # Set up a new user named "user" with user ID 1000
4
+ RUN useradd -m -u 1000 user
5
+
6
+ # Switch to the "user" user
7
+ USER user
8
+
9
+ # Set home to the user's home directory
10
+ ENV HOME=/home/user \
11
+ PATH=/home/user/.local/bin:$PATH
12
+
13
+ # Set the working directory to the user's home directory
14
+ WORKDIR $HOME
15
+
16
+ # Get secret OPENAI_API_KEY and clone it as repo at buildtime / changed required to true
17
+ RUN --mount=type=secret,id=OPENAI_API_KEY,mode=0444,required=true
18
+ RUN --mount=type=secret,id=HF_TOKEN,mode=0444,required=true \
19
+ cat /run/secrets/HF_TOKEN > /home/user/cli_token
20
+
21
+ RUN pip install -U "huggingface_hub[cli]"
22
+ RUN git init & git config --global credential.helper store
23
+ RUN huggingface-cli login --token $(cat /home/user/cli_token) --add-to-git-credential
24
+
25
+ # Copy the current directory contents into the container at $HOME/app setting the owner to the user
26
+ COPY --chown=user . $HOME
27
+
28
+ # Clone and run ea4all-agent
29
+ RUN git clone https://avfranco:$(cat cli_token)@huggingface.co/spaces/avfranco/ea4all-agent
30
+ WORKDIR /home/user/ea4all-agent
31
+ RUN pip install --no-cache-dir --upgrade -r requirements.txt
32
+
33
+
34
+ CMD ["python","app.py"]
README.md CHANGED
@@ -1,5 +1,5 @@
1
  ---
2
- title: Talk to your IT landscape
3
  emoji: πŸ‘
4
  colorFrom: purple
5
  colorTo: green
@@ -10,43 +10,78 @@ license: mit
10
 
11
  # Title
12
 
13
- Empower you with access to the value of Enterprise Architecture Knowledge using my Generative AI abilities.
14
-
15
 
16
- # My Name
17
-
18
- ea4all-agent-gpt, your Architect to talk about Enterprise landscape using your own language.
19
 
20
  ## Overview
21
 
22
- What if you could interact with your enterprise architecture landscape using natural language, for example, ask what oppurtinities for simplification it may have. So, you would be able to identify initial options to a new business problem or assess impact of changes. That's not all, you would be able to understand what applications support a business capability or their roadmap, enhance the governance and assurance process to accelerate the solution architecture delivery, improve quality and increase collaboration.
 
 
 
 
 
 
 
 
23
 
24
- ## Dataset
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
25
 
26
- Synthetic structured data with following colums: application, business fit, technical fit, business criticality, roadmap, architect, hosting, capability, domain, description
 
 
 
27
 
28
- ## Bring you own data
29
 
30
- Upload a xlsx formate file with your own landscape data and start learning more
31
 
32
  ## Architecture
33
 
34
- <italic>Core architecture built upon python, langchain, gradio and Openai.<italic>
35
 
36
  - Python 3.11.3
37
  - Pandas
38
  - Langchain
39
  - Langsmith
 
40
 
41
  - RAG (Retrieval Augmented Generation)
42
- - Vectorstore: Faiss (Facebook AI Similarity Search)
43
 
44
  - Prompt Engineering
45
- - Strategy & tactics: Task / Sub-tasks
 
46
 
47
- - Model: OpenAI GPT 3.5-turbo-1106
 
 
48
 
49
- - Task: tabular-question-answering over your own document
 
 
 
 
 
 
50
 
51
  - User Interface
52
  - Gradio
@@ -55,10 +90,8 @@ Upload a xlsx formate file with your own landscape data and start learning more
55
  - CPU basic
56
  - 2vCPU 16GB RAM
57
 
58
- - Deployment
59
- - Docker spaces
60
 
61
  ## Agent Architecture
62
- ![Agent System Container](./ea4all/apm_architecture/ea4all_agent_container.png)
63
 
64
  Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
1
  ---
2
+ title: Talk to your Multi-Agent Architect
3
  emoji: πŸ‘
4
  colorFrom: purple
5
  colorTo: green
 
10
 
11
  # Title
12
 
13
+ Empower people with access to the value of Enterprise Architecture Knowledge using my Generative AI abilities.
 
14
 
 
 
 
15
 
16
  ## Overview
17
 
18
+ What if you could interact with your IT landscape using natural language, for example, \
19
+ ask what oppurtinities for simplification it may have. So, you would be able to identify initial options to a new business problem \
20
+ or assess impact of changes. That's not all, you would be able to identify risks and vulnerabilities on your solution architecture visual artefacts and how to mitigate them, \
21
+ enhance the governance and assurance process to accelerate the solution architecture delivery, \
22
+ improve quality and increase collaboration.
23
+
24
+ ## Knowledge context
25
+
26
+ A synthetic sample IT Landscape dataset, which is described below, is used as context to answer any inquiry for purpose of this minimal-viable release.
27
 
28
+ - Application name
29
+ - Business fit: appropriate, inadequate, perfect
30
+ - Technical fit: adequate, insufficient, perfect
31
+ - Business_criticality: operational, medium, high, critical
32
+ - Roadmap: maintain, invest, divers
33
+ - Architect responsible
34
+ - Hosting: user device, on-premise, IaaS, SaaS
35
+ - Business capability
36
+ - Business domain
37
+ - Description
38
+
39
+ Bring Your Own Data: upload your own IT landscape data or Architecture Diagram and start talking to them.
40
+
41
+ - Application Portfolio Management
42
+ - xlsx tabular format
43
+ - first row (header) with fields name (colums)
44
+
45
+ - Architecture Visual Artefacts
46
+ - jpeg, png
47
 
48
+ **Disclaimer**
49
+ - Your data & image are not accessible or shared with anyone else nor used for training purpose.
50
+ - EA4ALL-VQA Agent should be used ONLY FOR Architecture Diagram images.
51
+ - This feature should NOT BE USED to process inappropriate content.
52
 
53
+ ## Log / Traceability
54
 
55
+ For purpose of continuous evolution, questions and answers are logged in.
56
 
57
  ## Architecture
58
 
59
+ <italic>Core architecture built upon python, langchain, meta-faiss, gradio and Openai.<italic>
60
 
61
  - Python 3.11.3
62
  - Pandas
63
  - Langchain
64
  - Langsmith
65
+ - Langgraph
66
 
67
  - RAG (Retrieval Augmented Generation)
68
+ - Vectorstore: Faiss (Facebook AI Similarity Search
69
 
70
  - Prompt Engineering
71
+ - Strategy & tactics: Task / Sub-tasks
72
+ - Agentic-Workflow: Agents
73
 
74
+ - Models:
75
+ - OpenAI GPT 3.5-turbo-1106 (Text Generation)
76
+ - OpenAI GPT-4-Vision-Preview (Visual Question Answering)
77
 
78
+ - Hierarchical-Agent-Teams:
79
+ - Tabular-question-answering over your own document
80
+ - Supervisor
81
+ - Visual Questions Answering
82
+ - Diagram Component Analysis
83
+ - Risk & Vulnerability and Mitigation options
84
+ - Well-Architecture Design Assessment
85
 
86
  - User Interface
87
  - Gradio
 
90
  - CPU basic
91
  - 2vCPU 16GB RAM
92
 
 
 
93
 
94
  ## Agent Architecture
95
+ ![Agent System Container](images/ea4all_agent_container.png)
96
 
97
  Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
requirements.txt ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ gradio==4.29.0
2
+ gradio_client==0.16.1
3
+ faiss-cpu==1.7.4
4
+ filetype==1.2.0
5
+ langchain==0.1.16
6
+ langchain-community==0.0.34
7
+ langchain-core==0.1.45
8
+ langchain-openai==0.1.3
9
+ openai==1.10.0
10
+ openpyxl==3.1.2
11
+ pandas==2.2.2
12
+ python-dotenv==1.0.0
13
+ tiktoken==0.5.2
14
+ langgraph==0.0.37
15
+ langsmith==0.1.45