Maya Labs : Program machines using natural language.
The Maya Labs Python SDK provides easy async access to our PAC-1 program synthesis engine, with a CLI to instruct and generate programs from instructions in natural language.
Installation
pip install --upgrade mayalabs
Preview
https://user-images.githubusercontent.com/8736797/230947440-2403762d-a14b-4b00-8fbe-bd803ab24028.mp4
Usage
Get the Maya Labs API key from the Settings > Developer section.
export MAYA_API_KEY = "mayakey-..."
Or set mayalabs.api_key to its value:
import mayalabs
mayalabs.api_key = "mayakey-..."
script = """
1. trigger on receive
2. research {{term}} on wikipedia
3. extract 'title' and 'summary' from tabular data
4. send response back
"""
function = mayalabs.Function(name="Scrape2")
# Creating new worker...
function.update(script=script)
# Generating program graph...
# Starting worker...
# Installing dependencies...
# Deployed!
output = function.call({"term": "Dr. Vikram Sarabhai"})
print(output)
# finds and outputs title and summary from wikipedia results
PAC-1 takes in steps written in English, writes & assembles a discrete program graph, and deploys ready-to-use software on our compute infrastructure, that you can call within your code. You can set up missing dependencies / visualize the flow of logic by following the link to flow-based editor it provides after deployment.
Check our documentation for more usage and tutorials.
Use Cases
- If...Then Conditionals and Looping
- Custom Functions
- Web Scrapers
- Repeating Workflows
- Custom Dashboards
- Data Transformation
- Platform Bots
- Business Processes
- Long-term memory
- Division of labour
Command Line Usage
Today, script need to be manually written step-by-step, but we are offering early WIP preview of iterative script generation via our CLI. Try running:
$ mayalabs instruct -c 'fetch Name and Email from gsheet, write function to merge all columns, and return data'
And then use the generated script as function.
Requirements
- Python 3.7.1+
Issues
All feedback and bug reports welcome! Report in the issues section, or mail us at humans@mayalabs.io.
Full list of capabilities and limits here.
Roadmap
- Cleaner logs and exception handling
- Dependency configuration UX improvement
- Import skill repositories for reusing skills created by user or present in store
- Create and call downstream auto-deployed functions
- Allow multi-profile and team profile access
Metadata
Release files for mayalabs 0.0.9
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mayalabs-0.0.9.tar.gz | 28.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mayalabs-0.0.9-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 61.5 kB
Release files / mayalabs-0.0.9.tar.gz
| Download URL | mayalabs-0.0.9.tar.gz |
|---|---|
| Size | 28.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7f495996388b5370a49c5dc2896db6d6e89edd1f6e4950af67cb05da23e437e6
|
|
BLAKE2b-256 checksum How to use checksums |
c66dc76f21fe31f759f34e421cbd007862effb332b414f3df81cad5773115f2c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.9.15
|
Release files / mayalabs-0.0.9-py3-none-any.whl
| Download URL | mayalabs-0.0.9-py3-none-any.whl |
|---|---|
| Size | 33.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6adc72dce21597bcad199b97495ab27a704bcead51de328e82d937210af0ac84
|
|
BLAKE2b-256 checksum How to use checksums |
21c694da62f31220f41fdb7b1b077dd8fe45895df28a6cdb48676d99b1ff5b5b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.9.15
|