docoreai 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,22 @@
1
+ # DoCoreAI License
2
+
3
+ ## 1. License Grant
4
+ This software is open-source and provided under the **MIT License**, with additional restrictions for SaaS and multi-agent implementations.
5
+
6
+ ## 2. Permitted Uses
7
+ - Free to **use, modify, and distribute** for **personal, research, and non-commercial** purposes.
8
+ - Can be **integrated into private applications** or internal projects.
9
+
10
+ ## 3. Restrictions
11
+ - **No SaaS Deployment** – This software **cannot** be offered as a hosted or cloud-based service without explicit permission.
12
+ - **No Multi-Agent Orchestration** – You **may not** modify or extend the software for multi-agent systems.
13
+ - **Commercial Use Requires Permission** – Enterprises or businesses must obtain a **commercial license** before monetizing this software.
14
+
15
+ ## 4. Contributions
16
+ Contributions are welcomed! Any submitted code is licensed under the same terms as this project.
17
+
18
+ ## 5. Liability Disclaimer
19
+ This software is provided **"as is"** without warranties of any kind. The authors are **not liable** for any damages resulting from its use.
20
+
21
+ ## 6. Commercial Licensing
22
+ For enterprise or SaaS licensing, contact **sajijohnmiranda@gmail.com**.
@@ -0,0 +1,211 @@
1
+ Metadata-Version: 2.2
2
+ Name: docoreai
3
+ Version: 0.1.0
4
+ Summary: DoCoreAI is an intelligence profiler that optimizes prompts
5
+ Home-page: https://github.com/SajiJohnMiranda/DoCoreAI
6
+ Author: Saji John
7
+ Author-email: sajijohnmiranda@gmail.com
8
+ Project-URL: Documentation, https://your-docs-url.com
9
+ Project-URL: Blog Post, https://mobilights.medium.com/intelligent-prompt-optimization-bac89b64fa84
10
+ Project-URL: Source Code, https://github.com/SajiJohnMiranda/DoCoreAI
11
+ Classifier: Programming Language :: Python :: 3
12
+ Classifier: License :: OSI Approved :: MIT License
13
+ Classifier: Operating System :: OS Independent
14
+ Requires-Python: >=3.7
15
+ Description-Content-Type: text/markdown
16
+ License-File: LICENSE.md
17
+ Requires-Dist: uvicorn
18
+ Requires-Dist: pydantic
19
+ Requires-Dist: python-dotenv
20
+ Requires-Dist: openai
21
+ Requires-Dist: langchain
22
+ Requires-Dist: groq
23
+ Dynamic: author
24
+ Dynamic: author-email
25
+ Dynamic: classifier
26
+ Dynamic: description
27
+ Dynamic: description-content-type
28
+ Dynamic: home-page
29
+ Dynamic: project-url
30
+ Dynamic: requires-dist
31
+ Dynamic: requires-python
32
+ Dynamic: summary
33
+
34
+ # 🌟 DoCoreAI – The Future of Smart AI Interactions
35
+
36
+ **πŸš€ Optimize LLM Responses | πŸ› οΈ Fine-Tune AI Intelligence | ⚑ Supercharge Prompting**
37
+
38
+ ---
39
+
40
+ ## πŸ”₯ What is DoCoreAI?
41
+ DoCoreAI is an AI **intelligence profiler that optimizes prompts dynamically** based on predefined intelligence parameters. Instead of relying on generic LLM prompts, DoCoreAI customizes intelligence properties (such as reasoning, creativity, and precision) to ensure AI agents generate responses that perfectly align with their roles.
42
+
43
+ Its an **open-source powerhouse** designed to make **Large Language Models (LLMs) smarter, sharper, and more efficient**. It acts as a **plug-and-play optimizer** that dynamically enhances AI reasoning, problem-solving, and decision-making, giving developers total control over AI intelligence.
44
+
45
+ Whether you're building an AI agent, chatbot, a virtual assistant, or a SaaS application, **DoCoreAI fine-tunes AI prompts in real time**, ensuring **clear, precise, and highly contextual responses**.
46
+
47
+ ---
48
+
49
+ ## 🌍 Why DoCoreAI?
50
+ ### βœ… **Key Benefits**
51
+ - **🧠 Smarter AI** – Enhances reasoning, problem-solving, and adaptability.
52
+ - **⚑ Best Responses** – Intelligent prompts mean more accurate answers.
53
+ - **πŸ”§ Full Control** – Developers can fine-tune intelligence parameters like depth, creativity, and accuracy.
54
+ - **πŸ”Œ Easy API Integration** – Works seamlessly with OpenAI, Cohere, Mistral, and other LLMs.
55
+ - **πŸ› οΈ Open-Source & Extensible** – Customize it for your specific use case.
56
+
57
+ 🚨Lets see some Problems:
58
+
59
+ - Generic LLM prompts don’t tell AI agents how smart to be for a task.
60
+
61
+ - LLMs respond the same way to different tasks, often lacking role-specific intelligence.
62
+
63
+ - A customer support AI should be empathetic and clear, while a data analyst AI should be logical and precise.
64
+
65
+ - Generic prompts fail to define the intelligence level needed to perform a task efficiently when some tasks need high reasoning, low creativity, while others need high creativity, low precision..
66
+
67
+ The Solution:
68
+
69
+ DoCoreAI solves this by intelligently adjusting skill parameters based on context, so LLMs generate perfect responses for each role, ensuring:
70
+ - Better response accuracy
71
+ - Improved AI agent adaptability
72
+ - Optimized decision-making and creativity when needed
73
+
74
+ ---
75
+
76
+ ## πŸ’‘ How Does It Work?
77
+
78
+ DoCoreAI follows a structured process to enhance AI prompts:
79
+
80
+ 1️⃣ AI Role Detection – Identifies the AI agent’s role and task.
81
+ 2️⃣ Intelligence Mapping – Assigns reasoning, creativity, precision, and temperature values.
82
+ 3️⃣ Prompt Optimization – Fine-tunes the input prompt using optimized intelligence properties.
83
+ 4️⃣ LLM Execution – Sends the enhanced prompt to OpenAI, Groq, or other supported models.
84
+
85
+ πŸ’‘ Example:
86
+ **Before** DoCoreAI: "Summarize this report."
87
+ **After** DoCoreAI: "Summarize this report with high precision (0.9), low creativity (0.2), and deep reasoning (0.8)."
88
+
89
+ ### **πŸ”— Step-by-Step Workflow:**
90
+ 1️⃣ **User Query β†’** A user submits a question/query to your application.
91
+ 2️⃣ **DoCoreAI Enhances Prompt β†’** The system analyzes the query or prompt and generates an optimized prompt with **dynamic intelligence parameters**. The required intelligence range for each these parameters (like **Reasoning** - Determines logical depth, **Creativity** - Adjusts randomness , **Precision** - Controls specificity) are inferred from the query automatically.
92
+
93
+ 3️⃣ **Send to LLM β†’** The refined prompt is sent to your preferred LLM (OpenAI, Anthropic, Cohere, etc.).
94
+ 4️⃣ **LLM Response β†’** The model returns a highly optimized answer.
95
+ 5️⃣ **Final Output β†’** Your application displays the AI’s enhanced response to the user.
96
+
97
+ πŸ‘‰ **End Result?** More accurate, contextually rich, and intelligent AI responses that **feel human-like and insightful**.
98
+
99
+ ---
100
+
101
+ ## πŸ’‘ How DoCoreAI Helps AI Agents
102
+
103
+ DoCoreAI ensures that AI agents perform at their best by customizing intelligence settings per task. Here’s how:
104
+
105
+ πŸ“ž Support Agent AI β†’ Needs high empathy, clarity, and logical reasoning.
106
+ πŸ“Š Data Analyst AI β†’ Requires high precision and deep analytical reasoning.
107
+ 🎨 Creative Writing AI β†’ Boosts creativity for idea generation and storytelling.
108
+
109
+ This adaptive approach ensures that LLMs deliver role-specific, optimized responses every time.
110
+
111
+ ---
112
+
113
+ ## πŸš€ Use Cases
114
+ DoCoreAI is highly versatile and can be integrated across various domains:
115
+
116
+ πŸ”Ή Customer Support AI: Ensures friendly, concise, and empathetic interactions.
117
+ πŸ”Ή Business Analytics AI: Generates precise reports with accurate insights.
118
+ πŸ”Ή Medical AI Assistants: Maintains high reasoning while reducing creativity for factual correctness.
119
+ πŸ”Ή Content Creation AI: Enhances creativity while keeping precision at a balanced level.
120
+ πŸ”Ή Legal & Compliance AI: Ensures responses are strictly factual and highly precise.
121
+
122
+ ### 🏒 **For Businesses & Startups:**
123
+ - **πŸ€– AI Agents, Chatbots & Virtual Assistants** – Make AI interactions **more natural and helpful**.
124
+ - **πŸ“ž AI Customer Support** – Improve support accuracy, reducing agent workload.
125
+ - **πŸ“Š Data & Market Analysis** – Extract **meaningful insights from unstructured data**.
126
+ - **🎨 Creative AI** – Enhances storytelling, content generation, and brainstorming.
127
+
128
+ ### πŸ› οΈ **For Developers & Engineers:**
129
+ - **βš™οΈ Fine-Tuning Custom LLMs** – Boost reasoning, logic, and adaptability.
130
+ - **πŸ“ AI-Powered Content Generation** – Enhance blogs, marketing copy, and technical writing.
131
+ - **πŸ§ͺ Research & Experimentation** – Test and build **next-gen AI applications**.
132
+
133
+ ### πŸ’ **Generalized solution for All**
134
+ - **βš™οΈ Easily Works across all domains and user roles, allowing fine-tuning for different applications
135
+
136
+ ---
137
+
138
+ ## 🎯 Getting Started
139
+ ### **πŸ“Œ Installation**
140
+ 1️⃣ Clone the repo:
141
+ ```bash
142
+ git clone https://github.com/SajiJohnMiranda/DoCoreAI.git
143
+ ```
144
+ 2️⃣ Install dependencies:
145
+ ```bash
146
+ pip install -r requirements.txt
147
+ ```
148
+ 3️⃣ Run DoCoreAI:
149
+ ```bash
150
+ uvicorn api.main:app
151
+ ```
152
+ 4️⃣ Start using the API:
153
+ ```bash
154
+ Browser POST "http://127.0.0.1:8000/docs" Select /intelligence-profiler-demo
155
+ ```
156
+
157
+ πŸŽ‰ **You're all set to build smarter AI applications!**
158
+
159
+ ---
160
+
161
+ ## πŸ”— Integrations & Compatibility
162
+ DoCoreAI is designed to work seamlessly with major AI platforms:
163
+ - Works with **OpenAI GPT, Claude, LLaMA, Falcon, Cohere, and more.**
164
+ - Supports **LangChain, FastAPI, Flask, and Django.**
165
+ - Easy to extend via **plugin-based architecture.**
166
+
167
+ ---
168
+
169
+ ## πŸ“ˆ Why Developers Should Use DoCoreAI
170
+
171
+ πŸ”Ή Smarter AI, Better Results
172
+ -Ensures AI models understand the intelligence scope required for each task.
173
+ -Enhances prompt efficiency, reducing trial and error in prompt engineering.
174
+
175
+ πŸ”Ή Saves Time & Effort
176
+ -No need for manual prompt tuningβ€”DoCoreAI does it for you.
177
+ -Works out of the box with OpenAI and Groq models.
178
+
179
+ πŸ”Ή Ideal for SaaS & AI-driven Applications
180
+ -Perfect for chatbots, AI assistants, automation, and enterprise AI solutions.
181
+ -DoCoreAI transforms AI interactions by making prompts truly intelligent.
182
+
183
+ ---
184
+
185
+ ## 🌟 Join the Community:
186
+ Let’s build the future of AI-powered intelligence tuning together! πŸš€
187
+ 🀝 **Contribute:** Open issues, create pull requests, and help improve DoCoreAI!
188
+ πŸ“’ **Discuss & Collaborate:** Join our **Discord & GitHub Discussions**.
189
+ 🌟 **Star the Repo!** If you find this useful, don’t forget to star ⭐ it on GitHub!
190
+
191
+ πŸ‘‰ [GitHub Repo](https://github.com/SajiJohnMiranda/DoCoreAI) | [Docs (Coming Soon)]
192
+
193
+
194
+ ## Recommended LLMs for Intelligence Optimization
195
+ DoCoreAI is designed to refine and optimize user prompts by dynamically adjusting intelligence parameters such as reasoning, creativity, and precision. To achieve the best results, we recommend using ChatGPT (GPT-4-turbo) for this task.
196
+ While DoCoreAI is compatible with other LLMs (e.g., LLaMA 3, Claude etc), results may vary depending on the model’s capabilities. Developers are encouraged to experiment and contribute insights on different LLM integrations.
197
+
198
+ **Future Support for Fine-Tuned Models:**
199
+ We recognize the growing demand for fine-tuned open-source models tailored for specific applications. In future updates, we aim to explore Integration with fine-tuned LLaMA/Custom GPT models, Support for locally deployed models (via Ollama, vLLM, etc.) & Customization of intelligence parameters based on domain-specific data.
200
+
201
+ Our vision is to make DoCoreAI adaptable to both proprietary and open-source AI models, ensuring flexibility for all developers. Contributions and suggestions are welcome!
202
+
203
+ ---
204
+
205
+ ## βš–οΈ License
206
+ Licensed under [MIT License](./LICENSE.md). Use freely, contribute, and enhance AI for everyone!
207
+
208
+ ---
209
+
210
+ πŸ’‘ **Let’s revolutionize AI prompt optimization together!** πŸš€
211
+
@@ -0,0 +1,178 @@
1
+ # 🌟 DoCoreAI – The Future of Smart AI Interactions
2
+
3
+ **πŸš€ Optimize LLM Responses | πŸ› οΈ Fine-Tune AI Intelligence | ⚑ Supercharge Prompting**
4
+
5
+ ---
6
+
7
+ ## πŸ”₯ What is DoCoreAI?
8
+ DoCoreAI is an AI **intelligence profiler that optimizes prompts dynamically** based on predefined intelligence parameters. Instead of relying on generic LLM prompts, DoCoreAI customizes intelligence properties (such as reasoning, creativity, and precision) to ensure AI agents generate responses that perfectly align with their roles.
9
+
10
+ Its an **open-source powerhouse** designed to make **Large Language Models (LLMs) smarter, sharper, and more efficient**. It acts as a **plug-and-play optimizer** that dynamically enhances AI reasoning, problem-solving, and decision-making, giving developers total control over AI intelligence.
11
+
12
+ Whether you're building an AI agent, chatbot, a virtual assistant, or a SaaS application, **DoCoreAI fine-tunes AI prompts in real time**, ensuring **clear, precise, and highly contextual responses**.
13
+
14
+ ---
15
+
16
+ ## 🌍 Why DoCoreAI?
17
+ ### βœ… **Key Benefits**
18
+ - **🧠 Smarter AI** – Enhances reasoning, problem-solving, and adaptability.
19
+ - **⚑ Best Responses** – Intelligent prompts mean more accurate answers.
20
+ - **πŸ”§ Full Control** – Developers can fine-tune intelligence parameters like depth, creativity, and accuracy.
21
+ - **πŸ”Œ Easy API Integration** – Works seamlessly with OpenAI, Cohere, Mistral, and other LLMs.
22
+ - **πŸ› οΈ Open-Source & Extensible** – Customize it for your specific use case.
23
+
24
+ 🚨Lets see some Problems:
25
+
26
+ - Generic LLM prompts don’t tell AI agents how smart to be for a task.
27
+
28
+ - LLMs respond the same way to different tasks, often lacking role-specific intelligence.
29
+
30
+ - A customer support AI should be empathetic and clear, while a data analyst AI should be logical and precise.
31
+
32
+ - Generic prompts fail to define the intelligence level needed to perform a task efficiently when some tasks need high reasoning, low creativity, while others need high creativity, low precision..
33
+
34
+ The Solution:
35
+
36
+ DoCoreAI solves this by intelligently adjusting skill parameters based on context, so LLMs generate perfect responses for each role, ensuring:
37
+ - Better response accuracy
38
+ - Improved AI agent adaptability
39
+ - Optimized decision-making and creativity when needed
40
+
41
+ ---
42
+
43
+ ## πŸ’‘ How Does It Work?
44
+
45
+ DoCoreAI follows a structured process to enhance AI prompts:
46
+
47
+ 1️⃣ AI Role Detection – Identifies the AI agent’s role and task.
48
+ 2️⃣ Intelligence Mapping – Assigns reasoning, creativity, precision, and temperature values.
49
+ 3️⃣ Prompt Optimization – Fine-tunes the input prompt using optimized intelligence properties.
50
+ 4️⃣ LLM Execution – Sends the enhanced prompt to OpenAI, Groq, or other supported models.
51
+
52
+ πŸ’‘ Example:
53
+ **Before** DoCoreAI: "Summarize this report."
54
+ **After** DoCoreAI: "Summarize this report with high precision (0.9), low creativity (0.2), and deep reasoning (0.8)."
55
+
56
+ ### **πŸ”— Step-by-Step Workflow:**
57
+ 1️⃣ **User Query β†’** A user submits a question/query to your application.
58
+ 2️⃣ **DoCoreAI Enhances Prompt β†’** The system analyzes the query or prompt and generates an optimized prompt with **dynamic intelligence parameters**. The required intelligence range for each these parameters (like **Reasoning** - Determines logical depth, **Creativity** - Adjusts randomness , **Precision** - Controls specificity) are inferred from the query automatically.
59
+
60
+ 3️⃣ **Send to LLM β†’** The refined prompt is sent to your preferred LLM (OpenAI, Anthropic, Cohere, etc.).
61
+ 4️⃣ **LLM Response β†’** The model returns a highly optimized answer.
62
+ 5️⃣ **Final Output β†’** Your application displays the AI’s enhanced response to the user.
63
+
64
+ πŸ‘‰ **End Result?** More accurate, contextually rich, and intelligent AI responses that **feel human-like and insightful**.
65
+
66
+ ---
67
+
68
+ ## πŸ’‘ How DoCoreAI Helps AI Agents
69
+
70
+ DoCoreAI ensures that AI agents perform at their best by customizing intelligence settings per task. Here’s how:
71
+
72
+ πŸ“ž Support Agent AI β†’ Needs high empathy, clarity, and logical reasoning.
73
+ πŸ“Š Data Analyst AI β†’ Requires high precision and deep analytical reasoning.
74
+ 🎨 Creative Writing AI β†’ Boosts creativity for idea generation and storytelling.
75
+
76
+ This adaptive approach ensures that LLMs deliver role-specific, optimized responses every time.
77
+
78
+ ---
79
+
80
+ ## πŸš€ Use Cases
81
+ DoCoreAI is highly versatile and can be integrated across various domains:
82
+
83
+ πŸ”Ή Customer Support AI: Ensures friendly, concise, and empathetic interactions.
84
+ πŸ”Ή Business Analytics AI: Generates precise reports with accurate insights.
85
+ πŸ”Ή Medical AI Assistants: Maintains high reasoning while reducing creativity for factual correctness.
86
+ πŸ”Ή Content Creation AI: Enhances creativity while keeping precision at a balanced level.
87
+ πŸ”Ή Legal & Compliance AI: Ensures responses are strictly factual and highly precise.
88
+
89
+ ### 🏒 **For Businesses & Startups:**
90
+ - **πŸ€– AI Agents, Chatbots & Virtual Assistants** – Make AI interactions **more natural and helpful**.
91
+ - **πŸ“ž AI Customer Support** – Improve support accuracy, reducing agent workload.
92
+ - **πŸ“Š Data & Market Analysis** – Extract **meaningful insights from unstructured data**.
93
+ - **🎨 Creative AI** – Enhances storytelling, content generation, and brainstorming.
94
+
95
+ ### πŸ› οΈ **For Developers & Engineers:**
96
+ - **βš™οΈ Fine-Tuning Custom LLMs** – Boost reasoning, logic, and adaptability.
97
+ - **πŸ“ AI-Powered Content Generation** – Enhance blogs, marketing copy, and technical writing.
98
+ - **πŸ§ͺ Research & Experimentation** – Test and build **next-gen AI applications**.
99
+
100
+ ### πŸ’ **Generalized solution for All**
101
+ - **βš™οΈ Easily Works across all domains and user roles, allowing fine-tuning for different applications
102
+
103
+ ---
104
+
105
+ ## 🎯 Getting Started
106
+ ### **πŸ“Œ Installation**
107
+ 1️⃣ Clone the repo:
108
+ ```bash
109
+ git clone https://github.com/SajiJohnMiranda/DoCoreAI.git
110
+ ```
111
+ 2️⃣ Install dependencies:
112
+ ```bash
113
+ pip install -r requirements.txt
114
+ ```
115
+ 3️⃣ Run DoCoreAI:
116
+ ```bash
117
+ uvicorn api.main:app
118
+ ```
119
+ 4️⃣ Start using the API:
120
+ ```bash
121
+ Browser POST "http://127.0.0.1:8000/docs" Select /intelligence-profiler-demo
122
+ ```
123
+
124
+ πŸŽ‰ **You're all set to build smarter AI applications!**
125
+
126
+ ---
127
+
128
+ ## πŸ”— Integrations & Compatibility
129
+ DoCoreAI is designed to work seamlessly with major AI platforms:
130
+ - Works with **OpenAI GPT, Claude, LLaMA, Falcon, Cohere, and more.**
131
+ - Supports **LangChain, FastAPI, Flask, and Django.**
132
+ - Easy to extend via **plugin-based architecture.**
133
+
134
+ ---
135
+
136
+ ## πŸ“ˆ Why Developers Should Use DoCoreAI
137
+
138
+ πŸ”Ή Smarter AI, Better Results
139
+ -Ensures AI models understand the intelligence scope required for each task.
140
+ -Enhances prompt efficiency, reducing trial and error in prompt engineering.
141
+
142
+ πŸ”Ή Saves Time & Effort
143
+ -No need for manual prompt tuningβ€”DoCoreAI does it for you.
144
+ -Works out of the box with OpenAI and Groq models.
145
+
146
+ πŸ”Ή Ideal for SaaS & AI-driven Applications
147
+ -Perfect for chatbots, AI assistants, automation, and enterprise AI solutions.
148
+ -DoCoreAI transforms AI interactions by making prompts truly intelligent.
149
+
150
+ ---
151
+
152
+ ## 🌟 Join the Community:
153
+ Let’s build the future of AI-powered intelligence tuning together! πŸš€
154
+ 🀝 **Contribute:** Open issues, create pull requests, and help improve DoCoreAI!
155
+ πŸ“’ **Discuss & Collaborate:** Join our **Discord & GitHub Discussions**.
156
+ 🌟 **Star the Repo!** If you find this useful, don’t forget to star ⭐ it on GitHub!
157
+
158
+ πŸ‘‰ [GitHub Repo](https://github.com/SajiJohnMiranda/DoCoreAI) | [Docs (Coming Soon)]
159
+
160
+
161
+ ## Recommended LLMs for Intelligence Optimization
162
+ DoCoreAI is designed to refine and optimize user prompts by dynamically adjusting intelligence parameters such as reasoning, creativity, and precision. To achieve the best results, we recommend using ChatGPT (GPT-4-turbo) for this task.
163
+ While DoCoreAI is compatible with other LLMs (e.g., LLaMA 3, Claude etc), results may vary depending on the model’s capabilities. Developers are encouraged to experiment and contribute insights on different LLM integrations.
164
+
165
+ **Future Support for Fine-Tuned Models:**
166
+ We recognize the growing demand for fine-tuned open-source models tailored for specific applications. In future updates, we aim to explore Integration with fine-tuned LLaMA/Custom GPT models, Support for locally deployed models (via Ollama, vLLM, etc.) & Customization of intelligence parameters based on domain-specific data.
167
+
168
+ Our vision is to make DoCoreAI adaptable to both proprietary and open-source AI models, ensuring flexibility for all developers. Contributions and suggestions are welcome!
169
+
170
+ ---
171
+
172
+ ## βš–οΈ License
173
+ Licensed under [MIT License](./LICENSE.md). Use freely, contribute, and enhance AI for everyone!
174
+
175
+ ---
176
+
177
+ πŸ’‘ **Let’s revolutionize AI prompt optimization together!** πŸš€
178
+
@@ -0,0 +1,5 @@
1
+ from .model import intelligence_profiler # Developer -> from docore_ai import intelligence_profiler
2
+ from .model import normal_prompt
3
+ from .model import normal_prompt_with_intelligence
4
+
5
+
@@ -0,0 +1,77 @@
1
+ import os
2
+ from typing import Optional
3
+ import openai
4
+ import requests
5
+ from dotenv import load_dotenv
6
+ from groq import Groq
7
+
8
+ load_dotenv()
9
+ OPENAI_API_KEY = os.getenv("OPENAI_API_KEY")
10
+ GROQ_API_KEY = os.getenv("GROQ_API_KEY")
11
+ DEFAULT_MODEL = os.getenv("DEFAULT_MODEL", "groq") # demo uses 'groq'
12
+
13
+
14
+
15
+ def intelligence_profiler_demo(user_content: str, role: str, reasoning: float = None,
16
+ creativity: float = None, precision: float = None, temperature: float = None,
17
+ model_provider: str = DEFAULT_MODEL,groq_api_key: str = None
18
+ ) -> str:
19
+ system_message = """
20
+ You are an AI that evaluates a user's request and determines the intelligence profile needed to respond effectively.
21
+ Given a request analyze the content's (both request and response) complexity and predict the required value between the specified range for the intelligence parameters of a person's role to answer this query. The intelligence parameters to be evaluated are reasoning, creativity and precision.
22
+ **Return only the intelligence parameter values** in JSON format:",
23
+ {
24
+ "reasoning": 0.1 - 1.0, // How logically structured and in-depth the response should be. 0.1 = simple, 1.0 = deep and complex.
25
+ "creativity": 0.1 - 1.0, // How much imaginative variation should be introduced. 0.1 = factual, 1.0 = highly creative.
26
+ "precision": 0.1 - 1.0, // How specific or general the response should be. 0.1 = broad, 1.0 = highly detailed.
27
+ "temperature": 0.1 - 1.0, // Derived from above values
28
+ }
29
+ ### **Rules:**
30
+ The temperature should be automatically calculated dynamically based on the reasoning, creativity, and precision values.
31
+ Do not provide explanations, only return the JSON output.
32
+ """
33
+ user_message = """
34
+ Analyze the request: {user_content} and understand the complexity of this request and intelligence required for the best possible response.
35
+ Predict the right value between the specified range required for the intelligence parameters of a person's role {role} to answer this query.
36
+
37
+ Return them in the structured JSON format:
38
+ {
39
+ "reasoning": 0.1 - 1.0,
40
+ "creativity": 0.1 - 1.0,
41
+ "precision": 0.1 - 1.0,
42
+ "temperature": 0.1 - 1.0
43
+ }
44
+ **Return only the JSON response and no additional text.**
45
+ """
46
+ messages = [
47
+ {"role": "system", "content": "\n".join(system_message)} , #if not manual_mode else None,
48
+ {"role": "user", "content": f'User Input: {user_message}\nRole: Intelligence Evaluator'}
49
+ ]
50
+ messages = [msg for msg in messages if msg] # Remove None values
51
+
52
+ client = Groq(api_key=groq_api_key)
53
+ chat_completion = client.chat.completions.create(
54
+ messages=messages,
55
+ model="gemma2-9b-it",
56
+ temperature=0.3 # if temperature is not None else (1.0 - reasoning if manual_mode else 0.7)
57
+ )
58
+ response_text = chat_completion.choices[0].message.content # Extract response
59
+ return response_text
60
+
61
+ # Custom OpenAPI schema to remove validation errors
62
+ '''def custom_openapi():
63
+ if app.openapi_schema:
64
+ return app.openapi_schema
65
+ openapi_schema = get_openapi(
66
+ title=app.title,
67
+ version=app.version,
68
+ description=app.description,
69
+ routes=app.routes,
70
+ )
71
+ # Remove validation error schemas
72
+ openapi_schema["components"]["schemas"].pop("HTTPValidationError", None)
73
+ openapi_schema["components"]["schemas"].pop("ValidationError", None)
74
+ app.openapi_schema = openapi_schema
75
+ return app.openapi_schema
76
+ # Assign the custom OpenAPI schema
77
+ app.openapi = custom_openapi'''
@@ -0,0 +1,156 @@
1
+ import os
2
+ from typing import Optional
3
+ import openai
4
+ import requests
5
+ from dotenv import load_dotenv
6
+ from groq import Groq
7
+
8
+ load_dotenv()
9
+ OPENAI_API_KEY = os.getenv("OPENAI_API_KEY")
10
+ GROQ_API_KEY = os.getenv("GROQ_API_KEY")
11
+ DEFAULT_MODEL = os.getenv("DEFAULT_MODEL", "groq") # Default to groq
12
+ MODEL = os.getenv("MODEL", "gemma2-9b-it") # Default to gemma2-9b-it
13
+
14
+
15
+ def intelligence_profiler(user_content: str, role: str, model_provider: str = DEFAULT_MODEL, model_name: str = MODEL) -> str:
16
+
17
+ #if manual_mode: # TODO -- manual_mode option can generate efficient prompts based on intelligence params given with input user_content & role
18
+ # reasoning = max(0.1, min(1.0, reasoning)) if reasoning is not None else 0.5
19
+ # creativity = max(0.1, min(1.0, creativity)) if creativity is not None else 0.5
20
+ # precision = max(0.1, min(1.0, precision)) if precision is not None else 0.5
21
+
22
+ system_message = """
23
+ You are an AI Intelligence Profiler. Your task is to analyze a user's request and determine the optimal intelligence parameters needed for an effective response. The parameters to be evaluated are:
24
+
25
+ - **reasoning** (0.1 to 1.0): The level of logical depth required.
26
+ - **creativity** (0.1 to 1.0): The degree of imaginative variation required.
27
+ - **precision** (0.1 to 1.0): The specificity level required.
28
+ - **temperature** (0.1 to 1.0): A value derived from the above parameters that influences overall output variability.
29
+
30
+ **Instructions:**
31
+ 1. Analyze the user's request and consider the specified role.
32
+ 2. Adjust the intelligence parameters based on the query's complexity and the typical expertise required for that role.
33
+ 3. **Return ONLY a JSON object** in the exact format below, with no extra text or explanation:
34
+
35
+ {
36
+ "reasoning": <value>,
37
+ "creativity": <value>,
38
+ "precision": <value>,
39
+ "temperature": <value>
40
+ }
41
+ """
42
+ user_message = f"""
43
+ User Request: "{user_content}"
44
+ Role: "{role}"
45
+
46
+
47
+ Please evaluate the above information and return the intelligence parameters in the specified JSON format.
48
+ """
49
+ messages = [
50
+ {"role": "system", "content": system_message},
51
+ {"role": "user", "content": user_message}
52
+ ]
53
+
54
+ # Choose model provider
55
+ if model_provider == "openai":
56
+ openai.api_key = OPENAI_API_KEY
57
+ response = openai.Client().chat.completions.create(
58
+ model=model_name,
59
+ messages=messages,
60
+ temperature=0.4
61
+ )
62
+ return response.choices[0].message.content
63
+ elif model_provider == "groq":
64
+ client = Groq(api_key=GROQ_API_KEY)
65
+ chat_completion = client.chat.completions.create(
66
+ messages=messages,
67
+ model=model_name,
68
+ temperature=0.2 #temperature if temperature is not None else (1.0 - reasoning if manual_mode else 0.7)
69
+ )
70
+ response_text = chat_completion.choices[0].message.content # Extract response
71
+ return response_text
72
+
73
+ def normal_prompt(user_content: str, role: str, model_provider: str = DEFAULT_MODEL, model_name: str = MODEL):
74
+ """
75
+ Sends a normal prompt to the selected LLM (OpenAI or Groq) without intelligence parameters.
76
+ """
77
+ system_message = f"""
78
+ You are a {role}. Respond to user queries based on your role expertise.
79
+ Provide a well-structured response based on best practices in your field.
80
+ """
81
+
82
+ messages = [
83
+ {"role": "system", "content": system_message},
84
+ {"role": "user", "content": user_content}
85
+ ]
86
+
87
+ response = call_llm_without_temp(model_provider, model_name, messages)
88
+ return response
89
+
90
+ def normal_prompt_with_intelligence(user_content: str, role: str, model_provider: str = DEFAULT_MODEL, model_name: str = MODEL, reasoning: float = 0.5, creativity: float = 0.5, precision: float = 0.5, temperature: float = 0.5):
91
+ """
92
+ Sends a prompt to the selected LLM with intelligence parameters.
93
+ """
94
+ system_message = f"""
95
+ You are a {role}. Respond to user queries based on your role expertise.
96
+ Provide a well-structured response based on best practices in your field.
97
+ Adjust the response style dynamically based on intelligence parameters:
98
+ - Reasoning: {reasoning} (0.1 = simple, 1.0 = deep and structured)
99
+ - Creativity: {creativity} (0.1 = factual, 1.0 = imaginative)
100
+ - Precision: {precision} (0.1 = broad, 1.0 = highly detailed)
101
+ """
102
+
103
+ messages = [
104
+ {"role": "system", "content": system_message},
105
+ {"role": "user", "content": user_content}
106
+ ]
107
+
108
+ response = call_llm(model_provider, model_name, messages, temperature)
109
+ return response
110
+
111
+ def call_llm(model_provider: str, model_name: str, messages: list, temperature: float):
112
+ """
113
+ Handles communication with OpenAI or Groq models.
114
+ """
115
+ if model_provider == "openai":
116
+ response = openai.Client().chat.completions.create(
117
+ model=model_name,
118
+ messages=messages,
119
+ temperature=temperature
120
+ )
121
+ return response.choices[0].message.content
122
+
123
+ elif model_provider == "groq":
124
+ # Implement Groq API call (replace with actual implementation)
125
+ client = Groq(api_key=GROQ_API_KEY)
126
+ chat_completion = client.chat.completions.create(
127
+ messages=messages,
128
+ model=model_name,
129
+ temperature=temperature #temperature if temperature is not None else (1.0 - reasoning if manual_mode else 0.7)
130
+ )
131
+ return f"Simulated Groq response for model: {model_name}, Temp: {temperature}"
132
+
133
+ else:
134
+ raise ValueError("Invalid model provider. Choose 'openai' or 'groq'.")
135
+
136
+ def call_llm_without_temp(model_provider: str, model_name: str, messages: list):
137
+ """
138
+ Calls OpenAI or Groq API without specifying temperature, so it defaults to the model's own value.
139
+ """
140
+ if model_provider == "openai":
141
+ response = openai.Client().chat.completions.create(
142
+ model=model_name,
143
+ messages=messages
144
+ )
145
+ return response.choices[0].message.content
146
+
147
+ elif model_provider == "groq":
148
+ client = Groq(api_key=GROQ_API_KEY)
149
+ chat_completion = client.chat.completions.create(
150
+ messages=messages,
151
+ model=model_name,
152
+ )
153
+ return f"Simulated Groq response for model: {model_name} (Using default LLM temperature)"
154
+
155
+ else:
156
+ raise ValueError("Invalid model provider. Choose 'openai' or 'groq'.")
@@ -0,0 +1,211 @@
1
+ Metadata-Version: 2.2
2
+ Name: docoreai
3
+ Version: 0.1.0
4
+ Summary: DoCoreAI is an intelligence profiler that optimizes prompts
5
+ Home-page: https://github.com/SajiJohnMiranda/DoCoreAI
6
+ Author: Saji John
7
+ Author-email: sajijohnmiranda@gmail.com
8
+ Project-URL: Documentation, https://your-docs-url.com
9
+ Project-URL: Blog Post, https://mobilights.medium.com/intelligent-prompt-optimization-bac89b64fa84
10
+ Project-URL: Source Code, https://github.com/SajiJohnMiranda/DoCoreAI
11
+ Classifier: Programming Language :: Python :: 3
12
+ Classifier: License :: OSI Approved :: MIT License
13
+ Classifier: Operating System :: OS Independent
14
+ Requires-Python: >=3.7
15
+ Description-Content-Type: text/markdown
16
+ License-File: LICENSE.md
17
+ Requires-Dist: uvicorn
18
+ Requires-Dist: pydantic
19
+ Requires-Dist: python-dotenv
20
+ Requires-Dist: openai
21
+ Requires-Dist: langchain
22
+ Requires-Dist: groq
23
+ Dynamic: author
24
+ Dynamic: author-email
25
+ Dynamic: classifier
26
+ Dynamic: description
27
+ Dynamic: description-content-type
28
+ Dynamic: home-page
29
+ Dynamic: project-url
30
+ Dynamic: requires-dist
31
+ Dynamic: requires-python
32
+ Dynamic: summary
33
+
34
+ # 🌟 DoCoreAI – The Future of Smart AI Interactions
35
+
36
+ **πŸš€ Optimize LLM Responses | πŸ› οΈ Fine-Tune AI Intelligence | ⚑ Supercharge Prompting**
37
+
38
+ ---
39
+
40
+ ## πŸ”₯ What is DoCoreAI?
41
+ DoCoreAI is an AI **intelligence profiler that optimizes prompts dynamically** based on predefined intelligence parameters. Instead of relying on generic LLM prompts, DoCoreAI customizes intelligence properties (such as reasoning, creativity, and precision) to ensure AI agents generate responses that perfectly align with their roles.
42
+
43
+ Its an **open-source powerhouse** designed to make **Large Language Models (LLMs) smarter, sharper, and more efficient**. It acts as a **plug-and-play optimizer** that dynamically enhances AI reasoning, problem-solving, and decision-making, giving developers total control over AI intelligence.
44
+
45
+ Whether you're building an AI agent, chatbot, a virtual assistant, or a SaaS application, **DoCoreAI fine-tunes AI prompts in real time**, ensuring **clear, precise, and highly contextual responses**.
46
+
47
+ ---
48
+
49
+ ## 🌍 Why DoCoreAI?
50
+ ### βœ… **Key Benefits**
51
+ - **🧠 Smarter AI** – Enhances reasoning, problem-solving, and adaptability.
52
+ - **⚑ Best Responses** – Intelligent prompts mean more accurate answers.
53
+ - **πŸ”§ Full Control** – Developers can fine-tune intelligence parameters like depth, creativity, and accuracy.
54
+ - **πŸ”Œ Easy API Integration** – Works seamlessly with OpenAI, Cohere, Mistral, and other LLMs.
55
+ - **πŸ› οΈ Open-Source & Extensible** – Customize it for your specific use case.
56
+
57
+ 🚨Lets see some Problems:
58
+
59
+ - Generic LLM prompts don’t tell AI agents how smart to be for a task.
60
+
61
+ - LLMs respond the same way to different tasks, often lacking role-specific intelligence.
62
+
63
+ - A customer support AI should be empathetic and clear, while a data analyst AI should be logical and precise.
64
+
65
+ - Generic prompts fail to define the intelligence level needed to perform a task efficiently when some tasks need high reasoning, low creativity, while others need high creativity, low precision..
66
+
67
+ The Solution:
68
+
69
+ DoCoreAI solves this by intelligently adjusting skill parameters based on context, so LLMs generate perfect responses for each role, ensuring:
70
+ - Better response accuracy
71
+ - Improved AI agent adaptability
72
+ - Optimized decision-making and creativity when needed
73
+
74
+ ---
75
+
76
+ ## πŸ’‘ How Does It Work?
77
+
78
+ DoCoreAI follows a structured process to enhance AI prompts:
79
+
80
+ 1️⃣ AI Role Detection – Identifies the AI agent’s role and task.
81
+ 2️⃣ Intelligence Mapping – Assigns reasoning, creativity, precision, and temperature values.
82
+ 3️⃣ Prompt Optimization – Fine-tunes the input prompt using optimized intelligence properties.
83
+ 4️⃣ LLM Execution – Sends the enhanced prompt to OpenAI, Groq, or other supported models.
84
+
85
+ πŸ’‘ Example:
86
+ **Before** DoCoreAI: "Summarize this report."
87
+ **After** DoCoreAI: "Summarize this report with high precision (0.9), low creativity (0.2), and deep reasoning (0.8)."
88
+
89
+ ### **πŸ”— Step-by-Step Workflow:**
90
+ 1️⃣ **User Query β†’** A user submits a question/query to your application.
91
+ 2️⃣ **DoCoreAI Enhances Prompt β†’** The system analyzes the query or prompt and generates an optimized prompt with **dynamic intelligence parameters**. The required intelligence range for each these parameters (like **Reasoning** - Determines logical depth, **Creativity** - Adjusts randomness , **Precision** - Controls specificity) are inferred from the query automatically.
92
+
93
+ 3️⃣ **Send to LLM β†’** The refined prompt is sent to your preferred LLM (OpenAI, Anthropic, Cohere, etc.).
94
+ 4️⃣ **LLM Response β†’** The model returns a highly optimized answer.
95
+ 5️⃣ **Final Output β†’** Your application displays the AI’s enhanced response to the user.
96
+
97
+ πŸ‘‰ **End Result?** More accurate, contextually rich, and intelligent AI responses that **feel human-like and insightful**.
98
+
99
+ ---
100
+
101
+ ## πŸ’‘ How DoCoreAI Helps AI Agents
102
+
103
+ DoCoreAI ensures that AI agents perform at their best by customizing intelligence settings per task. Here’s how:
104
+
105
+ πŸ“ž Support Agent AI β†’ Needs high empathy, clarity, and logical reasoning.
106
+ πŸ“Š Data Analyst AI β†’ Requires high precision and deep analytical reasoning.
107
+ 🎨 Creative Writing AI β†’ Boosts creativity for idea generation and storytelling.
108
+
109
+ This adaptive approach ensures that LLMs deliver role-specific, optimized responses every time.
110
+
111
+ ---
112
+
113
+ ## πŸš€ Use Cases
114
+ DoCoreAI is highly versatile and can be integrated across various domains:
115
+
116
+ πŸ”Ή Customer Support AI: Ensures friendly, concise, and empathetic interactions.
117
+ πŸ”Ή Business Analytics AI: Generates precise reports with accurate insights.
118
+ πŸ”Ή Medical AI Assistants: Maintains high reasoning while reducing creativity for factual correctness.
119
+ πŸ”Ή Content Creation AI: Enhances creativity while keeping precision at a balanced level.
120
+ πŸ”Ή Legal & Compliance AI: Ensures responses are strictly factual and highly precise.
121
+
122
+ ### 🏒 **For Businesses & Startups:**
123
+ - **πŸ€– AI Agents, Chatbots & Virtual Assistants** – Make AI interactions **more natural and helpful**.
124
+ - **πŸ“ž AI Customer Support** – Improve support accuracy, reducing agent workload.
125
+ - **πŸ“Š Data & Market Analysis** – Extract **meaningful insights from unstructured data**.
126
+ - **🎨 Creative AI** – Enhances storytelling, content generation, and brainstorming.
127
+
128
+ ### πŸ› οΈ **For Developers & Engineers:**
129
+ - **βš™οΈ Fine-Tuning Custom LLMs** – Boost reasoning, logic, and adaptability.
130
+ - **πŸ“ AI-Powered Content Generation** – Enhance blogs, marketing copy, and technical writing.
131
+ - **πŸ§ͺ Research & Experimentation** – Test and build **next-gen AI applications**.
132
+
133
+ ### πŸ’ **Generalized solution for All**
134
+ - **βš™οΈ Easily Works across all domains and user roles, allowing fine-tuning for different applications
135
+
136
+ ---
137
+
138
+ ## 🎯 Getting Started
139
+ ### **πŸ“Œ Installation**
140
+ 1️⃣ Clone the repo:
141
+ ```bash
142
+ git clone https://github.com/SajiJohnMiranda/DoCoreAI.git
143
+ ```
144
+ 2️⃣ Install dependencies:
145
+ ```bash
146
+ pip install -r requirements.txt
147
+ ```
148
+ 3️⃣ Run DoCoreAI:
149
+ ```bash
150
+ uvicorn api.main:app
151
+ ```
152
+ 4️⃣ Start using the API:
153
+ ```bash
154
+ Browser POST "http://127.0.0.1:8000/docs" Select /intelligence-profiler-demo
155
+ ```
156
+
157
+ πŸŽ‰ **You're all set to build smarter AI applications!**
158
+
159
+ ---
160
+
161
+ ## πŸ”— Integrations & Compatibility
162
+ DoCoreAI is designed to work seamlessly with major AI platforms:
163
+ - Works with **OpenAI GPT, Claude, LLaMA, Falcon, Cohere, and more.**
164
+ - Supports **LangChain, FastAPI, Flask, and Django.**
165
+ - Easy to extend via **plugin-based architecture.**
166
+
167
+ ---
168
+
169
+ ## πŸ“ˆ Why Developers Should Use DoCoreAI
170
+
171
+ πŸ”Ή Smarter AI, Better Results
172
+ -Ensures AI models understand the intelligence scope required for each task.
173
+ -Enhances prompt efficiency, reducing trial and error in prompt engineering.
174
+
175
+ πŸ”Ή Saves Time & Effort
176
+ -No need for manual prompt tuningβ€”DoCoreAI does it for you.
177
+ -Works out of the box with OpenAI and Groq models.
178
+
179
+ πŸ”Ή Ideal for SaaS & AI-driven Applications
180
+ -Perfect for chatbots, AI assistants, automation, and enterprise AI solutions.
181
+ -DoCoreAI transforms AI interactions by making prompts truly intelligent.
182
+
183
+ ---
184
+
185
+ ## 🌟 Join the Community:
186
+ Let’s build the future of AI-powered intelligence tuning together! πŸš€
187
+ 🀝 **Contribute:** Open issues, create pull requests, and help improve DoCoreAI!
188
+ πŸ“’ **Discuss & Collaborate:** Join our **Discord & GitHub Discussions**.
189
+ 🌟 **Star the Repo!** If you find this useful, don’t forget to star ⭐ it on GitHub!
190
+
191
+ πŸ‘‰ [GitHub Repo](https://github.com/SajiJohnMiranda/DoCoreAI) | [Docs (Coming Soon)]
192
+
193
+
194
+ ## Recommended LLMs for Intelligence Optimization
195
+ DoCoreAI is designed to refine and optimize user prompts by dynamically adjusting intelligence parameters such as reasoning, creativity, and precision. To achieve the best results, we recommend using ChatGPT (GPT-4-turbo) for this task.
196
+ While DoCoreAI is compatible with other LLMs (e.g., LLaMA 3, Claude etc), results may vary depending on the model’s capabilities. Developers are encouraged to experiment and contribute insights on different LLM integrations.
197
+
198
+ **Future Support for Fine-Tuned Models:**
199
+ We recognize the growing demand for fine-tuned open-source models tailored for specific applications. In future updates, we aim to explore Integration with fine-tuned LLaMA/Custom GPT models, Support for locally deployed models (via Ollama, vLLM, etc.) & Customization of intelligence parameters based on domain-specific data.
200
+
201
+ Our vision is to make DoCoreAI adaptable to both proprietary and open-source AI models, ensuring flexibility for all developers. Contributions and suggestions are welcome!
202
+
203
+ ---
204
+
205
+ ## βš–οΈ License
206
+ Licensed under [MIT License](./LICENSE.md). Use freely, contribute, and enhance AI for everyone!
207
+
208
+ ---
209
+
210
+ πŸ’‘ **Let’s revolutionize AI prompt optimization together!** πŸš€
211
+
@@ -0,0 +1,11 @@
1
+ LICENSE.md
2
+ README.md
3
+ setup.py
4
+ docore_ai/__init__.py
5
+ docore_ai/demo_model.py
6
+ docore_ai/model.py
7
+ docoreai.egg-info/PKG-INFO
8
+ docoreai.egg-info/SOURCES.txt
9
+ docoreai.egg-info/dependency_links.txt
10
+ docoreai.egg-info/requires.txt
11
+ docoreai.egg-info/top_level.txt
@@ -0,0 +1,6 @@
1
+ uvicorn
2
+ pydantic
3
+ python-dotenv
4
+ openai
5
+ langchain
6
+ groq
@@ -0,0 +1 @@
1
+ docore_ai
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
@@ -0,0 +1,36 @@
1
+ # Pip installation setup for users
2
+ from setuptools import setup, find_packages
3
+
4
+ with open("README.md", "r", encoding="utf-8") as fh:
5
+ long_description = fh.read()
6
+
7
+ setup(
8
+ name="docoreai",
9
+ version="0.1.0",
10
+ author="Saji John",
11
+ author_email="sajijohnmiranda@gmail.com",
12
+ description="DoCoreAI is an intelligence profiler that optimizes prompts",
13
+ long_description=long_description,
14
+ long_description_content_type="text/markdown",
15
+ url="https://github.com/SajiJohnMiranda/DoCoreAI", # Update with your repo URL
16
+ project_urls={
17
+ "Documentation": "https://your-docs-url.com",
18
+ "Blog Post": "https://mobilights.medium.com/intelligent-prompt-optimization-bac89b64fa84",
19
+ "Source Code": "https://github.com/SajiJohnMiranda/DoCoreAI",
20
+ },
21
+ packages=find_packages(),
22
+ install_requires=[
23
+ "uvicorn",
24
+ "pydantic",
25
+ "python-dotenv",
26
+ "openai",
27
+ "langchain",
28
+ "groq"
29
+ ],
30
+ classifiers=[
31
+ "Programming Language :: Python :: 3",
32
+ "License :: OSI Approved :: MIT License",
33
+ "Operating System :: OS Independent",
34
+ ],
35
+ python_requires=">=3.7",
36
+ )