memra 0.1.2__py3-none-any.whl → 0.2.0__py3-none-any.whl

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.
@@ -1,191 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: memra
3
- Version: 0.1.2
4
- Summary: A declarative orchestration framework for AI-powered business workflows
5
- Author-email: Memra Team <info@memra.co>
6
- License: MIT
7
- Project-URL: Homepage, https://memra.co
8
- Project-URL: Repository, https://github.com/memra-platform/memra-sdk
9
- Project-URL: Documentation, https://memra.co
10
- Project-URL: Bug Reports, https://github.com/memra-platform/memra-sdk/issues
11
- Classifier: Development Status :: 3 - Alpha
12
- Classifier: Intended Audience :: Developers
13
- Classifier: License :: OSI Approved :: MIT License
14
- Classifier: Programming Language :: Python :: 3
15
- Classifier: Programming Language :: Python :: 3.8
16
- Classifier: Programming Language :: Python :: 3.9
17
- Classifier: Programming Language :: Python :: 3.10
18
- Classifier: Programming Language :: Python :: 3.11
19
- Classifier: Programming Language :: Python :: 3.12
20
- Requires-Python: >=3.8
21
- Description-Content-Type: text/markdown
22
- License-File: LICENSE
23
- Requires-Dist: pydantic>=2.0.0
24
- Requires-Dist: httpx>=0.24.0
25
- Requires-Dist: typing-extensions>=4.0.0
26
- Dynamic: license-file
27
-
28
- # Memra SDK
29
-
30
- A declarative orchestration framework for AI-powered business workflows. Think of it as "Kubernetes for business logic" where agents are the pods and departments are the deployments.
31
-
32
- ## 🚀 Quick Start
33
-
34
- ```python
35
- from memra import Agent, Department, LLM
36
- from memra.execution import ExecutionEngine
37
-
38
- # Define your agents declaratively
39
- data_engineer = Agent(
40
- role="Data Engineer",
41
- job="Extract invoice schema from database",
42
- llm=LLM(model="llama-3.2-11b-vision-preview", temperature=0.1),
43
- tools=[
44
- {"name": "DatabaseQueryTool", "hosted_by": "memra"}
45
- ],
46
- output_key="invoice_schema"
47
- )
48
-
49
- invoice_parser = Agent(
50
- role="Invoice Parser",
51
- job="Extract structured data from invoice PDF",
52
- llm=LLM(model="llama-3.2-11b-vision-preview", temperature=0.0),
53
- tools=[
54
- {"name": "PDFProcessor", "hosted_by": "memra"},
55
- {"name": "InvoiceExtractionWorkflow", "hosted_by": "memra"}
56
- ],
57
- input_keys=["file", "invoice_schema"],
58
- output_key="invoice_data"
59
- )
60
-
61
- # Create a department
62
- ap_department = Department(
63
- name="Accounts Payable",
64
- mission="Process invoices accurately into financial system",
65
- agents=[data_engineer, invoice_parser],
66
- workflow_order=["Data Engineer", "Invoice Parser"]
67
- )
68
-
69
- # Execute the workflow
70
- engine = ExecutionEngine()
71
- result = engine.execute_department(ap_department, {
72
- "file": "invoice.pdf",
73
- "connection": "postgresql://user@host/db"
74
- })
75
-
76
- if result.success:
77
- print("✅ Invoice processed successfully!")
78
- print(f"Data: {result.data}")
79
- ```
80
-
81
- ## 📦 Installation
82
-
83
- ```bash
84
- pip install memra-sdk
85
- ```
86
-
87
- ## 🔑 Configuration
88
-
89
- ### Step 1: Get Your API Key
90
- Contact **info@memra.co** to request an API key for early access.
91
-
92
- ### Step 2: Set Your API Key
93
- Once you receive your API key, configure it:
94
-
95
- ```bash
96
- export MEMRA_API_KEY="your-api-key-here"
97
- export MEMRA_API_URL="https://api.memra.co" # Optional, defaults to production
98
- ```
99
-
100
- Or in Python:
101
-
102
- ```python
103
- import os
104
- os.environ["MEMRA_API_KEY"] = "your-api-key-here"
105
- ```
106
-
107
- ## 🎯 Key Features
108
-
109
- - **Declarative**: Define workflows like Kubernetes YAML
110
- - **AI-Powered**: Built-in LLM integrations for document processing
111
- - **Conversational**: Agents explain what they're doing in real-time
112
- - **Production Ready**: Real database connectivity and file processing
113
- - **Scalable**: Tools execute on Memra's cloud infrastructure
114
-
115
- ## 🏗️ Core Concepts
116
-
117
- ### Agents
118
- Agents are the workers in your workflow. Each agent has:
119
- - **Role**: What they do (e.g., "Data Engineer")
120
- - **Job**: Their specific responsibility
121
- - **Tools**: What capabilities they use
122
- - **LLM**: Their AI model configuration
123
-
124
- ### Departments
125
- Departments coordinate multiple agents:
126
- - **Mission**: Overall goal
127
- - **Workflow Order**: Sequence of agent execution
128
- - **Manager**: Optional oversight and validation
129
-
130
- ### Tools
131
- Tools are hosted capabilities:
132
- - **memra**: Hosted by Memra (PDF processing, LLMs, databases)
133
- - **mcp**: Customer-hosted via Model Context Protocol
134
-
135
- ## 📊 Example Output
136
-
137
- ```
138
- 🏢 Starting Accounts Payable Department
139
- 📋 Mission: Process invoices accurately into financial system
140
- 👥 Team: Data Engineer, Invoice Parser
141
- 🔄 Workflow: Data Engineer → Invoice Parser
142
-
143
- 👤 Data Engineer: Hi! I'm starting my work now...
144
- 💭 Data Engineer: My job is to extract invoice schema from database
145
- ⚡ Data Engineer: Using tool 1/1: DatabaseQueryTool
146
- ✅ Data Engineer: Great! DatabaseQueryTool did real work and gave me useful results
147
- 🎉 Data Engineer: Perfect! I completed my work with real data processing
148
-
149
- 👤 Invoice Parser: Hi! I'm starting my work now...
150
- 💭 Invoice Parser: My job is to extract structured data from invoice pdf
151
- ⚡ Invoice Parser: Using tool 1/2: PDFProcessor
152
- ✅ Invoice Parser: Great! PDFProcessor did real work and gave me useful results
153
- ```
154
-
155
- ## 🔍 Tool Discovery
156
-
157
- Discover available tools:
158
-
159
- ```python
160
- from memra import discover_tools, get_api_status
161
-
162
- # Check API health
163
- status = get_api_status()
164
- print(f"API Health: {status['api_healthy']}")
165
- print(f"Tools Available: {status['tools_available']}")
166
-
167
- # Discover tools
168
- tools = discover_tools()
169
- for tool in tools:
170
- print(f"- {tool['name']}: {tool['description']}")
171
- ```
172
-
173
- ## 📚 Examples
174
-
175
- See the `examples/` directory for complete workflows:
176
-
177
- - `accounts_payable_client.py`: Invoice processing with database integration
178
- - More examples coming soon!
179
-
180
- ## 🆘 Support
181
-
182
- - **Support**: info@memra.co
183
-
184
- ## 📄 License
185
-
186
- MIT License - see LICENSE file for details.
187
-
188
- ---
189
-
190
- **Built with ❤️ by the Memra team**
191
- **Note**: The SDK will not work without a valid API key.
@@ -1,10 +0,0 @@
1
- memra/__init__.py,sha256=QRk72YETLgL15GVt26tN_rBraCQkhZO7UB9T6d4u_uU,543
2
- memra/discovery_client.py,sha256=AbnKn6qhyrf7vmOvknEeDzH4tiGHsqPHtDaein_qaW0,1271
3
- memra/execution.py,sha256=UJ_MJ4getuSk4HJW1sCi7lc26avX-G6-GxnvE-DiSwk,20191
4
- memra/models.py,sha256=nTaYLAp0tRzQ0CQaBLNBURfhBQ5_gyty0ams4mghyIc,3289
5
- memra/tool_registry_client.py,sha256=KyNNxj84248E-8MoWNj6pJmlllUG8s0lmeXXmbu0U7o,3996
6
- memra-0.1.2.dist-info/licenses/LICENSE,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
- memra-0.1.2.dist-info/METADATA,sha256=gHIEJFsMqK7Bc-sIUgZ1LQS5tP3djey0_B3sZVWYINc,5640
8
- memra-0.1.2.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
9
- memra-0.1.2.dist-info/top_level.txt,sha256=pXWcTRS1zctdiSUivW4iyKpJ4tcfIu-1BW_fpbal3OY,6
10
- memra-0.1.2.dist-info/RECORD,,
@@ -1 +0,0 @@
1
- memra
File without changes