solvedesk-ai 0.1.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,251 @@
1
+ Metadata-Version: 2.4
2
+ Name: solvedesk-ai
3
+ Version: 0.1.0
4
+ Summary: Local RAG framework for building intelligent knowledge bases
5
+ Author: Dominik Hofman
6
+ Requires-Python: >=3.10
7
+ Description-Content-Type: text/markdown
8
+ Requires-Dist: typer
9
+ Requires-Dist: fastapi
10
+ Requires-Dist: chromadb
11
+ Requires-Dist: sentence-transformers
12
+ Requires-Dist: python-dotenv
13
+
14
+ # SolveDesk AI
15
+
16
+ Intelligent knowledge base powered by embeddings, vector search and Retrieval-Augmented Generation (RAG).
17
+
18
+ ## Overview
19
+
20
+ SolveDesk AI is a lightweight open-source framework for building local intelligent knowledge bases. The project provides a command-line interface for creating vector databases, importing documents, generating embeddings, performing semantic search, and integrating with local Large Language Models (LLMs).
21
+
22
+ Inspired by frameworks such as Laravel and Django, SolveDesk AI simplifies the process of building Retrieval-Augmented Generation (RAG) systems by providing ready-to-use commands and a modular architecture.
23
+
24
+ The framework can be used both as a production-ready knowledge base solution and as an educational platform for learning modern AI technologies, vector databases, embeddings, and semantic retrieval.
25
+
26
+ ---
27
+
28
+ ## Features
29
+
30
+ * Local knowledge base creation
31
+ * Semantic document search
32
+ * Retrieval-Augmented Generation (RAG)
33
+ * Vector database management
34
+ * Embedding generation
35
+ * Local LLM integration through Ollama
36
+ * Data synchronization from APIs
37
+ * CSV, JSON and XLSX import support
38
+ * Embedding quality analysis
39
+ * Document chunking
40
+ * FastAPI integration
41
+ * Command-line interface
42
+
43
+ ---
44
+
45
+ ## Architecture
46
+
47
+ ```text
48
+ Documents / API
49
+
50
+
51
+ Embedding Model
52
+
53
+
54
+ ChromaDB
55
+
56
+
57
+ Semantic Search
58
+
59
+
60
+ LLM
61
+ Ollama
62
+
63
+
64
+ Generated Response
65
+ ```
66
+
67
+ ---
68
+
69
+ ## Technologies
70
+
71
+ | Technology | Purpose |
72
+ | ------------------------ | ---------------------- |
73
+ | Python 3.11 | Application runtime |
74
+ | FastAPI | REST API |
75
+ | ChromaDB | Vector database |
76
+ | silver-retriever-base-v1 | Embedding model |
77
+ | Sentence Transformers | Embedding generation |
78
+ | Ollama | Local LLM integration |
79
+ | Matplotlib | Data visualization |
80
+ | Typer | Command-line interface |
81
+
82
+ ---
83
+
84
+ ## Installation
85
+
86
+ Clone repository:
87
+
88
+ ```bash
89
+ git clone https://github.com/your-repository/solvedesk-ai.git
90
+ cd solvedesk-ai
91
+ ```
92
+
93
+ Install dependencies:
94
+
95
+ ```bash
96
+ pip install -r requirements.txt
97
+ ```
98
+
99
+ Initialize project:
100
+
101
+ ```bash
102
+ solvedesk conf init
103
+ ```
104
+
105
+ Initialize vector database:
106
+
107
+ ```bash
108
+ solvedesk db init
109
+ ```
110
+
111
+ Configure local LLM:
112
+
113
+ ```bash
114
+ solvedesk llm init
115
+ ```
116
+
117
+ ---
118
+
119
+ ## CLI Commands
120
+
121
+ ### Project Configuration
122
+
123
+ ```bash
124
+ solvedesk conf init
125
+ ```
126
+
127
+ Initialize project environment.
128
+
129
+ ### Database
130
+
131
+ ```bash
132
+ solvedesk db init
133
+ ```
134
+
135
+ Create vector database and download embedding model.
136
+
137
+ ```bash
138
+ solvedesk db list
139
+ ```
140
+
141
+ Display available collections.
142
+
143
+ ```bash
144
+ solvedesk db details COLLECTION_NAME
145
+ ```
146
+
147
+ Display collection details.
148
+
149
+ ### Data Synchronization
150
+
151
+ ```bash
152
+ solvedesk sync api
153
+ ```
154
+
155
+ Import documents from external API.
156
+
157
+ ```bash
158
+ solvedesk sync file
159
+ ```
160
+
161
+ Import documents from CSV, JSON or XLSX files.
162
+
163
+ ### Data Analysis
164
+
165
+ ```bash
166
+ solvedesk data revision
167
+ ```
168
+
169
+ Generate reports containing:
170
+
171
+ * cosine similarity statistics
172
+ * cluster distribution
173
+ * token statistics
174
+ * PCA visualization
175
+
176
+ ### Chunking
177
+
178
+ ```bash
179
+ solvedesk data chunk
180
+ ```
181
+
182
+ Split large documents into smaller chunks suitable for RAG systems.
183
+
184
+ ### LLM Configuration
185
+
186
+ ```bash
187
+ solvedesk llm init
188
+ ```
189
+
190
+ Configure Ollama host and model.
191
+
192
+ ### Run Application
193
+
194
+ ```bash
195
+ solvedesk run:app
196
+ ```
197
+
198
+ Start FastAPI server.
199
+
200
+ ---
201
+
202
+ ## Supported Data Structures
203
+
204
+ ### FAQ
205
+
206
+ ```json
207
+ {
208
+ "question": "How to reset password?",
209
+ "answer": "Use reset password page."
210
+ }
211
+ ```
212
+
213
+ ### Knowledge Base
214
+
215
+ ```json
216
+ {
217
+ "name": "VPN Connection",
218
+ "question": "Cannot connect to VPN",
219
+ "answer": "Verify credentials and VPN client configuration."
220
+ }
221
+ ```
222
+
223
+ ---
224
+
225
+ ## Example Workflow
226
+
227
+ ```bash
228
+ solvedesk conf init
229
+ solvedesk db init
230
+ solvedesk sync file
231
+ solvedesk data revision
232
+ solvedesk llm init
233
+ solvedesk run:app
234
+ ```
235
+
236
+ ---
237
+
238
+ ## Project Goals
239
+
240
+ * Build local intelligent knowledge bases
241
+ * Simplify RAG implementation
242
+ * Support AI experimentation
243
+ * Provide full control over data
244
+ * Enable local LLM deployments
245
+ * Offer educational value for learning AI technologies
246
+
247
+ ---
248
+
249
+ ## License
250
+
251
+ MIT License
@@ -0,0 +1,238 @@
1
+ # SolveDesk AI
2
+
3
+ Intelligent knowledge base powered by embeddings, vector search and Retrieval-Augmented Generation (RAG).
4
+
5
+ ## Overview
6
+
7
+ SolveDesk AI is a lightweight open-source framework for building local intelligent knowledge bases. The project provides a command-line interface for creating vector databases, importing documents, generating embeddings, performing semantic search, and integrating with local Large Language Models (LLMs).
8
+
9
+ Inspired by frameworks such as Laravel and Django, SolveDesk AI simplifies the process of building Retrieval-Augmented Generation (RAG) systems by providing ready-to-use commands and a modular architecture.
10
+
11
+ The framework can be used both as a production-ready knowledge base solution and as an educational platform for learning modern AI technologies, vector databases, embeddings, and semantic retrieval.
12
+
13
+ ---
14
+
15
+ ## Features
16
+
17
+ * Local knowledge base creation
18
+ * Semantic document search
19
+ * Retrieval-Augmented Generation (RAG)
20
+ * Vector database management
21
+ * Embedding generation
22
+ * Local LLM integration through Ollama
23
+ * Data synchronization from APIs
24
+ * CSV, JSON and XLSX import support
25
+ * Embedding quality analysis
26
+ * Document chunking
27
+ * FastAPI integration
28
+ * Command-line interface
29
+
30
+ ---
31
+
32
+ ## Architecture
33
+
34
+ ```text
35
+ Documents / API
36
+
37
+
38
+ Embedding Model
39
+
40
+
41
+ ChromaDB
42
+
43
+
44
+ Semantic Search
45
+
46
+
47
+ LLM
48
+ Ollama
49
+
50
+
51
+ Generated Response
52
+ ```
53
+
54
+ ---
55
+
56
+ ## Technologies
57
+
58
+ | Technology | Purpose |
59
+ | ------------------------ | ---------------------- |
60
+ | Python 3.11 | Application runtime |
61
+ | FastAPI | REST API |
62
+ | ChromaDB | Vector database |
63
+ | silver-retriever-base-v1 | Embedding model |
64
+ | Sentence Transformers | Embedding generation |
65
+ | Ollama | Local LLM integration |
66
+ | Matplotlib | Data visualization |
67
+ | Typer | Command-line interface |
68
+
69
+ ---
70
+
71
+ ## Installation
72
+
73
+ Clone repository:
74
+
75
+ ```bash
76
+ git clone https://github.com/your-repository/solvedesk-ai.git
77
+ cd solvedesk-ai
78
+ ```
79
+
80
+ Install dependencies:
81
+
82
+ ```bash
83
+ pip install -r requirements.txt
84
+ ```
85
+
86
+ Initialize project:
87
+
88
+ ```bash
89
+ solvedesk conf init
90
+ ```
91
+
92
+ Initialize vector database:
93
+
94
+ ```bash
95
+ solvedesk db init
96
+ ```
97
+
98
+ Configure local LLM:
99
+
100
+ ```bash
101
+ solvedesk llm init
102
+ ```
103
+
104
+ ---
105
+
106
+ ## CLI Commands
107
+
108
+ ### Project Configuration
109
+
110
+ ```bash
111
+ solvedesk conf init
112
+ ```
113
+
114
+ Initialize project environment.
115
+
116
+ ### Database
117
+
118
+ ```bash
119
+ solvedesk db init
120
+ ```
121
+
122
+ Create vector database and download embedding model.
123
+
124
+ ```bash
125
+ solvedesk db list
126
+ ```
127
+
128
+ Display available collections.
129
+
130
+ ```bash
131
+ solvedesk db details COLLECTION_NAME
132
+ ```
133
+
134
+ Display collection details.
135
+
136
+ ### Data Synchronization
137
+
138
+ ```bash
139
+ solvedesk sync api
140
+ ```
141
+
142
+ Import documents from external API.
143
+
144
+ ```bash
145
+ solvedesk sync file
146
+ ```
147
+
148
+ Import documents from CSV, JSON or XLSX files.
149
+
150
+ ### Data Analysis
151
+
152
+ ```bash
153
+ solvedesk data revision
154
+ ```
155
+
156
+ Generate reports containing:
157
+
158
+ * cosine similarity statistics
159
+ * cluster distribution
160
+ * token statistics
161
+ * PCA visualization
162
+
163
+ ### Chunking
164
+
165
+ ```bash
166
+ solvedesk data chunk
167
+ ```
168
+
169
+ Split large documents into smaller chunks suitable for RAG systems.
170
+
171
+ ### LLM Configuration
172
+
173
+ ```bash
174
+ solvedesk llm init
175
+ ```
176
+
177
+ Configure Ollama host and model.
178
+
179
+ ### Run Application
180
+
181
+ ```bash
182
+ solvedesk run:app
183
+ ```
184
+
185
+ Start FastAPI server.
186
+
187
+ ---
188
+
189
+ ## Supported Data Structures
190
+
191
+ ### FAQ
192
+
193
+ ```json
194
+ {
195
+ "question": "How to reset password?",
196
+ "answer": "Use reset password page."
197
+ }
198
+ ```
199
+
200
+ ### Knowledge Base
201
+
202
+ ```json
203
+ {
204
+ "name": "VPN Connection",
205
+ "question": "Cannot connect to VPN",
206
+ "answer": "Verify credentials and VPN client configuration."
207
+ }
208
+ ```
209
+
210
+ ---
211
+
212
+ ## Example Workflow
213
+
214
+ ```bash
215
+ solvedesk conf init
216
+ solvedesk db init
217
+ solvedesk sync file
218
+ solvedesk data revision
219
+ solvedesk llm init
220
+ solvedesk run:app
221
+ ```
222
+
223
+ ---
224
+
225
+ ## Project Goals
226
+
227
+ * Build local intelligent knowledge bases
228
+ * Simplify RAG implementation
229
+ * Support AI experimentation
230
+ * Provide full control over data
231
+ * Enable local LLM deployments
232
+ * Offer educational value for learning AI technologies
233
+
234
+ ---
235
+
236
+ ## License
237
+
238
+ MIT License
@@ -0,0 +1,23 @@
1
+ [build-system]
2
+ requires = ["setuptools>=69", "wheel"]
3
+ build-backend = "setuptools.build_meta"
4
+
5
+ [project]
6
+ name = "solvedesk-ai"
7
+ version = "0.1.0"
8
+ description = "Local RAG framework for building intelligent knowledge bases"
9
+ readme = "README.md"
10
+ requires-python = ">=3.10"
11
+ authors = [
12
+ { name = "Dominik Hofman" }
13
+ ]
14
+ dependencies = [
15
+ "typer",
16
+ "fastapi",
17
+ "chromadb",
18
+ "sentence-transformers",
19
+ "python-dotenv"
20
+ ]
21
+
22
+ [project.scripts]
23
+ solvedesk = "solvedesk.cli:app"
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
@@ -0,0 +1,19 @@
1
+ from setuptools import setup, find_packages
2
+
3
+ setup(
4
+ name="solvedesk",
5
+ version="1.0.0",
6
+
7
+ packages=find_packages(),
8
+
9
+ install_requires=[
10
+ "typer",
11
+ "rich"
12
+ ],
13
+
14
+ entry_points={
15
+ "console_scripts": [
16
+ "solvedesk=solvedesk_cmd.cmd:app"
17
+ ]
18
+ }
19
+ )
@@ -0,0 +1,251 @@
1
+ Metadata-Version: 2.4
2
+ Name: solvedesk-ai
3
+ Version: 0.1.0
4
+ Summary: Local RAG framework for building intelligent knowledge bases
5
+ Author: Dominik Hofman
6
+ Requires-Python: >=3.10
7
+ Description-Content-Type: text/markdown
8
+ Requires-Dist: typer
9
+ Requires-Dist: fastapi
10
+ Requires-Dist: chromadb
11
+ Requires-Dist: sentence-transformers
12
+ Requires-Dist: python-dotenv
13
+
14
+ # SolveDesk AI
15
+
16
+ Intelligent knowledge base powered by embeddings, vector search and Retrieval-Augmented Generation (RAG).
17
+
18
+ ## Overview
19
+
20
+ SolveDesk AI is a lightweight open-source framework for building local intelligent knowledge bases. The project provides a command-line interface for creating vector databases, importing documents, generating embeddings, performing semantic search, and integrating with local Large Language Models (LLMs).
21
+
22
+ Inspired by frameworks such as Laravel and Django, SolveDesk AI simplifies the process of building Retrieval-Augmented Generation (RAG) systems by providing ready-to-use commands and a modular architecture.
23
+
24
+ The framework can be used both as a production-ready knowledge base solution and as an educational platform for learning modern AI technologies, vector databases, embeddings, and semantic retrieval.
25
+
26
+ ---
27
+
28
+ ## Features
29
+
30
+ * Local knowledge base creation
31
+ * Semantic document search
32
+ * Retrieval-Augmented Generation (RAG)
33
+ * Vector database management
34
+ * Embedding generation
35
+ * Local LLM integration through Ollama
36
+ * Data synchronization from APIs
37
+ * CSV, JSON and XLSX import support
38
+ * Embedding quality analysis
39
+ * Document chunking
40
+ * FastAPI integration
41
+ * Command-line interface
42
+
43
+ ---
44
+
45
+ ## Architecture
46
+
47
+ ```text
48
+ Documents / API
49
+
50
+
51
+ Embedding Model
52
+
53
+
54
+ ChromaDB
55
+
56
+
57
+ Semantic Search
58
+
59
+
60
+ LLM
61
+ Ollama
62
+
63
+
64
+ Generated Response
65
+ ```
66
+
67
+ ---
68
+
69
+ ## Technologies
70
+
71
+ | Technology | Purpose |
72
+ | ------------------------ | ---------------------- |
73
+ | Python 3.11 | Application runtime |
74
+ | FastAPI | REST API |
75
+ | ChromaDB | Vector database |
76
+ | silver-retriever-base-v1 | Embedding model |
77
+ | Sentence Transformers | Embedding generation |
78
+ | Ollama | Local LLM integration |
79
+ | Matplotlib | Data visualization |
80
+ | Typer | Command-line interface |
81
+
82
+ ---
83
+
84
+ ## Installation
85
+
86
+ Clone repository:
87
+
88
+ ```bash
89
+ git clone https://github.com/your-repository/solvedesk-ai.git
90
+ cd solvedesk-ai
91
+ ```
92
+
93
+ Install dependencies:
94
+
95
+ ```bash
96
+ pip install -r requirements.txt
97
+ ```
98
+
99
+ Initialize project:
100
+
101
+ ```bash
102
+ solvedesk conf init
103
+ ```
104
+
105
+ Initialize vector database:
106
+
107
+ ```bash
108
+ solvedesk db init
109
+ ```
110
+
111
+ Configure local LLM:
112
+
113
+ ```bash
114
+ solvedesk llm init
115
+ ```
116
+
117
+ ---
118
+
119
+ ## CLI Commands
120
+
121
+ ### Project Configuration
122
+
123
+ ```bash
124
+ solvedesk conf init
125
+ ```
126
+
127
+ Initialize project environment.
128
+
129
+ ### Database
130
+
131
+ ```bash
132
+ solvedesk db init
133
+ ```
134
+
135
+ Create vector database and download embedding model.
136
+
137
+ ```bash
138
+ solvedesk db list
139
+ ```
140
+
141
+ Display available collections.
142
+
143
+ ```bash
144
+ solvedesk db details COLLECTION_NAME
145
+ ```
146
+
147
+ Display collection details.
148
+
149
+ ### Data Synchronization
150
+
151
+ ```bash
152
+ solvedesk sync api
153
+ ```
154
+
155
+ Import documents from external API.
156
+
157
+ ```bash
158
+ solvedesk sync file
159
+ ```
160
+
161
+ Import documents from CSV, JSON or XLSX files.
162
+
163
+ ### Data Analysis
164
+
165
+ ```bash
166
+ solvedesk data revision
167
+ ```
168
+
169
+ Generate reports containing:
170
+
171
+ * cosine similarity statistics
172
+ * cluster distribution
173
+ * token statistics
174
+ * PCA visualization
175
+
176
+ ### Chunking
177
+
178
+ ```bash
179
+ solvedesk data chunk
180
+ ```
181
+
182
+ Split large documents into smaller chunks suitable for RAG systems.
183
+
184
+ ### LLM Configuration
185
+
186
+ ```bash
187
+ solvedesk llm init
188
+ ```
189
+
190
+ Configure Ollama host and model.
191
+
192
+ ### Run Application
193
+
194
+ ```bash
195
+ solvedesk run:app
196
+ ```
197
+
198
+ Start FastAPI server.
199
+
200
+ ---
201
+
202
+ ## Supported Data Structures
203
+
204
+ ### FAQ
205
+
206
+ ```json
207
+ {
208
+ "question": "How to reset password?",
209
+ "answer": "Use reset password page."
210
+ }
211
+ ```
212
+
213
+ ### Knowledge Base
214
+
215
+ ```json
216
+ {
217
+ "name": "VPN Connection",
218
+ "question": "Cannot connect to VPN",
219
+ "answer": "Verify credentials and VPN client configuration."
220
+ }
221
+ ```
222
+
223
+ ---
224
+
225
+ ## Example Workflow
226
+
227
+ ```bash
228
+ solvedesk conf init
229
+ solvedesk db init
230
+ solvedesk sync file
231
+ solvedesk data revision
232
+ solvedesk llm init
233
+ solvedesk run:app
234
+ ```
235
+
236
+ ---
237
+
238
+ ## Project Goals
239
+
240
+ * Build local intelligent knowledge bases
241
+ * Simplify RAG implementation
242
+ * Support AI experimentation
243
+ * Provide full control over data
244
+ * Enable local LLM deployments
245
+ * Offer educational value for learning AI technologies
246
+
247
+ ---
248
+
249
+ ## License
250
+
251
+ MIT License
@@ -0,0 +1,11 @@
1
+ README.md
2
+ pyproject.toml
3
+ setup.py
4
+ solvedesk_ai.egg-info/PKG-INFO
5
+ solvedesk_ai.egg-info/SOURCES.txt
6
+ solvedesk_ai.egg-info/dependency_links.txt
7
+ solvedesk_ai.egg-info/entry_points.txt
8
+ solvedesk_ai.egg-info/requires.txt
9
+ solvedesk_ai.egg-info/top_level.txt
10
+ solvedesk_cmd/__init__.py
11
+ solvedesk_cmd/cmd.py
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ solvedesk = solvedesk.cli:app
@@ -0,0 +1,5 @@
1
+ typer
2
+ fastapi
3
+ chromadb
4
+ sentence-transformers
5
+ python-dotenv
@@ -0,0 +1 @@
1
+ solvedesk_cmd
File without changes
@@ -0,0 +1,22 @@
1
+ import typer
2
+
3
+ from solvedesk_cmd.commands.conf import app as conf_cmd
4
+ from solvedesk_cmd.commands.db import app as db_cmd
5
+ from solvedesk_cmd.commands.sync import app as sync_cmd
6
+ from solvedesk_cmd.commands.llm import app as llm_cmd
7
+ from solvedesk_cmd.commands.data import app as data_cmd
8
+ from solvedesk_cmd.commands.security import app as secure_cmd
9
+ from solvedesk_cmd.commands.main import app as main_cmd
10
+
11
+ app = typer.Typer(name="solvedesk")
12
+
13
+ app.add_typer(conf_cmd, name="conf", help="SolveDesk configuration")
14
+ app.add_typer(db_cmd, name="db", help="Vector Database configuration")
15
+ app.add_typer(sync_cmd, name="sync", help="Data Loader Configuration")
16
+ app.add_typer(llm_cmd, name="llm", help="LLM Configuration")
17
+ app.add_typer(data_cmd, name="data", help="Data & Embeddings analyse")
18
+ app.add_typer(secure_cmd, name="security", help="Configure Security by JWT")
19
+ app.add_typer(main_cmd, name="main", help="SolveDesk API Launcher")
20
+
21
+ if __name__ == "__main__":
22
+ app()